侯创142136第四次上机作业.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3次样条插值函数 侯创 142136 注:曹老师,我前面的三份作业,在第三份作业里面做了两道题,这个word文件是第四次作业,做的题已经是第五道题了,特此注明一下。 1.程序使用matlab语言编写,代码如下 n = 10; x = zeros(1,11); miu = zeros(1,9); lan = zeros(1,9); threed = zeros(1,9); for i = 0:10 x(i+1) = i; end y = [2.51 3.30 4.04 4.70 5.22 5.54... 5.78 5.40 5.57 5.70 5.80]; dy0 = 0.8; dy10 = 0.2; for i=1:9 miu(i) = 0.5; lan(i) = 0.5; threed(i) = 3*(y(i+2)+y(i)-2*y(i+1)); end C = zeros(11); for i = 1:11 C(i,i) = 2; end for i = 2:10 C(i,i-1) = miu(i-1); C(i,i+1) = lan(i-1); end C(1,2) = 1; C(n+1,n) = 1; d10 = (y(1+1)-y(0+1))/(x(1+1)-x(0+1)); d00 = dy0; d100 = (d10 - d00)/(x(1+1)-x(0+1)); d0 = 6*d100; dNn = (y(n+1)-y(n-1+1))/(x(n+1)-x(n-1+1)); dNN = dy10; dNNn = (dNN - dNn)/(x(n+1)-x(n-1+1)); dn = 6*dNNn; d = [d0 threed dn]; M = C^-1*d; fxixJ = zeros(1,10); S = zeros(1,10); for i = 1:10 fxixJ(i) = (y(i+1)-y(i))/(x(i+1)-x(i)); end for i = 1:10 S(i) = y(i) + (fxixJ(i)-(M(i)/3+M(i+1))/6)*0.5... +0.5*M(i)*0.25+1/6*(M(i+1)-M(i))*0.5^3; end S 2.结果与心得体会 输出的结果为 2.90815148706460 3.67092092871871 4.37024813139390 4.97391987903901 5.33490568578339 5.76479071116075 5.41176480290694 5.60273341054482 5.60938488824711 5.72764370313340 这次程序书写虽然是以书本上作业题为主要数据,但是程序编写注意使用了各种变量与参数,整体的通用性较高。最初因为matlab的数组下标开始数据为1的缘故,打算使用C++编写,后考虑到需要用C++解矩阵,还是专用matlab语言编写。

文档评论(0)

zzqky + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档