tzkr.net
当前位置:首页 >> MATLAB求函数的零点方法 >>

MATLAB求函数的零点方法

1. 一元函数: f=@(x)(...) 如:f=@(x)(2*x.^2+5*x-15) 二元函数: f=@(x, y)(...) 如:f=@(x, y)(sin(x.^2+y.^2)) 2. 一元函数: f=inline('f(x)', 'x') 其中f(x)是函数表达式,x是该函数表达式中的自变量 如:f=inline('2*x.^2+5*x-15', 'x') ...

f=@(x)(0.2*x-(exp(-0.5*x))*sin(x+pi/6)); fzero(f,2)

把求方程的根的那三行改成: [x1,f1,exitflag1]=fzero(@(x)sin(x).*x.^2-x+1,-2.5) [x2,f2,exitflag2]=fzero(@(x)sin(x).*x.^2-x+1,-1.5) [x3,f3,exitflag3]=fzero(@(x)sin(x).*x.^2-x+1,3)就行了

打开matlab 输入一个函数,比如求函数:y=x^3+2*x^2-6 的 零点 直接解方程即可: >> solve('x^3+2*x^2-6=0','x') 得到一个ans 有三个值 但是数值比较大 而且没化简 使用化简命令 vpa() >> vpa(ans,4) 4是保留四位精度 得到 ans = 1.339 -1.671+1...

f=@(x)(0.2*x-(exp(-0.5*x))*sin(x+pi/6)); fzero(f,2)

syms xy = x^3 - 2*x - 5ezplot(y,[0,3]) % 画曲线hold onezplot(0*x,[0,3])x0 = solve(y)x01 = double(x0(1))plot(x01,0,'*') % 标出零点

主要是函数句柄的定义以及fsolve函数的使用。举个例子: syms E bH = [E 1; 2 b];detH = matlabFunction(det(H), 'vars', {E, b});Eb = @(b)fsolve(@(E)detH(E, b), b, optimset('display', 'off'));Eb(2) % 求出b=2时的E值

你这好像不是问题哦,呵呵。但既然你这么说,我就给你举个求多项式零点的方法吧,很简单的: 例:求P(x)=5x^4+4x^3+3x^2+2x+1的零点。 程序如下: P=[5 4 3 2 1]; %多项式各项的系数 roots(p) %求零点,也就是多项式的解 运行后得结果: ans =...

z =[]; for k = 1:(length(y)-1) if y(k)*y(k+1)

%%二分法clcclearformat longsyms x;f1=sin(x)-x*x/2;%给定求解区间a=1;b=2;er=1;%误差初值k=0;%迭代次数初值while (er>5e-6) ; c=(a+b)/2; if subs(f1,a)*subs(f1,c)>0; a=c; else b=c; end er=b-a;%求出误差 k=k+1;%计迭代次数enddisp('解为')...

网站首页 | 网站地图
All rights reserved Powered by www.tzkr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com