实验一三次样条插值的三弯矩法
一、实验目的
用三次样条插值的三弯矩法,编制第一与第二种边界条件的程序.已知数据
xi,yi?f(xi),i?0,?,n及边界条件y(jk)(xj),j?0,n,k?1,2,编程计算f(x)的三次样条插值函数S(x).具体要求为:输出用追赶法解出的弯矩向量
M?[M0,?,Mn]及S(k)(ti),i?0,?,m,k?0,1,2的值;画出y?S(x)的图形,图形中描出插值点(xi,yi)及(ti,S(ti))分别用‘o’和‘*’标记.
二、实验原理
(1)由 ????????? ??=0,1,2,…,?? ,按公式
‘’ ??????=?????1
???????????????1
+????,???=??????????1 ??????
6
??+???+1
????=??0=
???+1???+???+1
,????=
??????+???+1
, ????=?
????+1????????+1
?
??????????1
???
6??0??1???0?1
?1
′′′
???0,????= +2 1???0 ??0
6???????
′
? ????
??????????1
???
′′
+2 1????? ????
求出???,????,????,????. (2)由边界条件确定??0,??0和????,????。 (3)用追赶法解线性方程组
2
??1
求出??0,??1,??2,…,????
??0????
0 0
2 ??1
??1 ??1
??1 2??2 ??2 ??2
? = ? ???
?? ?????22?????2?? ???2 ???2
?????12 ?????1 ?????1 ?????1 ????2 ???? ????
(4)由
??????? 3 ????????1 3????????????12
???? ?? =?????1+????+??? ?????1?
6???6??????6????????1????2+? ?????
???6??
确定???? ?? ,得到S(x). 三、实验结果
所用数据:
x=[-5,-3.8884,-3.0142,-2.3216,-1.7433,-1.3771,-1.1318,-0.86821,-0.585
98,-0.4314,-0.0293,0.4314,0.58598,0.86821,1.1318,1.3771,1.7433,2.1242
,2.3216,3.0142,3.8884,5];
y=[0.03846,0.06204,0.09915,0.1565,0.2476,0.3453,0.4384,0.5702,0.7444,0.8431,0.9991,0.8431,0.7444,0.5702,0.4384,0.3453,0.2476,0.1814,0.1565,0.09915,0.06204,0.03846];
d2s1=0.0084;d2sn=0.0084;%第二种边界条件
t=[-4.166,-3.233,-2.495,-1.888,-1.469,-1.193,-0.9341,-0.6565,-0.47,-0.1298,0.3162,0.5473,0.7977,1.066,1.316,1.652,2.029,2.272,2.841,3.67];
用追赶法求得的弯矩量为 M0=0.0084 M1=0.019204 M2=0.047836 M3=0.10891 M4=0.2393 M5=0.38381 M6=0.48683 M7=0.50559 M8=0.081512 M9=-0.55789 M10=-2.2251 M11=-0.64145 M12=0.097766 M13=0.50104 M14=0.48825 M15=0.3828 要计算的20个节点出的值为 S(-4.166)=0.054449 S(-3.233)=0.087288 S(-2.495)=0.13838 S(-1.888)=0.219 S(-1.469)=0.3167 S(-1.193)=0.41267 S(-0.9341)=0.53401 S(-0.6565)=0.69895 S(-0.47)=0.81911 S(-0.1298)=0.9833 S(0.3162)=0.90801 S(0.5473)=0.76957 S(0.7977)=0.61123 S(1.066)=0.46809 S(1.316)=0.36609 S(1.652)=0.26819 M16=0.24171 M17=0.14866 M18=0.11118 M19=0.047302 M20=0.019321 M21=0.0084 要计算的20个节点出的一阶导数值为: dS(-4.166)=0.024928 dS(-3.233)=0.049505 dS(-2.495)=0.095911 dS(-1.888)=0.18189 dS(-1.469)=0.29464 dS(-1.193)=0.40603 dS(-0.9341)=0.53267 dS(-0.6565)=0.63919 dS(-0.47)=0.63031 dS(-0.1298)=0.25502 dS(0.3162)=-0.51127 dS(0.5473)=-0.6502 dS(0.7977)=-0.59727 dS(1.066)=-0.46734 dS(1.316)=-0.35247 dS(1.652)=-0.2376 dS(2.029)=-0.15484 dS(2.272)=-0.11968 dS(2.841)=-0.068625 dS(3.67)=-0.034911
S(2.029)=0.1954 S(2.272)=0.16229 S(2.841)=0.11017 S(3.67)=0.069093 要计算的20个节点出的二阶导数值为: d2S(-4.166)=0.016506 d2S(-3.233)=0.04067 d2S(-2.495)=0.093623 d2S(-1.888)=0.20668 d2S(-1.469)=0.34754 d2S(-1.193)=0.46113 d2S(-0.9341)=0.5009 d2S(-0.6565)=0.18747 d2S(-0.47)=-0.39823 d2S(-0.1298)=-1.8084 d2S(0.3162)=-1.0374 d2S(0.5473)=-0.087206 d2S(0.7977)=0.40029 d2S(1.066)=0.49144 d2S(1.316)=0.40907 d2S(1.652)=0.27689 d2S(2.029)=0.17192 d2S(2.272)=0.1206 d2S(2.841)=0.063277 d2S(3.67)=0.026312
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库实验一 三次样条插值的三弯矩法在线全文阅读。
相关推荐: