微分计算方法.docx

上传人:b****2 文档编号:2187152 上传时间:2023-05-02 格式:DOCX 页数:25 大小:311.31KB
下载 相关 举报
微分计算方法.docx_第1页
第1页 / 共25页
微分计算方法.docx_第2页
第2页 / 共25页
微分计算方法.docx_第3页
第3页 / 共25页
微分计算方法.docx_第4页
第4页 / 共25页
微分计算方法.docx_第5页
第5页 / 共25页
微分计算方法.docx_第6页
第6页 / 共25页
微分计算方法.docx_第7页
第7页 / 共25页
微分计算方法.docx_第8页
第8页 / 共25页
微分计算方法.docx_第9页
第9页 / 共25页
微分计算方法.docx_第10页
第10页 / 共25页
微分计算方法.docx_第11页
第11页 / 共25页
微分计算方法.docx_第12页
第12页 / 共25页
微分计算方法.docx_第13页
第13页 / 共25页
微分计算方法.docx_第14页
第14页 / 共25页
微分计算方法.docx_第15页
第15页 / 共25页
微分计算方法.docx_第16页
第16页 / 共25页
微分计算方法.docx_第17页
第17页 / 共25页
微分计算方法.docx_第18页
第18页 / 共25页
微分计算方法.docx_第19页
第19页 / 共25页
微分计算方法.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

微分计算方法.docx

《微分计算方法.docx》由会员分享,可在线阅读,更多相关《微分计算方法.docx(25页珍藏版)》请在冰点文库上搜索。

微分计算方法.docx

微分计算方法

实验报告

 

课程名称:

计算方法

院系:

数学科学系

专业班级:

数应1001

学号:

1031110101

学生姓名:

曹信信

指导教师:

沈林

开课时间:

2012至2013学年第一学期

 

一、学生撰写要求

按照实验课程培养方案的要求,每门实验课程中的每一个实验项目完成后,每位参加实验的学生均须在实验教师规定的时间内独立完成一份实验报告,不得抄袭,不得缺交。

学生撰写实验报告时应严格按照本实验报告规定的内容和要求填写。

字迹工整,文字简练,数据齐全,图表规范,计算正确,分析充分、具体、定量。

二、教师评阅与装订要求

1.实验报告批改要深入细致,批改过程中要发现和纠正学生实验报告中的问题,给出评语和实验报告成绩,签名并注明批改日期。

实验报告批改完成后,应采用适当的形式将学生实验报告中存在的问题及时反馈给学生。

2.实验报告成绩用百分制评定,并给出成绩评定的依据或评分标准(附于实验报告成绩登记表后)。

对迟交实验报告的学生要酌情扣分,对缺交和抄袭实验报告的学生应及时批评教育,并对该次实验报告的分数以零分处理。

对单独设课的实验课程,如学生抄袭或缺交实验报告达该课程全学期实验报告总次数三分之一以上,不得同意其参加本课程的考核。

3.各实验项目的实验报告成绩登记在实验报告成绩登记表中。

本学期实验项目全部完成后,给定实验报告综合成绩。

4.实验报告综合成绩应按课程教学大纲规定比例(一般为10-15%)计入实验课总评成绩;实验总评成绩原则上应包括考勤、实验报告、考核(操作、理论)等多方面成绩;

5.实验教师每学期负责对拟存档的学生实验报告按课程、学生收齐并装订,按如下顺序装订成册:

实验报告封面、实验报告成绩登记表、实验报告成绩评定依据、实验报告(按教学进度表规定的实验项目顺序排序)。

装订时统一靠左侧按“两钉三等分”原则装订。

 

实验名称

MATLAB基本操作

实验时间

2012年9月13日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

熟悉Matlab编程环境,理解和掌握Matlab执行命令的方式,会做一些简单函数的图像。

通过用Matlab编程解决数值分析问题,更深一步的体会计算方法这门课的重要性。

3、实验内容

(一)、Matlab操作界面

1.命令窗口(commandwindow)

2.命令历史窗口(commandhistory)

3.工作空间管理窗口(workspace)

4.当前路径窗口(currentdirectory)

(二)、具体练习

1、简单矩阵

的输入步骤。

2、画出衰减振荡曲线

及其它的包络线

的取值范围是

3、画出

所表示的三维曲面。

的取值范围是

4、复数矩阵的生成及运算.

4、实验方法、步骤

1、简单矩阵

的输入步骤。

(1)在键盘上输入下列内容

A=[2,6,3;4,7,5;3,8,9]

(2)按【Enter】键,指令被执行。

(3)在指令执行后,MATLAB指令窗中将显示结果

2、画出衰减振荡曲线

及其它的包络线

的取值范围是

t=0:

pi/50:

4*pi;

y0=exp(t/3);

y=exp(t/3).*sin(2*t);

plot(t,y,'-r',t,y0,':

b',t,-y0,':

b')

grid

3、画出

所表示的三维曲面。

的取值范围是

clear;x=-8:

0.5:

8;

y=x';

X=ones(size(y))*x;

Y=y*ones(size(x));

R=sqrt(X.^2+Y.^2)+eps;%<5>

Z=cos(R)./R;%<6>

surf(X,Y,Z);

colormap(cool)

xlabel('x'),ylabel('y'),zlabel('z')

4、复数矩阵的生成及运算

A=[5,3;2,8]-[7,8;3,9]*i

B=[1+4i,2+5i;8+3*i,4+2*i]

C=A*B

 

5、实验数据记录与分析

1、

2、

3、

4、

6、实验结论

通过本节课实验,我初步熟悉Matlab的编程环境,认识了其中的命令窗口、命令

历史窗口、工作空间管理窗口以及当前路径窗口,并学习了简单的运算操作。

在这个过程中,我掌握了用Matlab执行命令做一些简单函数的图像。

虽然是初步接触,但是我觉得自己做得还不错,下次继续努力!

指导教师评语和成绩评定

指导教师签字:

年月日

实验名称

插值算法

实验时间

2012年9月27日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WINxp操作系统、Matlab

2、实验目的

设计一个程序,通过键盘指令输入参数,可以实现Taylor插值方法、线性插值方法、抛物插值方法以及一般情形的Lagrange插值方法的程序。

使学生掌握插值算法的基本理论,并提高学生在程序设计中发现问题、分析问题和解决问题的能力。

3、实验内容

1、确定方程x3-x+4=0的实根的分布情况。

2、已知函数值x={012345678910},y={00.791.532.192.713.033.272.893.063.193.29}和边界条件s'(0)=0.8s'(10)=0.2,求三次样条插值函数的图形.

3、用牛顿迭代法求解方程组:

x1^2+x2^2=4;x1^2-x2^2=1。

4、已知:

sin0.32=0.314567,sin0.34=0.333487,sin0.36=0.352274,用抛物插值计算sin0.3367。

1、在MATLAB工作窗口输入x=-4:

0.1:

4;y=x.^3-x+4;plot(x,y)

grid,gtext('y=x^3-x+4')

2、输入xx=1:

0.1:

10;yy=spline(x,y,xx);

>>plot(x,y)

3、输入x0=1;y0=1;n=10;tol=1e-6;

x

(1)=x0;y

(1)=y0;i=1;u=[11];k

(1)=1;

while(norm(u)>tol*norm([x(i),y(i)]'))

A=2*[x(i),y(i);x(i),-y(i)];b=[4-x(i)^2-y(i)^2,1-x(i)^2+y(i)^2]';

u=A\b;

x(i+1)=x(i)+u

(1);y(i+1)=y(i)+u

(2);

i=i+1;k(i)=i;

if(i>n)error('nisfull');

end

end

[k',x',y']

4、x=[0.32;0.34;0.36];

y=[0.314567;0.333487;0.352274];

a=0.3367;

a=polyfit(x,y,2)

t=0.3367;

s=[t^2;t;1]

ans

5、实验数据记录与分析

1、

2、

3、

4、

6、实验结论

通过本次试验操作,我进一步了解了matlab的上机操作,通过键盘指令输入参数,实现Taylor插值方法、线性插值方法、抛物插值方法以及一般情形的Lagrange插值方法的程序。

在做题的过程中,不免会遇到很多问题,不过经过努力和同学们一起探讨,程序一步步都成功运行了。

课后我会多加练习,争取更熟练的掌握插值算法。

 

指导教师评语和成绩评定

 

指导教师签字:

年月日

实验名称

数值积分与数值微分

实验时间

2012年10月25日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

1.掌握复合梯形法求积分、复合辛普生法方法求积分公式的程序设计

2.掌握Romberg积分的用法。

3.掌握高斯公式的程序设计

3、实验内容

1)由

所围成的平面区域,用复合梯形法求平面区域的面积。

2)估计用辛普森公式计算定积分

的值I和递归次数n。

3)用两点高斯–勒让德积分公式计算

d

,并将计算结果与精确值进行比较,求出绝对误差。

4、实验方法、步骤

1)x=-3:

0.001:

3;F1=sin(x);F2=cos(x);

plot(x,F1,'r:

',x,F2,'b-'),axis([-1,pi/4+1,-1.5,1.5]),

xlabel('x'),ylabel('y'),

title('y=sinx,y=cosx和x=-1及x=0.5所围成的平面区域的图形')

symsx

f1=cos(x)-sin(x);f2=-f1;S1=int(f1,x,-1,pi/4);

S2=int(f2,x,pi/4,0.5);S=S1+S2,Sjg=double(S)

2)symsx

L=inline('exp(sin(x))');

[QS,FCNTS]=quad(L,-pi/4,pi/4,1.e-4,2)

3)x1=-1/sqrt(3);x2=1/sqrt(3);y1=2/(3+x1);y2=2/(3+x2);

G=y1+y2

symsx

f=int(2/(3+x),x,-1,1);

Fjg=double(fi)

Gjq=double(abs(fi-G2))

 

5、实验数据记录与分析

1)S=sin

(1)-cos(1/2)-cos

(1)-sin(1/2)+2*2^(1/2)

Sjg=1.7726

 

2)[QS,FCNTS]=quad(L,-pi/4,pi/4,1.e-4,2)

9-0.78539816344.26596866e-010.2506021480

11-0.35880129707.17602594e-010.7327015293

130.35880129704.26596866e-010.7339475547

QS=1.7173

FCNTS=13

3)G=1.3846Fjg=0.4055Gjq=5.9703e-05

6、实验结论

本节实验我学会了利用复合梯形法、复合辛普生法方法求积分,在学习的时候简单地进行了程序设计,锻炼了求积分的快捷方法,也学习了更深刻的定理公式。

此外,我们还学习了Romberg积分的用法,练习了高斯公式的程序设计,在以前的基础上进步许多,但是问题也暴露不少,例如一些函数的用法,特殊函数的名称等,在这些方面需要进一步提升。

指导教师评语和成绩评定

 

指导教师签字:

年月日

实验名称

常微分方程差分方法

实验时间

2012年11月8日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

1.编写程序实现Euler求解方法及改进Euler求解方法

2.掌握龙格-库塔方法的用法

3.掌握方程组和高阶方程的程序实现

3、实验内容

1)用向后欧拉公式求解区间

上的初值问题

2)判断下列线性方程组解的情况,并求出该解。

4、实验方法、步骤

1)编写程序

function[X,Y,n,P]=Heuler1(funfcn,x0,b,y0,h,tol)

n=fix((b-x0)/h);X=zeros(n+1,1);Y=zeros(n+1,1);

k=1;X(k)=x0;Y(k,:

)=y0;Y1(k,:

)=y0;

clc,x0,h,y0

fori=2:

n+1

X(i)=x0+h;Y(i,:

)=y0+h*feval(funfcn,x0,y0);

Y1(i,:

)=y0+h*feval(funfcn,X(i),Y(i,:

));

Wu=abs(Y1(i,:

)-Y(i,:

));

whileWu>tol

p=Y1(i,:

);

Y1(i,:

)=y0+h*feval(funfcn,X(i),p);

Y(i,:

)=p;

end

x0=x0+h;y0=Y1(i,:

);

Y(i,:

)=y0;plot(X,Y,'ro')

gridon

xlabel('自变量X'),ylabel('因变量Y')

title('用向后欧拉公式计算dy/dx=f(x,y),y(x0)=y0在[x0,b]上的数值解')

end

X=X(1:

n+1);Y=Y(1:

n+1,:

);n=1:

n+1;P=[n',X,Y]

输入

>>S1=dsolve('Dy=8*x-3*y-7','y(0)=1','x')

>>x0=0;y0=1;

b=2;tol=1.e-1;

subplot(2,1,1)

h1=0.01;

[X1,Y1,n,P1]=Heuler1(@funfcn,x0,b,y0,h1,tol)

holdon

S2=8/3*X1-29/9+38/9*exp(-3*X1),plot(X1,S2,'b-')

legend('h=0.01用向后欧拉公式计算dy/dx=8x-3y-7,y(0)=1在[0,2]上的数值解')

holdoff

2)编写程序

function[RA,RB,n]=jiepb(A,b)

B=[Ab];n=length(b);RA=rank(A);

RB=rank(B);cha=RB-RA;

ifcha>0,

disp('RA~=RB,方程组无解')

return

end

ifRA==RB

ifRA==n

disp('RA=RB=n,方程组有唯一解')

else

disp('RA=RB

end

end

输入

A=[25-15;312-7;41-36;3-24-7];

b=[0;2;0;1];

[RA,RB,n]=jiepb(A,b)

X=A\b

 

5、实验数据记录与分析

1)x0=

0

h=

.010*********

y0=

1

2)RA=RB=n,方程组有唯一解

RA=4

RB=4

n=4

X=0.1647

0.1511

-0.2733

-0.2716

 

6、实验结论

本次实验重点学习了求解常微分方程的差分方法,在求解过程中用到了Euler

求解方法及改进的Euler求解方法,并且可以用两个方法求解比较不同之处,看到改进后的明显效果。

同时,我们还学习了龙格-库塔方法的用法及解方程组和高阶方程的程序实现,通过编写、运行程序自己动手操作熟练掌握matlab解方程的应用。

 

指导教师评语和成绩评定

 

指导教师签字:

年月日

实验名称

方程求根的迭代法

实验时间

2012年11月29日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

1.掌握二分法与牛顿法的基本原理及应用

2.掌握牛顿法、弦截法的程序设计并用具体例子加以实现

3、实验内容

1)确定方程

的实根的分布情况,画出函数在开区间(-4,4)内的分布情况。

2)求x5-2x+3=0在0.5附近的根,精确到4位小数.

4、实验方法、步骤

1)x=-4:

0.1:

4;

y=x.^2-2*x;plot(x,y)

grid,gtext('y=x^2-2x');

2)编写程序function[k,piancha,xdpiancha,xk,yk]=diedai2(x0,tol,ddmax)

x

(1)=x0;

fori=1:

ddmax

x(i+1)=fun(x(i));piancha=abs(x(i+1)-x(i));

xdpiancha=piancha/(abs(x(i+1))+eps);i=i+1;

xk=x(i);yk=fun(x(i));[(i-1)pianchaxdpianchaxkyk]

if(piancha

k=i-1;xk=x(i);

return;

end

end

ifi>ddmax

disp('迭代次数超过给定的最大值ddmax')

k=i-1;xk=x(i);yk=fun(x(i));

[(i-1)pianchaxdpianchaxkyk];

return;

end

P=[(i-1),piancha,xdpiancha,xk,yk]';

输入

[k,piancha,xdpiancha,xk,yk]=diedai2(0.5,1e-4,15)

5、实验数据记录与分析

1)

 

2)ans=

1.00000.75000.60001.25004.0625

ans=

2.00002.81250.69234.062524.6289

ans=

3.000020.56640.835124.6289655.8408

ans=

1.0e+005*

0.00000.00630.00000.00664.3144

ans=

1.0e+011*

0.00000.00000.00000.00001.8614

ans=

1.0e+022*

0.00000.00000.00000.00003.4648

ans=

1.0e+045*

0.00000.00000.00000.00001.2005

ans=

1.0e+090*

0.00000.00000.00000.00001.4412

ans=

1.0e+180*

0.00000.00000.00000.00002.0771

ans=

1.0e+180*

0.00002.07710.00002.0771Inf

ans=

11InfNaNInfInf

ans=

12NaNNaNInfInf

ans=

13NaNNaNInfInf

ans=

14NaNNaNInfInf

ans=

15NaNNaNInfInf

迭代次数超过给定的最大值ddmax

k=

15

piancha=

NaN

xdpiancha=

NaN

xk=

Inf

yk=

Inf

6、实验结论

本次实验我先学习了二分法与牛顿法的基本原理,了解其原理后,应用此原理解决微分方程,并且大大提高了其精度;学习了牛顿法、弦截法的程序设计后应用到实际例子中去,在做题中锻炼应用牛顿法的能力,加强了对该公式的熟练运用,记忆起来更为方便。

由于课后练习试验次数不多,做起来有点生疏,需要多加练习,熟练掌握。

 

指导教师评语和成绩评定

 

指导教师签字:

年月日

实验名称

线性方程组的迭代法

实验时间

2012年12月13日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

设计程序实现雅可比迭代法,高斯-赛德尔迭代法等算法。

掌握方程求根的基本理论。

并用实例在计算机上计算。

3、实验内容

(1)用判别雅可比迭代收敛性的MATLAB主程序,判别由下列方程组的雅可比迭代产生的序列是否收敛?

(2)用高斯-塞德尔迭代定义的MATLAB主程序解下列线性方程组,取初始值

,要求当

时,迭代终止。

4、实验方法、步骤

(1)A=[9-1-2;-110-2;-1-11.5];a=jspb(A)

(2)编写程序functionX=gsdddy(A,b,X0,P,wucha,max1)

D=diag(diag(A));U=-triu(A,1);L=-tril(A,-1);dD=det(D);

ifdD==0

disp('对角矩阵D奇异,此方程组无解.')

else

disp('对角矩阵D非奇异,方程组有解.')

iD=inv(D-L);B2=iD*U;f2=iD*b;jX=A\b;X=X0;

[nm]=size(A);

fork=1:

max1

X1=B2*X+f2;djwcX=norm(X1-X,P);

xdwcX=djwcX/(norm(X,P)+eps);

if(djwcX

return

else

k,X1',k=k+1;X=X1;

end

end

if(djwcX

disp('高斯-塞德尔迭代收敛,分解矩阵D,U,L和方程组的精确解jX和近似解X如下:

')

else

disp('高斯-塞德尔迭代的结果没有达到给定精度,且迭代次数已超过max1,精确解jX和迭代向量X如下:

')

X=X';jX=jX'

end

end

X=X';D,U,L,jX=jX'

运行结果

A=[813;692;145];b=[6;8;4];

X0=[000]';

X=gsdddy(A,b,X0,inf,0.1,10)

5、实验数据记录与分析

(1)系数矩阵A不严格对角占优,此雅可比迭代不一定收敛

a=

-7.0000-8.00002.5000

(2)对角矩阵D非奇异,方程组有解.

k=

1

ans=

0.75000.38890.3389

k=

2

ans=

0.57430.43070.3406

X=

0.5743

0.4307

0.3406

6、实验结论

学习雅可比迭代法和高斯-赛德尔迭代法求根公式后,我们主要运用这两种求根公式对方程组进行简便求根。

掌握了方程求根的基本理论并用实例在计算机上设计程序实现课本上的求根办法,通过程序的设计实现了更精确的求解,虽然没有达到精确解,不过精确度比以往有很大的提高。

 

指导教师评语和成绩评定

 

指导教师签字:

年月日

实验名称

线性方程组的直接法

实验时间

2012年12月20日

学生姓名

曹信信

实验地点

9#405数学实验室

1、实验所用软件

WIN7操作系统、Matlab

2、实验目的

1.熟悉Gauss列主元消去法,编出实用程序。

2.认识选主元技术的重要性。

4.编制程序,用Gauss列主元消去法求解线性方程组

5.编制程序,用平方根法求解线性方程组三角方程组

3、实验内容

(1)用高斯消元法和MATLAB程序求解下面的非齐次线性方程组,并且用逆矩阵解方程组的方法验证.

(2)用列主元消元法解线性方程组的MATLAB程序解方程组

4、实验方法、步骤

(1)编写程序function[RA,RB,n,X]=gaus(A,b)

B=[Ab];n=length(b);RA=rank(A);RB=rank(B);zhica=RB-RA;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 行政公文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2