-
解析解(符号变量)
%% 创建符号变量 syms x y=x^2-2*x-8 %% 求解equation,symbol; 令y=0,求x的值(root) solve(y, x) % 求多个等式 syms x y eq1 = x-2*y-5; eq2 = x+y-6; A = solve(eq1,eq2,x,y) % 系数为参数 syms x a b % 默认把 a b当作已知,x永远被默认为求解的第一选择 solve(a*x^2-b) % matlab2020b,不需要加引号了 % 若要改变未知数为b solve(a*x^2-b,b)
利用符号变量,做微分
syms x y = 4*x^5 yprime = diff(y)
利用符号变量,做积分
syms x y = x^2*exp(x); z = int(y); % 求不定积分,常数默认为0 z0 = subs(z, x, 0) % 根据条件z0=0,求解常数 z = z - z0
-
数值解(数值变量)
fsolve:对非线性方程组求解
f2 = @(x) (1.2*x+0.3+x*sin(x)); % inline function fsolve(f2,0) % function handle + initial guess % 牛顿迭代法 equ = @(x) ([2*x(1)-x(2)-exp(-x(1)); -x(1)+2*x(2)-exp(-x(2))]); % 句柄只能是一个变量 fsolve(equ,[-5,-5]) %因为fsolve只支持一个变量
fzero:二分法
roots:求解polynomials
roots([1 2 3 5 2 7])
Matlab方程式求根
最新推荐文章于 2024-05-14 23:18:50 发布