符号计算
syms x y z
% 创建符号表达式
expr = x^2 + y^2 + z^2;
% 计算表达式对应的实数值
subs_values = subs(expr, {x, y, z}, {2, 3, 4});
% 计算表达式的导数
diff_expr = diff(expr, x);
% 解符号方程
eq = 2*x + y - z == 0;
sol = solve(eq, x);
% 显示结果
disp(subs_values);
disp(diff_expr);
disp(sol);
matlab有着强大的符号计算功能,上面一个简单的例子,计算三个实属的平方和,通过定义符号变量,计算符号表达式和方程,得到最终结果,进一步可通过sub函数将符号替换成具体实数值进行计算。
函数生成
但有些时候,计算结果非常复杂,即使是用matlab内置简化函数后也非常复杂,不可能每次都进行符号计算后再带入实数值进行求解,太费时且重复计算量大,对于需要频繁调用的表达式,可以通过 matlabFunctIon 函数进行封装。