matlab

您所在的位置:网站首页 多项式如何化成单项式 matlab

matlab

2024-07-13 13:42| 来源: 网络整理| 查看: 265

多项式 多项式的表示

一个p阶的多项式可以用一个含有p+1个元素的向量表示,MATLAB表示多项式为包含由下降幂排列的系数的行向量,例如

p(x)=2*x^2+1

可以表示为

p = [2 0 1]; conv

多项式的乘法。

p1=[1 1];%它是x+1的系数矩阵 p2=[1 0];%它是x的系数矩阵 P=conv(p1,p2) P= 1 1 0 %P=[1 1 0],说明乘出来的多项式为x^2+x poly 用根构造多项式。如x指多项式的根,**poly(x)**就得到该多项式的系数;生成矩阵的特征多项式。如A为某一矩阵,**poly(A)**就能够得到该矩阵的特征多项式的系数 ; polyval y=polyval(p,x);%根据多项式系数矩阵p求在x处的值 roots x=roots(p);%求多项式p的根 polyder polyder(p);%对多项式p求导 polyfit p = polyfit(x,y,n);%根据数据点集(x,y)拟合一个多项式,多项式的最高次幂为n,返回多项式系数矩阵 sym2poly

通过函数表达式(符号函数形式)产生系数矩阵

p=sym2poly(f); poly2sym

通过系数矩阵产生多项式函数的表达式(符号函数形式)

f=poly2sym(p); 符号函数(Symbolic Function)

注:本节下matlab代码共用变量

通过syms定义变量,直接写函数表达式,这样就定义了一个符号函数y

syms p q x y p=x^2; q=x^2+y^2;

符号函数图像的绘制可以通过函数fplot(二维),ezplot(二维),ezsurf(三维),ezmesh(三维)

ezplot(p);%或者定义范围ezplot(p,[-5,5]); fplot(p);%同上 ezsurf(q);%或者定义范围ezsurf(q,[-1,1]);或者ezsurf(q,[-1,1],[-1,1]); ezmesh(q);%同上

求符号函数在某一处的取值,

一种方法是通过函数matlabFunction将符号函数转为匿名函数,再来计算函数值 f1=matlabFunction(p) f2=matlabFunction(q) f1(3) f2(1,2) %结果为: f1 = @(x)x.^2 f2 = @(x,y)x.^2+y.^2 ans = 9 ans = 5

附:匿名函数与符号函数的转换

上面说的是符号函数转换为匿名函数,下面来看匿名函数转换为符号函数

f3=@(t)t.^2; syms t f4=f3(t) %f4中就是转换而来的符号函数 另一种方法是通过函数eval直接求符号函数在某一处的取值,首先需要给x赋特定的值 x=1;y=2; eval(p) eval(q) %结果为 ans = 1 ans = 5 另一种方法是通过函数subs直接求符号函数在某一处的取值 subs(p,1) %subs(p,x,1) subs(q,[1 2]) %subs(q,[x y],[1 2]) %结果为 ans = 1 ans = 5 %另外,subs(q,y,2)会得到x^2+4 字符串函数 字符串转换为函数

str2func

fh = str2func(str) %根据函数名称或匿名函数的文本表示来构造函数句柄 fh 函数转换为字符串

func2str

c = func2str(fh) %构造字符向量 c,该字符向量包含与函数句柄 fh 相关联的函数的名称。如果 fh 与匿名函数相关联,则 %func2str 返回表示该匿名函数的字符向量。 匿名函数(Anonymous Function) 求函数零点 roots

多项式求零点函数

fzero

求给定初值附近的一个数值解/返回一元函数在某个区间内的的零点

%调用格式: x=fzero(fun,x0) %fun为定义方程的函数或匿名函数;x0为一个值或区间,作为初始条件

只能求区间里面的一个零点,并且要求在给定区间端点函数值异号,所以使用之前应该先作图,得出单个零点分布的区间,然后使用该函数求零点.若有多个零点,则需多次使用该函数.

fminbnd

求一元函数在某个区间内的最小值和对应的最小值点.

%调用格式: [x0,fmin]=fminbnd(fun,a,b);%fun为定义方程的函数或匿名函数;区间为[a b] solve syms x solve(2*x==1,x) %现在不推荐用solve('2*t=1','t') %结果为 ans = 1/2


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3