Matlab 求值 fzero 第二个值怎么也求不出来  请大师帮忙clear>> x=[0:0.5:5];>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);>> plot(x,real(y),'r','LineWidth',1.5);>> h=line([4.6748,4.6749],[0,0]);>> h=line([0,5],[

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 15:46:43

Matlab 求值 fzero 第二个值怎么也求不出来  请大师帮忙clear>> x=[0:0.5:5];>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);>> plot(x,real(y),'r','LineWidth',1.5);>> h=line([4.6748,4.6749],[0,0]);>> h=line([0,5],[
Matlab 求值 fzero 第二个值怎么也求不出来  请大师帮忙
clear
>> x=[0:0.5:5];
>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);
>> plot(x,real(y),'r','LineWidth',1.5);
>> h=line([4.6748,4.6749],[0,0]);
>> h=line([0,5],[0,0]);
>> hold on
>> plot(x,imag(y),'bo');
>> grid
f=@(x)real(2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x));
[x1,f1,exitflag1]=fzero(f,1);
[x2,f2,exitflag2]=fzero(f,4);
x=[x1,x2];
f=[f1,f2];
>> x
x =
1.2228 4.6749
>> f
f =
1.0e+016 *
0.0000 1.5338
>> x1
x1 =
1.2228
>> f1
f1 =
4.4409e-016
>> x2
x2 =
4.6749
>> f2
f2 =
1.5338e+016
>>
第二个值明显错误,请大师帮忙
两个人答的都很好,奖励谁?

Matlab 求值 fzero 第二个值怎么也求不出来  请大师帮忙clear>> x=[0:0.5:5];>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);>> plot(x,real(y),'r','LineWidth',1.5);>> h=line([4.6748,4.6749],[0,0]);>> h=line([0,5],[
你的错误在于,x0的初值选择不正确.因初值离真值较远,所以出现错误.
从图形看,有无数个解.

>> [x,fval,exitflag]=fzero(f,1)
x =
    1.2228
fval =
  4.4409e-016
exitflag =
     1
>> [x,fval,exitflag]=fzero(f,20)
x =
   18.6994
fval =
  2.7948e-015
exitflag =
     1
>> [x,fval,exitflag]=fzero(f,80)
x =
   74.7977
fval =
  1.1179e-014
exitflag =
     1
.

程序选的x太少了。

 x=[0:0.05:5];

>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);

>> plot(x,real(y),'r','LineWidth',1.5);

>>  h=line([0,5],[0,0]);

>> grid on

 f=@(x)real(2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x));f=@(x)real(2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x));

>> [x2,f2,exitflag2]=fzero(f,4);

>> x2


x2 =


    4.6749

结果正确

收起

Matlab 求值 fzero 第二个值怎么也求不出来  请大师帮忙clear>> x=[0:0.5:5];>> y=2.0095*sqrt(x).*tan(0.7265*sqrt(x))-sqrt(5.6976-0.3205*x);>> plot(x,real(y),'r','LineWidth',1.5);>> h=line([4.6748,4.6749],[0,0]);>> h=line([0,5],[ Matlab中怎么利用fzero求值?怎么利用fzero求函数fv=(100+3.592/v^2)*(-0.04267+v)-0.082054*300=0时的v的值?写个完整的程序给我吧!结果要输出成X.XXXX(四位小数)的形式.明天就要交作业了,这个地方总是弄 matlab 如何用solve求根?我求出来的和fzero的不同,solve的都是复数,fzero都是实数……我用solve求这个方程的根solve('12*x^2 - x^3 - 41*x + 35')结果出了3个复数的根,可是我用fzero逐个逐个找,我找到了3个 求matlab高手帮忙 fzero请高手帮忙用fzero function y=tan(x)-x这个方程. matlab 求数值解“起始猜测处的函数值必须为有限实数”怎么办?如图,在我用fzero解个方程的时候,他说“起始猜测处的函数值必须为有限实数”,请问这是怎么回事?我应该怎么解决? matlab表达式编写求值 matlab中fzero函数求解方程:cos(x)=x*(e^x) Matlab库存函数fzero( )的原函数所运用的基本求解方法是什么 求多项式的零点,用matlab语言中的roots和fzero matlab程序.刚学的 clc;clearezplot('exp(-0.5*t)*sin(t+pi/6)')y1=fzero('exp(-0.5*t)*sin(t+pi/6)',-4)y2=fzero('exp(-0.5*t)*sin(t+pi/6)',-1)能画出图,为什么得不出零点值 matlab中fzero函数怎么调用f1=cos(x)-x;x0=0.55;x1=fzero(f1,x0)%x2=fzero(f1,[0.5,0.6])这个程序怎么得不到这个根呢? 利用函数MATLAB中的fzero求解方程x^2.*exp(-x^2)=0.2在区间[-2,2]的根? matlab运用fzero求解.已知y(t)=e^(-t)cos10t ,求ts,使 |y(t)|=0.05. MATLAB中这个fzero()函数怎么用?y=cos(x)-x;plot(x,y);x0=0.7;x=fzero(@f,x0);这个代码哪个地方错了? '如何用matlab求解 4*x.^4-4*x.^2 =0的解,好像matlab不能计算,至少fzero和solve函数解不出来, matlab 初学者提问如何求得一个函数的在一个区间的所有零点比如:exp(2*sin(x))*cos(x)-exp(2*cos(x))*sin(x) 在[-5 5]区间由图像可以看出来有6个零点如何求出 fzero好像只能在一个区间的f=inline('exp(2*sin( matlab 关于高次方程的根.我要计算一个关于w的高次方程的根.syms w;A=-MM*w^2+JC*w+KK;B=det(A);q=fzero(B,w);其中MM JC KK 都是同阶的方阵,但是程序给出的提示是错误使用 fzero (line 128)FZERO 仅接受双精度数 matlab中能否用fzero求导函数零点,请来看一下我的代码就是已知一个函数的表达式,想利用fzero函数来求出其导函数在给定区间内的零点.>> syms x>> y=cos(3*x)*exp(-x);>> yy=diff(y);>> fzero(yy,0)—————