练习8

1、在MATLAB中输入一个一元函数并保存,例如

f(x)=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x).

新建一个编辑窗口,输入
function y=damax(x);
y=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x);
然后单击“保存”,将路径设置为默认目录,将文件名命名为damax.m,然后保存。

2、用两种方法去求上述函数的根。

(1)>> a=fzero('damax',[-100,100])

a =

    2.4164
(2)>> y=inline('x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)');
>> a=fzero(y,[-100,100])

a =

    2.4164

3、求上述函数的极值。

极小值
>> a=fminbnd('damax',-100,100)

a =

  -99.9999
极大值
>> -y=inline('-x^3-(x-0.98)^2/(x+1.25)^3+5*(x+1/x)');
>> a=fminbnd(-y,-100,100)

a =

   99.9999

4、如果函数不保存在默认目录下会有什么后果?

如果没有保存在默认目录下,系统会提示:
>> a=fminbnd('damax',-100,100)
未定义函数或变量 'damax'。

出错 fminbnd (line 228)
x= xf; fx = funfcn(x,varargin{:});

5、构造一个多项式,求根,再由根求出原来的多项式。得到的多项式与原来的多项式是否相同,为什么?

      得到的多项式与原来的多项式不一定相同。因为这里所用的求根方法是先把多项式转化为伴随矩阵,然后再求特征值,所以在取根时会有近似,所以在由根求出原来的多项式,也同样会有近似,所以得到的多项式与原来的多项式可能会有差别。

6、MATLAB求多项式的根是用什么方法,与传统方法相比有什么优点? 

MATLAB求多项式的根用M文件和求0值的方法,用一个fzero函数。

优点:显得数学性更强一点,可以方便地求出复杂的高次方程根。



猜你喜欢

转载自blog.csdn.net/A_666888/article/details/80033905