首页 > 其他 > 详细

三次样条4点权重

时间:2016-11-24 06:39:13      阅读:213      评论:0      收藏:0      [点我收藏+]
clear
clc

syms x0 x1 x2 x3 h x
syms y0 y1 y2 y3

h0=h;%x1-x0;
h1=h;%x2-x1;
h2=h;%x3-x2;

d0=(y1-y0)/(x1-x0);
d1=(y2-y1)/(x2-x1);
d2=(y3-y2)/(x3-x2);

d0=(y1-y0)/h;
d1=(y2-y1)/h;
d2=(y3-y2)/h;

A=[1      0     0      0;
   h    4*h     h      0;
   0      h   4*h      h;
   0      0     0      1 ]
b=[0;
   6*(d1-d0);
   6*(d2-d1);
   0];

m=A\b;

m0=m(1);
m1=m(2);
m2=m(3);
m3=m(4);

s10=y1;
s11=d1-h/6*(2*m1+m2);
s12=m1/2;
s13=(m2-m1)/6/h;

s=s10+s11*(x-x1)+s12*(x-x1)^2+s13*(x-x1)^3;

ss=s;

s=ss;
s=subs(s,y1,0);
s=subs(s,y2,0);
s=subs(s,y3,0);
cc=collect(s,y0);
simplify(cc);
pretty(cc)

s=ss;
s=subs(s,y0,0);
s=subs(s,y2,0);
s=subs(s,y3,0);
cc=collect(s,y1);
simplify(cc);
pretty(cc)

s=ss;
s=subs(s,y0,0);
s=subs(s,y1,0);
s=subs(s,y3,0);
cc=collect(s,y2);
simplify(cc);
pretty(cc)

s=ss;
s=subs(s,y0,0);
s=subs(s,y1,0);
s=subs(s,y2,0);
cc=collect(s,y3);
simplify(cc);
pretty(cc)

 

三次样条4点权重

原文:http://www.cnblogs.com/reedlau/p/6095664.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!