




免费预览已结束,剩余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 10double 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 - 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.;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.*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 = 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+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.*(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+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);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;x6=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)+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.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,s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 培训文员考试题库及答案
- 森林火灾逃生知识培训课件
- 桶装纯净水知识培训
- 2025年面试技巧与题库解析企业产品经理岗位招聘备考宝典
- 2025年大数据工程师招考笔试练习题及解析手册
- 2025年家庭照护者、健康照护师岗位专业技能资格知识考试题库与答案
- 2025年外贸业务专员高级英语面试题解析
- 2025年教育心理学教师招聘笔试模拟题及答案解析
- 湖南省衡阳市重点中学2026届化学高二第一学期期中调研模拟试题含解析
- 2025年篮球理论考试题及答案
- 壁挂炉购销合同-合同范本
- 陈腐垃圾施工方案
- 渤海大学《软件工程》2022-2023学年第一学期期末试卷
- 税务会计岗位招聘笔试题及解答(某大型国企)2024年
- ICD-10疾病编码完整版
- 消防设备设施操作讲解培训讲课文档
- 内分泌科医疗管理制度
- 临床开展十二项细胞因子检测临床意义
- FlowmasterV7中文技术手册
- 房屋承包出租合同
- 石油化学工业的发展历程与前景
评论
0/150
提交评论