Você está na página 1de 1

function [a,b,c,d]=c4cspline(N,x,y,alpha,beta)

if nargin < 5, error('Ham phai co nam doi do.');end;


for i=1:N-1, h(i)=x(i+1)-x(i);end;
A(1)=2*h(1);A(N)=2*h(N-1);
B(1)=h(1);C(N-1)=h(N-1);
for i=2:N-1
A(i)=2*(h(i-1)+h(i));B(i)=h(i);C(i-1)=h(i);
end;
D(1)=3*(y(2)-y(1))/h(1)-3*alpha;
D(N)=3*beta-3*(y(N)-y(N-1))/h(N-1);
for i=2:N-1
D(i)=3*((y(i+1)-y(i))/h(i)-(y(i)-y(i-1))/h(i-1));
end;
c=c3tridiag(N,A,B,C,D);
for i=1:N-1
a(i)=y(i);
b(i)=(y(i+1)-y(i))/h(i)-h(i)*(c(i+1)+2*c(i))/3;
d(i)=(c(i+1)-c(i))/3/h(i);
end;

Você também pode gostar