24小时热门版块排行榜    

查看: 518  |  回复: 0

幸运的小喽啰

新虫 (初入文坛)

[求助] 如何matlab导出三次样条的方程?

p=[0 ,0.6283  ,  1.2566  ,  1.8850 ,   2.5133  , 3.1416   , 3.7699  ,  4.3982    5.0265,    5.6549 , 6.2832;0  ,  0.1564 ,   0.3090  ,  0.4540 ,   0.5878  ,  0.7071  ,  0.8090  ,  0.8910  ,  0.9511 ,   0.9877 ,    1.0000];
t=0:0.005:1;
hold on
for i=1:8
    x=p(1,i)*(1/6)*(-t.^3+3*t.^2-3*t+1)+p(1,i+1)*(1/6)*(3*t.^3-6*t.^2+4)...
+p(1,i+2)*(1/6)*(-3*t.^3+3*t.^2+3*t+1)+p(1,i+3)*(1/6)*t.^3;

fprintf('x=%f*t.^3+%f*t.^2+%f*t+%f');

y=p(2,i)*(1/6)*(-t.^3+3*t.^2-3*t+1)+p(2,i+1)*(1/6)*(3*t.^3-6*t.^2+4)...
    +p(2,i+2)*(1/6)*(-3*t.^3+3*t.^2+3*t+1)+p(2,i+3)*(1/6)*t.^3;
plot(x,y,'--r');
end


程序如上所示,但有错误,我想得到每次循环的x关于t的三次方程,手算比较麻烦,望各位大神指点。
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 幸运的小喽啰 的主题更新
信息提示
请填处理意见