当前位置:首页 >> 其它 >>

数值分析实习报告


数值分析实习报告

数值分析实习报告



目:

MATLAB 算法实习

学生姓名: 指导教师: 学 学 院: 号: 刘圣军

2016 年 12 月

数值分析实习报告

目录
一、拉格朗日插值法 ................................................................................ 1 二、最小二乘拟合法 ................................................................................ 3 三、高斯求积法 ........................................................................................ 5 四、Gauss 列主元消去法 ......................................................................... 6 五、GS 迭代法.......................................................................................... 8 六、牛顿迭代法 ........................................................................................ 9 七、反幂法 .............................................................................................. 11 八、四阶古典 R_K 法 ............................................................................ 13

数值分析实习报告

一、拉格朗日插值法
例题: 根据下面的数据点求出其拉格朗日插值多项式, 并计算当 x=0.6 时 y 的值。
x y 0.4 -0.916291 0.5 -0.693147 0.7 -0.356675 0.8 -0.223144

1、 建立 M 文件 function f=Language(x,y,x0) syms t ; if(length(x)==length(y)) n=length(x); else disp('x 和 y 的维数不相等!'); return; end f=0.0; for(i=1:n) l=y(i); for(j=1:i-1) l=l*(t-x(j))/(x(i)-x(j)); end; for(j=i+1:n) l=l*(t-x(j))/(x(i)-x(j)); end; f=f+l; simplify(f); end f0=subs(f,'t',x0)

1 / 14

数值分析实习报告

2、在命令窗口输入指令并运行:

即: f=25/3*(20633039030814695/2251799813685248*t-20633039030814695/450359962 7370496)*(t-7/10)*(t-4/5)+50/3*(-15608282854564885/2251799813685248*t+312165 6570912977/1125899906842624)*(t-7/10)*(t-4/5)-50*(-14267/12000*t+14267/30000)* (t-1/2)*(t-4/5)+100/3*(-2512378088124905/4503599627370496*t+502475617624981/ 2251799813685248)*(t-1/2)*(t-7/10)

2 / 14

数值分析实习报告

二、最小二乘拟合法
例题:编制以函数

?x ?
k

n k ?0

为基的多项式最小二乘拟合程序,并用于对下列数

据作三次多项式最小二乘拟合(取权函数 wi≡1)
x y 0 -4.447 0.5 -0.452 1.0 0.551 1.5 0.048 2.0 -0.447 2.5 0.549 3.0 4.552

总共有 7 个数据点,令 m=6 1、建立主程序文件 x=0:0.5:3; y=[-4.447,-0.452,0.551,0.048,-0.447,0.549,4.552]; plot(x,y,'*') xlabel 'x 轴' ylabel 'y 轴' title '散点图' hold on

m=6;n=3; A=zeros(n+1); for j=1:n+1 for i=1:n+1 for k=1:m+1 A(j,i)=A(j,i)+x(k)^(j+i-2) end end end;

B=[0 0 0 0]; for j=1:n+1
3 / 14

数值分析实习报告

for i=1:m+1 B(j)=B(j)+y(i)*x(i)^(j-1) end end B=B'; a=inv(A)*B; x=[0:0.0001:3.0]; z=a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3; plot(x,z) legend('离散点','y=a(1)+a(2)*x+a(3)*x.^2+a(4)*x.^3') title '拟合图' 2、 在命令窗口输入指令并运行:

4 / 14

数值分析实习报告

三、高斯求积法

例题:利用高斯求积公式计算积分:

?

1

0

x ln xdx

1、建立M文件 function s=gaussz(a,b,n) h=(b-a)/n; s=0.0; for m=0:(1*n/2-1) s=s+h*(gaussr(a+h*((1-1/sqrt(3))+2*m))+gaussr(a+h*((1+1/sqrt(3))+2*m))); end s; I=int('sin(x)',0,1); c=(I-s)/I; 2、建立M文件 function y=gaussr(x) y=sqrt(x)*log(x); 3、在命令窗口输入指令并运行:

5 / 14

数值分析实习报告

四、Gauss 列主元消去法
2 1 ? ? x1 ? 3 x 2 ? 3 x3 ? 2 ? 11 ?9 x3 ? 2 例题:用 Gauss 列主元消去法解方程组: ? x1 ? x 2 ? 20 20 ? 1 ?2 ? 3 x1 ? 3 x 2 ? x3 ? 2 ?
1、建立 M 文件

function Gauss(A,b) [m,n]=size(A); n=length(b); for k=1:n-1

%A 为系数矩阵,b 为右端项矩阵

[pt,p]=max(abs(A(k:n,k))); p=p+k-1; if p>k

%找出列中绝对值最大的数

t=A(k,:);A(k,:)=A(p,:);A(p,:)=t; t=b(k);b(k)=b(p);b(p)=t; end m=A(k+1:n,k)/A(k,k);

%交换行使之变到主元位置上

%开始消元

A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-m*A(k,k+1:n); b(k+1:n)=b(k+1:n)-m*b(k); A(k+1:n,k)=zeros(n-k,1); if flag~=0 Ab=[A,b]; end end x=zeros(n,1); x(n)=b(n)/A(n,n); for k=n-1:-1:1
6 / 14

%开始回代

数值分析实习报告

x(k)=(b(k)-A(k,k+1:n)*x(k+1:n))/A(k,k); end for k=1:n fprintf('x[%d]=%f\n',k,x(k)); end

2、在命令窗口输入指令并运行:

7 / 14

数值分析实习报告

五、GS 迭代法
?10x1 ? 3 x 2 ? x3 ? 14 ? 例题:用 Gauss-Seidel 迭代法求解方程组: ?2 x1 ? 10x 2 ? 3 x3 ? ?5 ? x ? 3 x ? 10x ? 14 2 3 ? 1

1、建立 M 文件 function Gauss_Seidel(A,b,eps) 精度 [m,n]=size(A); D=diag(diag(A)); L=D-tril(A); U=D-triu(A); temp=1; x=zeros(m,1); k=0; while abs(max(x)-temp)>eps temp=max(abs(x)); k=k+1; %记录循环次数 %Gauss_Seidel 的迭代公式 %求矩阵 D %求矩阵 L %求矩阵 U %A 为系数矩阵,b 为后端项矩阵,epe 为

x=inv(D-L)*U*x+inv(D-L)*b; end for k=1:n fprintf('x[%d]=%f\n',k,x(k)); end 2、在命令窗口输入指令并运行:

8 / 14

数值分析实习报告

六、牛顿迭代法
例题:用 Newton 迭代法求解方程 x3-3x-1=0 在 x=2 附近的根。 1、建立 M 文件 function [ x_star,index,it ] = newton( fun,x,eps,it_max ) if nargin<4 it_max=100; end if nargin<3 eps=1e-5; end index=0; k=1; while k<=it_max x1=x; f=feval(fun,x); if abs(f(2))<eps break; end x=x-f(1)/f(2); if abs(x-x1)<eps index=1; break; end k=k+1; end x_star=x; it=k;

9 / 14

数值分析实习报告

2、在命令窗口输入指令并运行:

10 / 14

数值分析实习报告

七、反幂法
例题:求矩阵 A 的绝对值最小的特征值和对应的特征向量
?2 1 0? ? A= ? ?1 3 1 ? ? ?0 1 4? ?

给出

1、建立 M 文件 function[m,u,index]=pow_inv(A,ep,N) %A 为矩阵; ep 为精度要求; N 为最大迭代次数; m 为绝对值最小的特征值; u 为对应最小特征值的特征向量。 N=100; ep=1e-6; n=length(A);u=ones(n,1); index=0;k=0;m1=0; invA=inv(A); while k<=N v=invA*u;[vmax,i]=max(abs(v)); m=v(i);u=v/ m; if abs(m-m1)<ep index=1;break; end m1=m;k=k+1; end m=1/ m;

11 / 14

数值分析实习报告

2、在命令窗口输入指令并运行:

12 / 14

数值分析实习报告

八、四阶古典 R_K 法
? y' ? 2 x ? y 例题:利用程序对初值问题: ? ? y (0) ? 1
用四阶古典 R_K 法(h=0.1)计算 x=0.1,0.2,0.3,0.4,0.5 各处的数值解。 1、建立 M 文件 function R_K4(x,y,h) syms K1 K2 K3 K4, for m=1:5, x=x+h; K1=2*x+y; K2=2*(x+0.5*h)+(y+0.5*h*K1); K3=2*(x+0.5*h)+(y+0.5*h*K2); K4=2*(x+h)+(y+h*K3); y=y+(1/6)*h*(K1+2*K2+2*K3+K4); disp('x='),disp(x); disp('y='),disp(y); end end

13 / 14

数值分析实习报告

2、在命令窗口输入指令并运行:

14 / 14


相关文章:
数值分析实习报告.doc
数值分析实习报告 - 数值分析实习报告 数值分析实习报告 题 目: MATLAB
北航数值分析计算实习报告一.doc
北航数值分析计算实习报告一_理学_高等教育_教育专区。北京航空航天大学研究生数值分析大作业第一题 北京航空航天大学 《数值分析》计算实习报告第一大题 学专 院:...
数值分析第三次实习报告.doc
数值分析第三次实习报告 - 武汉理工大学 数值分析实验报告... 数值分析第三次实习报告_工学_高等教育_教育专区。武汉理工大学 数值分析实验报告 学生学号 实验课成绩...
数值分析实习报告.doc
数值分析实习报告 - 数值分析实习 基于matlab编程实现... 数值分析实习报告_工学_高等教育_教育专区。数值分析实习 基于matlab编程实现 计算机科学与技术 CS0809 班 陶...
数值分析实习报告.doc
数值分析实习报告 - 数值分析实习报告 姓名:*** 学号:*** 班级:***
西南交大数值分析上机实习报告.doc
西南交大数值分析上机实习报告_理学_高等教育_教育专区 暂无评价|0人阅读|0次下载|举报文档西南交大数值分析上机实习报告_理学_高等教育_教育专区。研究生课程上机...
数值分析上机实习报告.doc
数值分析上机实习报告 - 数值分析上机实习报告 学姓专 号: 名: 业: 联系电话: 联系电话: 2011 年 11 月 (数值分析)上机实习报告 第 I 页 序 言 1...
数值分析第四次实习报告.doc
数值分析第四次实习报告 - 武汉理工大学 数值分析实验报告... 数值分析第四次实习报告_工学_高等教育_教育专区。武汉理工大学 数值分析实验报告 学生学号 实验课成绩...
2014级硕士研究生数值分析上机实习报告(答案).doc
2014级硕士研究生数值分析上机实习报告(答案)_理学_高等教育_教育专区。哈尔滨工业大学(威海)实验报告纸 2014 级硕士研究生数值分析上机实习 (第一次) 姓名: 学号...
西南交通大学研究 数值分析上机实习报告2012.doc
西南交通大学研究 数值分析上机实习报告2012 - 数值分析上机实习报告要求 1.应提交一份完整的实习报告。具体要求如下: (1)要有封面,封面上要标明姓名、学号、专业...
数值分析上机实习报告题目.doc
数值分析上机实习报告题目 - 数值分析上机实习报告要求 1.应提交一份完整的实习报告。具体要求如下: (1)要有封面,封面上要标明姓名、学号、专业和联系电话; (2...
数值分析上机实习报告.doc
数值分析上机实习报告 - 指导教师: 指导教师: 姓学专名: 号: 业: 联系电话: 联系电话: 上海交通大学 数值分析实习报告 目序 录 言...
数值分析上机实习报告.doc
数值分析上机实习报告 - 研究生数值分析课程,雅可比迭代法和高斯-塞得尔迭代法的
数值分析上机实习报告.doc
数值分析上机实习报告 - 数值分析上机实习报告 姓名:刘童超 学号:12011174 班级:结构 1 班 联系电话:15928948862 序言 数值分析,顾名思义,就是对于一些比较复杂的...
数值分析上机实习报告.doc
数值分析上机实习报告 - 数值分析上机实习报告 1 目录 1.问题一………1 1
实习报告1_图文.pdf
辽宁工程技术大学 本科生实习报告书 教学单位 专班业级 理学院 数学与应用数学...的数值格式的能力,并通过对模型问题进 行数值模拟和对数值结果进行一定的分析。...
数值分析上机实习报告.doc
数值分析上机实习报告 - 《数值分析》上机实习题 指导老师:代新敏 姓学专院名:
2014数值分析上机实习题.doc
2014数值分析上机实习题 - 1 信件主题请采用学号在前,姓名在后的格式,即形如: 201422222 张三数值实验报告 2. 报告文档采用.doc 或.pdf 格式, 也请按上述...
第一章数值分析.(误差分析)_图文.ppt
重视算法的误差分析、收敛性分析和稳定性分析 4.注重在计算机上实现算法并用于解决实际计算问题 五、计算实习报告写法 1.实习题目 3.目的意义 5.算法 7.数值算例...
谷根代数值分析--上机实习报告.doc
谷根代数值分析--上机实习报告_理学_高等教育_教育专区。《数值分析》谷根代、杨晓忠等编著,科学出版社。 此为课后练习的部分上机实习内容的实习报告。 ...
更多相关标签: