版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数学实验三次样条 数学实验三次样条插值实验1: 某汽车制造商用三次样条插值设计车门的曲线,其中一段的数据如下:0123456789100.00.791.532.192.713.033.272.893.063.193.290.80.2用三次样条插值求,用软件绘制的图像,即车门的曲线。1、 计算:程序:/ splineaaaa.cpp : 定义控制台应用程序的入口点。/*三次样条差值*/*第一步,利用差商,代替导数,求差商;/*第二步,利用追赶法求解三对角方程组,得到Mi;/*第三步,将求得值带入三次样条函数,求得S(x);#include#include#include#define N 10d
2、ouble xN + 1, fxN + 1, hN, HN, fN, aN + 1, bN + 1, cN + 1, MN + 1, betaN + 1, yN + 1,sN;/定义变量数组;double tiaojian1, tiaojian2; /边界条件;/求插商;void chashang() int i;for (i = 0; i = N - 1; i+)hi = xi + 1 - xi;for (i = 0; i = N - 1; i+)fi = (fxi + 1 - fxi) / (xi + 1 - xi); for (i = 1; i = N - 1; i+)ai = hi -
3、 1 / (hi - 1 + hi);bi = hi / (hi - 1 + hi);ci = 3 * (ai * fi - 1 + bi * fi);for (i = 1; i = N - 1; i+)Hi = pow(hi, 2);/求hi的平方;/利用追赶法解三对角方程组前期初始值;aN = 1;/aN相当于N; b0 = 1;/0;c0 = 6.*(f0 - tiaojian1) / h0;/相当于d0;cN = 6.*(tiaojian2 - fN - 1) / hN - 1;/相当于dN;/追赶法计算弯矩向量Mi;void Zhuigan()int i;beta0 = b0 / 2
4、.;y0 = c0 / 2.;for (i = 1; i = N - 1; i+)betai = bi / (2. - ai * betai - 1); /计算i;for (i = 1; i = 0; i-) /逆序求解计算Mi Mi = yi - betai * Mi + 1;/输出三次样条差值函数S1(x)S10(x)void Prints()int i;for (i = 0; iN; i+)printf(s%d=%lf*(%lf-x)3+%lf*(x-%lf)3+%lf*(%lf-x)+%lf*(x-%lf)n,i+1, Mi / (6.*hi), xi + 1, Mi + 1 / (6
5、.*hi), xi, fxi / hi - Mi * Hi / 6., xi + 1, fxi + 1 / hi - Mi + 1 * Hi / 6., xi);/主函数调用;void main()int i;x0 = 0; fx0 = 0.0;x1 = 1; fx1 = 0.79;x2 = 2; fx2 = 1.53;x3 = 3; fx3 = 2.19;x4 = 4; fx4 = 2.71;x5 = 5; fx5 = 3.03;x6 = 6; fx6 = 3.27;x7 = 7; fx7 = 2.89;x8 = 8; fx8 = 3.06;x9 = 9; fx9 = 3.19;x10 =
6、10; fx10 = 3.29;tiaojian1 = 0.8;tiaojian2 = 0.2;chashang();printf(追赶法计算所得Mi:n);Zhuigan();for (i = 0; i = N; i+)printf(%fn, Mi);printf(三次插值多项式si=n);Prints();结果:追赶法计算所得Mi:-0.6038191.1476380.6032690.6392880.3795800.362392-0.149149-0.1857950.2623290.0364770.281761三次插值多项式si=s1=-0.100636.*(1.000000-x1).3+
7、0.191273.*x1.3+0.790000.*x1;s2=0.191273.*(2.000000-x2).3+0.100545.*(x2-1.000000).3+0.598727.*(2.000000-x2)+1.429455.*(x2-1.000000);s3=0.100545.*(3.000000-x3).3+0.106548.*(x3-2.000000).3+1.429455.*(3.000000-x3)+2.083452.*(x3-2.000000);s4=0.106548.*(4.000000-x4).3+0.063263.*(x4-3.000000).3+2.083452.*(
8、4.000000-x4)+2.646737.*(x4-3.000000);s5=0.063263.*(5.000000-x5).3+0.060399.*(x5-4.000000).3+2.646737.*(5.000000-x5)+2.969601.*(x5-4.000000);s6=0.060399.*(6.000000-x6).3+-0.024858.*(x6-5.000000).3+2.969601.*(6.000000-x6)+3.294858.*(x6-5.000000);s7=-0.024858.*(7.000000-x7).3+-0.030966.*(x7-6.000000).3
9、+3.294858.*(7.000000-x7)+2.920966.*(x7-6.000000);s8=-0.030966.*(8.000000-x8).3+0.043722.*(x8-7.000000).3+2.920966.*(8.000000-x8)+3.016278.*(x8-7.000000);s9=0.043722.*(9.000000-x9).3+0.006080.*(x9-8.000000).3+3.016278.*(9.000000-x9)+3.183920.*(x9-8.000000);s10=0.006080.*(10.000000-x10).3+0.046960.*(x
10、10-9.000000).3+3.183920.*(10.000000-x10)+3.243040.*(x10-9.000000);2、绘制车门曲线:matlab程序:clcclearsyms xsyms s;syms sj;x11=0:1:10;s11=0.0;0.79;1.53;2.19;2.71;3.03;3.27;2.89;3.06;3.19;3.29;pp=csape(x11,s11,complete,0.8,0.2);sj=ppval(pp,x11);x1=0.0001:0.01:1;x2=1:0.01:2;x3=2:0.01:3;x4=3:0.01:4;x5=4:0.01:5;x
11、6=5:0.01:6;x7=6:0.01:7;x8=7:0.01:8;x9=8:0.01:9;x10=9:0.01:10;s1=-0.100636.*(1.000000-x1).3+0.191273.*x1.3+0.790000.*x1;s2=0.191273.*(2.000000-x2).3+0.100545.*(x2-1.000000).3+0.598727.*(2.000000-x2)+1.429455.*(x2-1.000000);s3=0.100545.*(3.000000-x3).3+0.106548.*(x3-2.000000).3+1.429455.*(3.000000-x3)
12、+2.083452.*(x3-2.000000);s4=0.106548.*(4.000000-x4).3+0.063263.*(x4-3.000000).3+2.083452.*(4.000000-x4)+2.646737.*(x4-3.000000);s5=0.063263.*(5.000000-x5).3+0.060399.*(x5-4.000000).3+2.646737.*(5.000000-x5)+2.969601.*(x5-4.000000);s6=0.060399.*(6.000000-x6).3+-0.024858.*(x6-5.000000).3+2.969601.*(6.
13、000000-x6)+3.294858.*(x6-5.000000);s7=-0.024858.*(7.000000-x7).3+-0.030966.*(x7-6.000000).3+3.294858.*(7.000000-x7)+2.920966.*(x7-6.000000);s8=-0.030966.*(8.000000-x8).3+0.043722.*(x8-7.000000).3+2.920966.*(8.000000-x8)+3.016278.*(x8-7.000000);s9=0.043722.*(9.000000-x9).3+0.006080.*(x9-8.000000).3+3.016278.*(9.000000-x9)+3.183920.*(x9-8.000000);s10=0.006080.*(10.000000-x10).3+0.046960.*(x10-9.000000).3+3.183920.*(10.000000-x10)+3.243040.*(x10-9.000000);x=x1,x2,x3,x4,x5,x6,x7,x8,x9,x10;S=s1,s2,s3,s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 激光钻石纸行业深度研究报告
- 高周波焊结机行业深度研究报告
- 热力设备定期检修与检测方案
- 建筑环境与人性化设计方案
- 年产30万套护风圈焊接部件、30万套管件项目环境影响报告表
- 水库枢纽工程水力学分析与优化方案
- 天然气管道施工现场安全监督方案
- 人防工程地质勘察与设计方案
- 买贷款车的合同范本
- 代领培训补贴协议书
- 建筑企业管理制度大全-精品完整版
- 锚杆工程隐蔽验收记录
- 2020年汽车物流企业组织结构及部门职责
- 一句话营销技巧培训课件
- 批评话语分析
- 幼教培训课件:《家园共育体系建构与实施策略》
- 突发公共卫生事件健康教育与健康促进课件
- 2023版北京协和医院重症医学科诊疗常规
- (北师大版)六年级数学上册课件比赛场次公开课获奖课件
- 初中物理人教九年级(2022年更新)第十五章 电流和电路连接串联电路和并联电路教学设计
- CFRP板条加固钢筋混凝土梁在结构改造工程中的应用
评论
0/150
提交评论