数值稳定性验证实验报告_第1页
数值稳定性验证实验报告_第2页
数值稳定性验证实验报告_第3页
数值稳定性验证实验报告_第4页
数值稳定性验证实验报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验课程: 数值计算方法 专 业: 数学与应用数学 班 级: 08070141 学 号: 37 姓 名: 汪鹏飞 中北大学理学院实验1 赛德尔迭代法【实验目的】 熟悉用塞德尔迭代法解线性方程组【实验内容】 1.了解MATLAB语言的用法 2.用塞德尔迭代法解下列线性方程组【实验所使用的仪器设备与软件平台】计算机,MATLAB7.0【实验方法与步骤】1.先找出系数矩阵,将前面没有算过的分别和矩阵的相乘,然后将累加的和赋值给,即.算出,依次循环,算出所有的 。2.若前后两次之差的绝对值小于所给的误差限,则输出.否则重复以上过程,直到满足误差条件为止.【实验结果】(A是系数矩阵,b是右边向量,x是迭

2、代初值,ep是误差限)function y=seidel(A,b,x,ep)n=length(b);er=1;k=0;while er>=ep k=k+1; for i=1:1:n q=x(i); sum=0; for j=1:1:n if j=i sum=sum+A(i,j)*x(j); end end x(i)=(b(i)-sum)/A(i,i); er=abs(q-x(i); endendfprintf('迭代次数k=%dn',k)disp(x')【结果分析与讨论】>> A=5 -1 -1 -1;-1 10 -1 -1;-1 -1 5 -1;-1

3、 -1 -1 10; b=-4 12 8 34; seidel(A,b,0 0 0 0,1e-3)迭代次数k=6 0.99897849430002 1.99958456867649 2.99953139743435 3.99980944604109实验课程: 数值计算方法 专 业: 数学与应用数学 班 级: 08070141 学 号: 37 姓 名: 汪鹏飞 中北大学理学院实验2 最小二乘法的拟合【实验目的】 熟悉最小二乘法的拟合方法【实验内容】 1.了解MATLAB语言的用法 2.给出数据x-1.00-0.75-0.50-0.2500.250.500.751.00y-0.22090.3295

4、0.88261.43922.00032.56453.13343.70614.2836希望用一次,二次多项式利用最小二乘法拟合这些数据,试写出正规方程组,并求出最小平方逼近多项式。【实验所使用的仪器设备与软件平台】 计算机,MATLAB7.0,【实验方法与步骤】 1.先算出 ,再算出 2.在正规方程组 中令, 3.令正规方程组的系数矩阵为A,当时,将的值赋给, 当j>m时,将的值赋给,再将矩阵A的其他元素写出来,于是正规矩阵可写成,最后用即可算出向量a,向量a的元素依次是常数项,一次项的系数,二次项的系数m次项的系数.4.由系数即可写出拟合的多项式曲线.【实验结果】(x,y为给定的对应值,

5、 m是要求的拟合次数)function a=zxecf(x,y,m)n=length(x);A(1,1)=n;for j=1:1:2*m l(j)=0; for i=1:1:n l(j)=l(j)+x(i)j; end if j<=m A(1,1+j)=l(j); else A(j+1-m,m+1)=l(j); endendfor j=1:1:m+1 b(j)=0; for i=1:1:n b(j)=b(j)+y(i)*x(i)(j-1); endendfor i=2:1:m+1 k=-1; for j=m+1:-1:1 k=k+1; A(i,j)=l(m+i-1-k); endenda

6、=Ab'【结果分析与讨论】>> x=-1.00 -0.75 -0.50 -0.25 0 0.25 0.50 0.75 1.00; y=-0.2209 0.3295 0.8826 1.4392 2.0003 2.5645 3.1334 3.7061 4.2836; a1=zxecf(x,y,1)a1 = 2.01314444444444 2.25164666666667>> a2=zxecf(x,y,2)a2 = 2.00010043290043 2.25164666666667 0.03130562770563拟合的一次多项式是拟合的二次多项式是优缺点:该方法可

7、以通过改变m的值来将数据拟合成任意次数的多项式函数。实验课程: 数值计算方法 专 业: 数学与应用数学 班 级: 08070141 学 号: 37 姓 名: 汪鹏飞 中北大学理学院实验3 龙贝格算法求积分【实验目的】 熟悉龙贝格方法求积分【实验内容】 1.了解MATLAB语言的用法 2.用龙贝格方法求积分【实验所使用的仪器设备与软件平台】 计算机,MATLAB7.0【实验方法与步骤】 1.计算和,算出. 2.将区间分半,计算,算出和. 3.再将子区间分半,计算 ,算出,和. 4.再将子区间分半,计算 ,,算出, , 和. 5.再将子区间分半,算出, , 和 ,不断将子区间分半,重复以 上过程,

8、算出, , ,一直到相邻两个值之差的绝对值不超 过给定的误差为止,最后一次算出的R值即为所求。【实验结果】(a是下限,b是上限,eps是误差限)定义函数function y=intf(x)y=2*(exp(-x2)/(pi0.5);主程序function J=romberg(a,b,eps)er=1;k=3;h=b-a;T(1)=h*(intf(a)+intf(b)/2;h1=h/2;T(2)=T(1)/2+h1*intf(a+h1);S(1)=4/(4-1)*T(2)-1/(4-1)*T(1);h2=h1/2;T(4)=T(2)/2+h2*(intf(a+h2)+intf(a+3*h2);S

9、(2)=4/(4-1)*T(4)-1/(4-1)*T(2);C(1)=42/(42-1)*S(2)-1/(42-1)*S(1);h3=h2/2;T(8)=T(4)/2+h3*(intf(a+h3)+intf(a+3*h3)+intf(a+5*h3)+intf(a+7*h3);S(4)=4/(4-1)*T(8)-1/(4-1)*T(4);C(2)=42/(42-1)*S(4)-1/(42-1)*S(2);R(1)=43/(43-1)*C(2)-1/(43-1)*C(1);while er>=eps H=0; k=k+1; u=h/2k; x=a+u; i=0; while x<b H

10、=H+intf(x); i=i+1; x=a+u*(2*i+1); end T(2k)=T(2(k-1)/2+h*H/2k; S(2(k-1)=4/(4-1)*T(2k)-1/(4-1)*T(2(k-1); C(2(k-2)=42/(42-1)*S(2(k-1)-1/(42-1)*S(2(k-2); R(2(k-3)=43/(43-1)*C(2(k-2)-1/(43-1)*C(2(k-3); er=abs(R(2(k-3)-R(2(k-4);endI=R(2(k-3);fprintf('I=%10.8fn',I)【结果分析与讨论】>> romberg(0,1,1e-

11、4)I=0.84270079实验课程: 数值计算方法 专 业: 数学与应用数学 班 级: 08070141 学 号: 37 姓 名: 汪鹏飞 中北大学理学院 实验4 标准四阶R-K方法【实验目的】 熟悉四阶R-K方法【实验内容】1.了解MATLAB语言的用法 2.取步长,用标准四阶R-K方法解初值问题【实验所使用的仪器设备与软件平台】 计算机,MATLAB7.0【实验方法与步骤】 1.先将积分区除以步长确定分点个数. 2.利用标准四阶R-K公式,算出,;,. 3.利用算出下一个节点处的值. 4.重复以上步骤,算出每个分点处的值. 5.输出每个分点处y的值.【实验结果】 (是下限,b是上限,h是步长,y0是初值)定义函数function f=func(x,y)f=(3*y)/(1+x);主程序function q=LK(a,b,h,y0)n=(b-a)/h;fprintf('a=%6.4f,y0=%10.8fn',a,y0)for i=0:1:n-1 k1=h*func(a,y0); k2=h*func(a+h/2,y0+k1/2); k3=h*func(a+h/2,y0+k2/2); k4=h*func(a+h,y0+k3); y0=y0+1/6*(k1+2*k2+2*k3+k4); fprintf('a=%6.4f,y0=%10.8

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论