仅作为个人学习记录所用,若有错漏,见谅
【多项式命令】
y=polval(p,x) 求得多项式p在x处的值y
p3=conv(p1,p2)返回多项式p1和p2的乘积
[p3,r]=deconv(p1,p2) p3返回多项式p1除以p2的商,r返回余项
x=roots(s) 求得多项式p的所有复根
p=polyfit(x,y,k) 用k次多项式拟合向量数据(x,y),返回多项式的降幂系数
【非线性函数的表达】
Fun=@Mfun 定义一个函数句柄
Fun=@(var)funstr 定义匿名函数,其中var是变量名,funstr是函数表达式
x=fzero(Fun,x0) x0为标量时返回在x0附近的0点,x0为向量[a,b]时,返回在其中的0点(两端函数需异号)
[x,f,h]=fsolve(Fun,x0) x返回多元函数在x0附近的一个0点 f返回Fun在0点的函数值,应该接近0 h>0说明结果可靠
函数极值指令
min(y) 返回向量y的min
max(y) 返回向量y的max
[x,f]=fminbnd(fun,a,b) 返回一元函数在[a,b]内的局部极小值点,f返回局部极小值
[x,f]=fminsearch(fun,x0) 返回多元函数在初始值x0附近多局部极小值点,f返回局部极小值,x,x0均为向量
【非线性最小二乘拟合】
基本格式 c=lsqcurvefit(Fun,c0,x,y)
Fun(x,y)为两个输入变量的函数句柄or匿名函数,c0为参数c的预估值,作为迭代初值,x,y为数据向量
完整格式 [c,Q]=lsqcurvefit(Fun,c0,x,y,lb,ub) lb和ub为c的下界和上界,Q返回误差平方和
【迭代法】
Newton迭代法,需自己编程