legendre.m
来自「Matlab语言常用算法程序集.rar 里面有很多有用的Matlab数值运」· M 代码 · 共 24 行
M
24 行
function f = Legendre(y,k,x0)
syms t;
P(1:k+1) = t;
P(1) = 1;
P(2) = t;
c(1:k+1) = 0.0;
c(1)=int(subs(y,findsym(sym(y)),sym('t'))*P(1),t,-1,1)/2;
c(2)=int(subs(y,findsym(sym(y)),sym('t'))*P(2),t,-1,1)/2;
f = c(1)+c(2)*t;
for i=3:k+1
P(i) = ((2*i-3)*P(i-1)*t-(i-2)*P(i-2))/(i-1);
c(i) = int(subs(y,findsym(sym(y)),t)*P(i),t,-1,1)/2;
f = f + c(i)*P(i);
if(i==k+1)
if(nargin == 3)
f = subs(f,'t',x0);
else
f = vpa(f,6);
end
end
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?