function [pp]=csplinel(x,y,yp0)
n = length(x);
g = zeros(n,1);
h = zeros(n,1);
s1= zeros(n,1);
s2= zeros(n,1);
dh= ones(n,1);
t =1;
s= y';
v = x';
for j=2:n
h(j) = x(j)-x(j-1);
end

dn = h(2:n)./6;
dn1 = dn(1:n-1) ; dn1(n-1) = 0;
dh(1:n-1) = (h(2:n) + h(1:n-1))./3;

M = diag(dn1,-1) + diag(dh) + diag(dn,1);
for i=2:n-1
g(i) = (((s(i+1)- s(i))/h(i+1))-((s(i)-s(i-1))/h(i)));
end
g(1)= ((s(2)-s(1))/h(2))- yp0;  g(n) = 0; % geben das dn, sowie s''(x0)=0  

s2 = M\g;

s1(1)= yp0;    
s1(2:n) = (s(2:n)-s(1:n-1))./h(2:n) + s2(1:n-1).*h(2:n)./6 + s2(2:n).*h(2:n)./3;

a = ((s2(2:n)-s2(1:n-1))./(6.*h(2:n)));
b = (s2(2:n)./2 - ((s2(2:n)-s2(1:n-1))./(2.*h(2:n))).*h(2:n));
c = (s1(2:n) - s2(2:n).*h(2:n) + ((s2(2:n)-s2(1:n-1))./(2.*h(2:n))).*((h(2:n)).^2));
d = (s(2:n) - s1(2:n).*h(2:n) + (s2(2:n)./2).*((h(2:n)).^2) - ((s2(2:n)-s2(1:n-1))./(6.*h(2:n))).*((h(2:n)).^3));

pp = mkpp(x,[a b c d]);
end