pengweicai 发表于 2006-12-6 16:26

[转贴]离散点曲线的积分

1: 使用分段三次保型厄米特插值逼近原来的函数;

2: 使用高斯-勒让德算法积分逼近函数;

function I = Gauss_q(f_name, a, b, n)
p=legen_pw(n);
x = roots(p)\';x = sort(x);
for j=1:n
   y = zeros(1,n); y(j)=1;
   p = polyfit(x,y,n-1);
   P = poly_itg(p);
   w(j) = polyval(P,1) - polyval(P,-1);
end
x = 0.5*((b-a)*x + a + b);
y=feval(f_name, x);
I = sum(w.*y)*(b-a)/2;

function py = poly_itg(p)
n=length(p);
py = .^(-1),0];


需要把y=feval(f_name, x);这句略加变化,因为逼近函数fname可能需要比较多的输入参数。
页: [1]
查看完整版本: [转贴]离散点曲线的积分