如何写数学实验报告

时间:2024.4.7

数学实验报告

写实验报告是整理和表达思想的一个机会。可以根据教师指定的问题一一回答,也可以围绕实验内容,自己确定一个题目,选择一系列感兴趣的问题层层深入地进行讨论。实验报告的行文力求既简洁又具有可读性,教师依据学生对问题研究的深度给出成绩。

报告的主体大致包括五个方面 (不一定非得如此):

1.实验题目

2.实验目的:简要描述所要研究的问题,它背景和意义,本实验要达到的目的。

3.实验内容和方法:说明你是怎样安排你的实验, 并解释这样做的理由。

4. 实验结果和分析: 保留那些能充分说明问题的数据,必要的地方加上表格或图示,对数据进行分析、讨论, 说明发现了怎样的规律等。

5.数学分析  如有可能,应当用分析或理论的方法支持你的实验结果。

  下面实一个实例:

数学实验报告(一)

一、实验题目:圆周率π的计算

二、实验目的:学习使用各种方法来计算π,并且通过实验加深对MATLAB编程思想的了解;学会利用数学工具解决实际问题。

三、实验内容和方法:

1.数值积分法

定积分   ,计算出这个积分的数值,也就得出了π的值。计算这个积分的方法主要有以下两种:

1.  1梯形公式:

设分点x1,x2,…x(n-1)将积分区间[a,b]分成n等分,即xi=a+i

 (b-a)/n,0<=I<=n。所有的曲边梯形的宽度都是h=(b-a)/n。记yi=

f(xi).则第i个曲边梯形的面积Si近似地等于梯形面积,即:

Si=(y_(i-1)+yi)h/2。

将所有这些梯形面积加起来就得到:

S≈(b-a)[y1+y2+…+y_(n-1)+(y0+yn)/2]/n

这就是梯形公式。下面用MATLAB计算当n=1000时的S:

 

①pi_TX= 

1.  2辛普森公式:

仍用分点Xi=a+i(b-a)/n(1<=i<=n-1)将区间[a,b]分成n等分,直线x=xi(1<=i<=n-1)将曲边梯形分成n个小曲边梯形。再作每个小区间[x(i-1),xi]的中点x_(i-1/2)=a+(i-1/2)(b-a)/n。将第I个小曲边梯形的上边界y=f(x)(x_(i-1/2)<=x<=xi)近似看作经过三点(x,f(x))

(x=x_(i-1),x_(i-1/2),xi)的抛物线段,则可求得:

Si≈(b-a)/(6n)*(y_(i-1)+4y_(i-1/2)+yi)

其中,y_(i-1/2)=f(x_(i-1/2))。于是得到:

S≈(b-a)/(6n)*[(y0+yn)+2(y1+y2+…+y_(n-1))

                   +4(y_1/2+y_3/2+…+y_(n-1/2))]

这就是辛普森公式。下面用MATLAB计算当n=1000时的S:

②pi_SPS=

2.泰勒级数法

利用反正切函数的泰勒级数有:

Pi/4=arctan(1)=1-1/3+1/5-…

但是这个级数无穷序列收敛太慢,不实用。要使泰勒级数收敛快,|x|

应当比1小,最好是远比1小。我们有Maqin公式:

          π=16arctan(1/5)-4arctan(1/239)

利用ractan(x)的泰勒展开式求出arctan(1/5),arctan(1/239)的近似值,就可以由Maqin公式求出Pi的近似值了。

泰勒级数是无穷级数,实际计算时必然只能取它的前n项,这就必然会产生截断误差

En=|arctan(x)-(x-x^3/3+…+(-1)^(n-1)*x^(2n-1)/(2n-1))|当|x|<1时,可以简单地用En<x^(2n+1)/(2n+1)来估计截断误差。下面取展开式的前1000项,用MATLAB计算π:

③pi_Maqin=

3.蒙特卡罗法

单位圆的面积等于Pi。可以用数值积分公式来计算这个面积的近似值。另一个方法是用蒙特卡罗法,即用随机投点的方法来求这个面积π的近似值:任意产生区间[0,1]内的一组随机数x,y,则(x,y)就代表一个随机点P的坐标。这个点落在单位扇形内的充分必要条件是    。取n=100000个点,计算Pi:

④pi_MonteCarlo=

求π的方法还有多种多样,如蒲丰投针法、随机整数互素法、蒙特卡罗求体积法等等,但这些方法求出的值和真实值之间的偏差很大,就不在此分析了。

四、误差分析:

①pi_TX:

E_TX=|-Pi|/Pi

    =

②pi_SPS:

E_SPS=|-Pi|/Pi

     =

③pi_Maqin:

E_Maqin=|-Pi|/Pi

       =0.

④pi_MonteCarlo:

E_MonteCarlo=(-Pi)/Pi

            =

可见,在以上n的取值条件下,Maqin公式法所求出的π误差最小,辛普森公式求出的误差次之,而蒙特卡罗法的误差使最大的。

注:MATLAB程序可以写在正文,也可列于文后。

                                             —完—

                               

数学实验报告(二)

——经济增长模型

实验目的

    1  了解最小二乘法的原理

2  学会用MATLAB软件所提供的函数解决实际问题

实验内容

增加生产、发展经济所依靠的主要因素有增加投资、增加劳动力以及技术革新等,在研究国民经济产值与这些因素的数量关系时,由于技术水平不像资金、劳动力那样容易定量化,作为初步的模型,可认为技术水平不变,只讨论产值和资金、劳动力之间的关系。在科学发展不快时,如资本主义经济发展的前期,这种模型是有意义的。

用Q,K,L分别表示产值、资金、劳动力,要寻求数量关系Q(K,L)。经过简化假设与分析,在经济学中,推导出一个著名的Cobb-Douglas生产函数:

Q(K,L)=aKαLβ,    0<α,β<1                                    (*)

式中α,β,a要由经济统计数据确定。

现有美国马萨诸塞州1900—1926年上述三个经济指数的统计数据,如表1,试用数据拟合的方法,求出(*)式中的参数α,β,a。

表 1

第一种方法:

由于产值Q、资金K、劳动力L之间满足著名的Cobb-Douglas生产函数关系:

Q(K,L)=aKαLβ,    0<α,β<1 

我们可以用MATLAB软件中的curvefit()程序来作数据拟合,即寻求函数Q(K,L)中的未知参数a,α,β,使这个函数尽量逼近表1所给出的统计数据。

现在我们就根据curvefit()函数编以下程序

程序文件a1.m 如下

a=[1.05 1.18 1.29 1.30 1.30 1.42 1.50 1.52 1.46 1.60 1.69 1.81 1.93 1.95 2.01 2.00 2.09 1.96 2.20 2.12 2.16 2.08 2.24 2.56 2.34 2.45 2.58];

y=[1.04 1.06 1.16 1.22 1.27 1.37 1.44 1.53 1.57 2.05 2.51 2.63 2.74 2.82 3.24 3.24 3.61 4.10 4.36 4.77 4.75 4.54 4.54 4.58 4.58 4.58 4.54;1.05 1.08 1.18 1.22 1.17 1.30 1.39 1.47 1.31 1.43 1.58 1.59 1.66 1.68 1.65 1.62 1.86 1.93 1.96 1.95 1.90 1.58 1.67 1.82 1.60 1.61 1.64];

x0=[0.1,0.1,0.2];

x=curvefit('curvefun',x0, y,a)

    其中的函数M——文件curvefun.m如下

function a=curvefun( x, y)

a=x(1)*(y(1,:).^x(2)).*(y(2,:).^x(3));

运行a1.m可得以下结果

x=

1.2246    0.4612   -0.1277                                                                                                                                                                                                                                                                                  

则可以得到

a=1.2246              b=0.4612                c=-0.1277

于是公式变为

Q(K,L)= 1.2246K0.4612L-0.1277

这就是产值Q随资金K、劳动力L的变化规律。

如果想得到更直观的关系也可以画出他们之间的关系图形。

在a1.m中加如下命令

m=linspace(0,2.7,27);n=linspace(0,2.7,27);

[M,N]=meshgrid(m,n);

a=x(1)*(M.^x(2)).*(N.^x(3));

surf(M,N,a);

xlabel('K'),ylabel('L'),zlabel('Q')

则可以得到图1所示的图形,其中z轴表示产值Q。

图1

我们知道以上用的MATLAB的convefit() 函数,可以根据需要创建各自的函数去逼近已知数据。而不象函数polyfit() 是用多项式去逼近已知数据。但是用convefit()必须先确定函数的形式,然后再确定参数。所以有一个确定函数的过程,本题由于在经济学上已经知道产值Q、资金K、劳动力L之间满足著名的Cobb-Douglas生产函数关系,因此就省略了机理分析确定函数形式的这个过程。若实际问题的机理不清楚,或太复杂,就需要我们自己去假设,去大致确定。用polyfit()就没有以上麻烦的步骤(因为他有确定的形式,只需要确定未知参数)。但正因为这样简单,决定了他解决问题的粗躁性。但有一点可以知道,convefit()函数可以解决polyfit()函数所能解决的问题。

第二种方法:

由于产值Q、资金K、劳动力L之间有关系

Q(K,L)=aKαLβ

注意到该等式两边取对数后,lnQ是lnK和lnL的线性函数,即

lnQ=lna+αlnK+βlnL;

于是,可用线性函数拟合的方法确定未知参数x=[lna α β]。

建立M文件:

Q=[1.05 1.18 1.29 1.30 1.30 1.42 1.50 1.52 1.46 1.60 1.69 1.81 1.93 1.95 2.01 2.00 2.09 1.96 2.20 2.12 2.16 2.08 2.24 2.56 2.34 2.45 2.58];

O=log([1.04 1.06 1.16 1.22 1.27 1.37 1.44 1.53 1.57 2.05 2.51 2.63 2.74 2.82 3.24 3.24 3.61 4.10 4.36 4.77 4.75 4.54 4.54 4.58 4.58 4.58 4.54;...

      1.05 1.08 1.18 1.22 1.17 1.30 1.39 1.47 1.31 1.43 1.58 1.59 1.66 1.68 1.65 1.62 1.86 1.93 1.96 1.95 1.90 1.58 1.67 1.82 1.60 1.61 1.64]);

x0=[0.1,0.1,0.2];

x=leastsq('funleast',x0,[],[],O,log(Q));

a=exp(x(1)),

alfa=x(2),

beda=x(3),

得出:a=1.1766, α=0.4153, β=0.0619.

两种方法的比较

由于两种方法作出的结果不同,我们可以用拟合出来的函数与以给数据点的最小平方误差来评判两结果的优劣。在程序a1.m后面增加几条语句

f1=curvefun(x,y);

e1=sum((a-f1).*(a-f1))

x2=[1.1766,0.4153,0.0619];

f2=curvefun(x2,y)

e2=sum((a-f2).*(a-f2))

输出e1=0.4230,e2=0.4456。可见第一种方法得出的结果好一些。即我们应采用关系式

Q(K,L)=1.2246K0.4612L-0.1277

作为产值Q随资金K、劳动力L的变化规律。


第二篇:数学实验报告 (2)


数学实验报告三

实验项目名称    MATLAB基础    

所属课程名称    数学实验         

实 验 日 期     20##-9-21          

名(学号)周星(2010190135

                           

数学与计算科学学院数学实验室

一、   实验目的

1.  掌握建立和执行M文件方法;

2.  熟悉利用向量运算来代替循环操作的方法;

3.  掌握利用if,for等结构进行程序设计

4.  掌握定义和调用MATLAB函数的方法。

二、   实验环境(使用软件)

MATLAB V6.5

三、   实验内容

1.       请分别用for结构和while结构设计一段程序,计算40!

解:>> s=1;

>> for n=1:40

s=s*n;

end

>> s

s =

  8.1592e+047

>> clear;s=1;n=1;

>> while n<=40

s=s*n;

n=n+1;

end

>> s

s =

  8.1592e+047

2.       产生20个[0,100]间随机数(整数),输出其中小于平均值的偶数。;

解: >> clear;

>> r=randint(1,20,[0,100]);

>> mr=mean(r);

>> k=1;

>> for i=1:20

if(mod(r(i),2)==0)&(r(i)<mr)

outr(k)=r(i);

k=k+1;

end

end

>> outr

outr =

    46    44    62    40

3.       已知,编写函数function。

解:function s=f(m)

s=0;

for n=0:m

    s=s+2^n;

end

4.       当n为100时,分别求下列各式的值(要求:使用点运算、sum求和、prod累乘)

(1)      

解:>> A=[1:100];

>> s=1./(4.^A);

>> t=sum(s)

t =

    0.3333

(2)      

解:>> clear;

>> A=[1:100];

>> s=((2.*A).*(2.*A))./(2.*A-1)./(2.*A+1);

>> t=prod(s);

>> t

t =

   1.5669

5.       设,,x为[-2,2]内10个数值的等差数组,用点运算等计算数列y1+y2,y1y2,y3/y1,

解:(1)>>  A=linspace(-2,2,10);

>> y1=1./(1+A.^2);

>> y2=exp(-A.^2./2);

>> B=y1+y2;

>> B

B =

    0.3353    0.5907    0.9869    1.4930    1.9286    1.9286    1.4930    0.9869    0.5907    0.3353

(2) >> C=y1.*y2;

>> C

C =

    0.0271    0.0872    0.2414    0.5544    0.9297    0.9297    0.5544    0.2414    0.0872    0.0271

(3) >> y3=sin(2.*A);

>> D=y3./y1;

>> D

D =

    3.7840   -0.1042   -1.7770   -1.4039   -0.4512    0.4512    1.4039    1.7770    0.1042   -3.7840

(4) >> y4=sqrt(4-A.^2);

>> E=(5*y4-y1)./(y2.^2);

>> E

E =

   -10.9196   67.3795   27.0390   13.6245    9.4400    9.4400   13.6245   27.0390   67.3795  -10.9196

6.(选做题)设,求,要求用阶梯法,将区间分为n等分计算(例如n=1000)。(要求:使用点运算、sum求和)

解:>> clear;

>> h=3*pi/1000;

>> A=[0:999];

>> s=exp(-0.5*h.*A).*sin(h.*A+pi/6)*h;

>> t=sum(s);

>> t

t =

    0.9032

更多相关推荐:
数学实验报告

西安交通大学数学实验报告高等数学实验报告MATLAB实验操作报告同组人髙加西20xx年04月10日电气工程学院电气工程与自动化专业电气12崔彧菲西安交通大学数学实验报告实验一非线性方程组求解一实验目的1熟悉MA...

数学实验实验报告

数学实验实验报告20xx20xx学年第1学期学生姓名学号院部数理学院专业班级任课教师实验报告1实验目的熟悉Mathematica软件包的使用实验内容1用两种方式编写如下自定义函数并求其导数fx在x20x10x5...

数学实验实验报告六答案

实验六实验项目名称优化实验时间20xx52620xx6220xx69实验地点理学实验楼525实验目的1掌握Matlab优化工具箱的基本用法利用优化工具包解线性规划和非线性规划的问题对不同算法作初步分析比较2练习...

数学实验实验报告模板

天水师范学院数学与统计学院实验报告实验项目名称所属课程名称实验类型线性代数实验实验日期班级学号姓名成绩12附录1源程序附录2实验报告填写说明1实验项目名称要求与实验教学大纲一致2实验目的目的要明确要抓住重点符合...

数学实验实验报告

数学与计算科学学院实验报告实验项目名称油价与船速的优化问题所属课程名称数学实验实验类型综合实验日期20xx922班级学号姓名成绩123附录2实验报告填写说明1实验项目名称要求与实验教学大纲一致2实验目的目的要明...

数学实验报告格式

《数学实验》实验报告(20##年03月30日)

《数学实验》实验报告

数学实验实验报告20xx年4月8日一实验问题1指派问题考虑指定n个人完成n项任务每人单独承担一项任务使所需的总完成时间成本尽可能短已知某指派问题的有关数据每人完成各任务所需的时间如下表所示试建模并求解该指派问题...

数学实验报告1

重庆大学学生实验报告实验课程名称数学实验开课实验室DS1402学院联合学院年级20xx专业班电气工程学生姓名赖一多学号20xx6397开课时间学年第数学与统计学院制开课学院实验室实验时间年月日备注1同一章的实验...

数学实验报告

数学实验报告20xx年12月16日西安交通大学数学实验报告数学实验报告题目一实验目的1练习使用matlab软件2掌握使用循环语句判断语句等编写程序3掌握绘图的方法4能用matlab编写程序解决实际数学问题二实验...

数学实验报告

数学实验报告数学实验报告实验序号日期20xx年11月1日数学实验报告数学实验报告数学实验报告数学实验报告数学实验报告

数学实验试验报告

路灯问题数学实验实验报告一问题重述在一条20m宽的道路两侧分别安装了一只2kw和一只3kw的路灯它们离地面的高度分别为5m和6m在漆黑的夜晚当两只路灯开启时两只路灯连线的路面上最暗的点和最亮的点在哪里如果3kw...

数学实验报告

数学实验报告数学实验121数学实验报告报告实验目录一第二次实验错误未定义书签1车间加工零件错误未定义书签2证券投资53投资利润最大化74股票投资8二第三次实验101编程计算102蒙特卡洛法近似计算113蒙特卡洛...

数学实验实验报告(35篇)