- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
三次样条插值函数逼近车门曲线。
插值节点数据:
x
0
1
2
3
4
5
6
7
8
9
10
y
2.51
3.30
4.04
4.70
5.22
5.54
5.78
5.40
5.57
5.70
5.80
y′
0.8
0.2
要求
1)写出程序清单,生成M文件
2)画出车门曲线图,给出插值结果,生成DOC文件。
1、
function yi=cubic_spline2(x,y,ydot,xi)
% 三次样条插值公式(三弯矩方程,第一类边界条件)
% x为向量,全部的插值节点;
% y为向量,插值节点处的函数值;
% ydot为向量,端点处的导数值;若缺省,则用均差代替导数;
% xi为标量,自变量x;
% yi为xi处的函数估计值。
n=length(x);
ny=length(y);
% 输入的插值点与它的函数值应有相同的个数
if n~=ny
error(The lengths of X and Y must be equal);
return;
end
% 如果没有给出端点处的导数值,则用均差代替导数
if isempty(ydot)==1
ydot=[(y(2)-y(1))/(x(2)-x(1)) (y(n)-y(n-1))/(x(n)-x(n-1))];
end
h=zeros(1,n);
lambda=ones(1,n);
mu=ones(1,n);
m=zeros(n,1);
d=zeros(n,1);
for k=2:n
h(k)=x(k)-x(k-1);
% 插入节点必须互异
if abs(h(k))eps
error(the DATA is error!);
return;
end
end
for k=2:n-1
lambda(k)=h(k+1)/(h(k)+h(k+1));
mu(k)=1-lambda(k);
d(k)=3*(mu(k)*(y(k+1)-y(k))/h(k+1)+lambda(k)*(y(k)-y(k-1))/h(k));
end
d(2)=d(2)-lambda(2)*ydot(1);
d(n-1)=d(n-1)-mu(n-1)*ydot(2);
d(n)=[];
d(1)=[];
lambda(n)=[];
lambda(1)=[];
mu(n)=[];
mu(1)=[];
A=diag(2*ones(1,n-2));
for i=1:n-3
A(i,i+1)=mu(i);
A(i+1,i)=lambda(i+1);
end
m=A\d;
m=[ydot(1);m;ydot(2)];
for k=2:n
if x(k-1)=xi xi=x(k)
yi=y(k-1)/h(k)^3*(xi-x(k))^2*(h(k)+2*(xi-x(k-1)))+y(k)/h(k)^3*(xi-x(k-1))^2*(h(k)+2*(x(k)-xi))+m(k-1)/h(k)^2*(xi-x(k-1))*(xi-x(k))^2+m(k)/h(k)^2*(xi-x(k))*(xi-x(k-1))^2;
return;
end
end
函数调用:
x=[0 1 2 3 4 5 6 7 8 9 10];
y=[2.51 3.30 4.04 4.70 5.22 5.54 5.78 5.40 5.57 5.70 5.80];
ydot=[0.8 0.2];
xx=0.0:0.01:10.0;
yy=cubic_spline2(x,y,ydot,xx);
plot(x,y,o,xx,yy,r)
% 求插值函数系数:
for k=2:n
a(k-1)=y(k-1)/h(k)^3;
b(k-1)=y(k)/h(k)^3;
c(k-1)=2*(y(k-1)/h(k)^3)+m(k-1)/h(k)^2;
e(k-1)=m(k)/h(k)^2-2*(y(k)/h(k)^3);
end
结果显示:
各区间的插值函数:
区间
三次样条差值
您可能关注的文档
- 浅析农业土地利用与环境保护问题.doc
- 浅析我国茶叶出口贸易的问题与对策.doc
- 浅议中华老字号的品牌营销.doc
- 强化旅客列车安全管理_提高旅客列车服务质量.doc
- 强化食堂标准化建设 提升餐饮质量和水平.doc
- 桥梁人行道步行板交底.doc
- 青田县高中后勤招租项目招租文件.doc
- 清徐县孟封镇小武村蔬菜合作社科技示范推广项目申报书.doc
- 情真意切释猜嫌_——课件.ppt
- 取消农业税政策的评估报告.doc
- 小学科学:ESP8266智能插座电路原理与动手实践研究教学研究课题报告.docx
- 《金融开放浪潮下我国多层次监管体系构建与创新研究》教学研究课题报告.docx
- 区域教育质量监测中人工智能应用的数据质量分析与优化策略教学研究课题报告.docx
- 《金融科技监管中的数据治理与合规性要求》教学研究课题报告.docx
- 《3D打印技术在航空航天领域中的多材料制造与复合材料应用》教学研究课题报告.docx
- 《绿色金融发展中的政府职能与市场机制研究》教学研究课题报告.docx
- 《植物工厂多层立体栽培光环境调控技术对植物生长发育节律的调控机制探讨》教学研究课题报告.docx
- 销售团队年度业绩总结.docx
- 银行风险管理与金融危机防范.docx
- 银行网络攻击预警与快速响应机制.docx
文档评论(0)