mathematica数学实验报告 实验二

合集下载

13级数学(3)班,高继红,201370010307

13级数学(3)班,高继红,201370010307

数学实验报告二题目:利用Mathematica计算圆周率π的值学院:数学与统计学院专业:数学与应用数学班级: 2013级数学三班学生姓名:高继红学号: 201370010307指导教师:张贵仓数学实验报告(二)一.实验题目:圆周率π的计算二.实验目的:1.用多种方法计算圆周率错误!未找到引用源。

的值;2.通过实验来说明各种方法的优劣;三.实验环境:在Windows 环境,利用Mathematica7.0这个数学软件四.实验内容1.运用数值积分法来近似计算π的值;2.运用泰勒级数来近似计算π的值;3.利用蒙特卡洛(Monte Carlo )法来近似计算π的值。

五.实验方法1.数值积分法 利用公式⎰+=102114dx x π设分点x 1,x 2,…x n-1将积分区间[0,1]分成n 等分。

所有的曲边梯形的宽度都是h=1/n 。

记yi=f(xi).则第i 个曲边梯形的面积A 近似地等于梯形面积,即:A=(y(i-1)+yi)h/2。

将所有这些梯形面积加起来就得到:A ≈2/n[2(y 1+y 2+…y n-1)+y 0+y n ]利用Mathematica 编程计算上式:n=5000;Y[x]:=4/(1+x*x);s1=(sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;s2=(y[0]+y[1]+2*sum[y[k/n],{k,1,n-1}]+4*sum[y[(k-1/2)/n],{k,1,n}])/(6*n);Print[{N[s1,20],N[s2,30],N[Pi,30]}]实验结果:{0.00020000000000000000000 (sum[y[0.00020000000000000000000 k], {k,1.0000000000000000000,4999.0000000000000000}]+0.50000000000000000000 (y[0]+y[1.0000000000000000000])),0.0000333333333333333333333333333333(4.00000000000000000000000000000 sum[y[0.000200000000000000000000000000000(-0.500000000000000000000000000000+k)],{k,1.00000000000000000000000000000,5000.00000000000000000000000000}]+2.00000000000000000000000000000sum[y[0.000200000000000000000000000000000 k],{k,1.00000000000000000000000000000,4999.00000000000000000000000000}]+y[0]+y[1.00000000000000000000000000000]),3.14159265358979323846264338328}以上s1,s2分别是用梯形公式和辛普森公式计算出的 ,最后一句中的N[s1,20]表示s1的前20位准确有效数字组成的近似值,N[Pi,30]是 的前 位有效数字组成的近似值。

mathematica数学实验报告

mathematica数学实验报告

mathematica数学实验报告本次实验使用Mathematica进行数学建模实验,主要包括以下内容:三角函数、极限和导数、积分和微分方程。

一、三角函数1. 三角函数的绘制使用Mathematica的Plot函数绘制正弦函数和余弦函数的图像。

代码:Plot[{Sin[x], Cos[x]}, {x, -2 Pi, 2 Pi},PlotStyle -> {Blue, Red}, PlotTheme -> "Web"]结果:![trigonometric_functions.png](2. 求三角函数的值使用Mathematica的N函数计算正弦函数和余弦函数在不同角度下的取值。

代码:N[Sin[Pi/6]]N[Cos[Pi/6]]N[Sin[Pi]]N[Cos[Pi]]结果:0.50.8660251.22465*10^-16-1.二、极限和导数1. 求函数的极限使用Mathematica的Limit函数计算函数x^2/(4-x)在x趋近于4时的极限。

代码:Limit[x^2/(4 - x), x -> 4]结果:82. 求函数的导数使用Mathematica的D函数计算函数x^3 - 3x的导数。

代码:D[x^3 - 3x, x]结果:3 x^2 - 3三、积分和微分方程1. 求定积分使用Mathematica的Integrate函数计算函数e^x * cos(x)在0到π/2之间的定积分。

代码:Integrate[E^x * Cos[x], {x, 0, Pi/2}]结果:1/2 (1 + E^(π/2))2. 解微分方程使用Mathematica的DSolve函数求解微分方程y''(x) + 4y(x) = 0。

代码:DSolve[y''[x] + 4 y[x] == 0, y[x], x]结果:y[x] -> C[1] Cos[2 x] + C[2] Sin[2 x]本次实验使用Mathematica进行数学建模实验,主要包括三角函数的绘制、求三角函数的值,函数的极限、导数,积分和微分方程等内容。

高数实验报告 (2)

高数实验报告 (2)

数学实验报告学号: , 姓名: , 得分:实验1实验内容:通过作图,观察重要极限:lim (1+1/n)n=e.实验目的:1.通过编写小程序,学会应用mathmatica软件的基本功能。

2.学会掌握用mathmatica的图形观察极限。

计算公式:data=Table[(1+1/i)^i,{i,300}];ListPlot[data,PlotRange {0, },PlotStyle PointSize[0.0018]]程序运行结果:结果的讨论与分析:当i设定在不同值的时候,图形的长度在变化,当总体趋势没有变化,总是取向e。

实验2实验内容:设数列{Xn}由下列递推关系式给出:x1=1/2,xn+1=xn2+xn(n=1,2………)观察数列1/(x1+1)+ 1/(x2+1) +…….+1/(xn+1)的极限。

实验目的和意义:1:掌握mathmatica数学实验的基本用法。

2:学会利用mathmatica 编程求数列极限。

3:了解函数与数列的关系。

计算公式:f[x_]:=x^2+x;xn=0.5;g[x_,y_]:=y+1/(1+x);y n=0;For[n=1,n 15,n++,xN=xn;yN=yn;xn=N[f[x N]];yn=N[g[xN,yN]]];Print[" y30=",yn]程序运行结果:y30= 2.结果与讨论:这个实验,当yn中n趋向无穷大的时候,能够更加接近极限,当取30以上时候,2就是极限值。

实验3实验内容:已知函数:f(x)=1/(x2+2x+c)(-5<=x<=4),作出并比较当c 取不同的值的时候(-1,0,1,2,3),并从图上观察出极值点,驻点,单调区间,凹凸区间和渐进线。

实验目的:1.通过实验掌握如何用mathmatica作图。

2.学会观察图像来求函数的相关数据。

计算公式:f[x_]=1/(x2+2 x+(-1))Plot[f[x],{x,-5,4},GridLines Automatic,Frame True,PlotStyle RGBColor[1,0,0]]f[x_]=1/(x2+2 x+(0))Plot[f[x],{x,-5,4},GridLines→Automatic,Frame→True,PlotStyle→RGBColor[1,0,0]]f[x_]=1/(x2+2 x+(2))Plot[f[x],{x,-5,4},GridLines→Automatic,Frame→True,PlotStyle→RGBColor[1,0,0]]f[x_]=1/(x2+2 x+(3))Plot[f[x],{x,-5,4},GridLines→Automatic,Frame→True,PlotStyle→RGBColor[1,0,0]]f[x_]=1/(x2+2 x+(3))Plot[f[x],{x,-5,4},GridLines→Automatic,Frame→True,PlotStyle→RGBColor[1,0,0]]程序运行结果:结果的讨论与分析:不同的c,函数的形态有较大的不同,也就是原方程=0什么情况下有解的问题,根据图像很容易的得到驻点,拐点,等相关信息。

数学实验报告2-圆周率的计算-mathematica

数学实验报告2-圆周率的计算-mathematica

数学实验报告实验序号: 2 日期: 2016年月日实验结果报告及实验总结:一、数值积分法计算π因为单位圆的半径为1,它的面积等于π,所以只要计算出单位圆的面积,就算出了π。

在坐标轴上画出以圆点为圆心,以1为半径的单位圆,则这个单位圆在第一象限的部分是一个扇形,而且面积是单位圆的1/4,于是,我们只要算出此扇形的面积,便可以计算出π。

而且单位的精度可能会影响计算的结果,下面将给出不同的n计算所得结果并讨论差异。

1.当n=1000时命令:n=1000;y[x_]:=4/(1+x*x);s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/( 6*n);Print[{N[s1,20],N[s2,30],N[Pi,30]}];结果如下:2.当n=5000时命令:n=5000;y[x_]:=4/(1+x*x);s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}]) /(6*n);Print[{N[s1,20],N[s2,30],N[Pi,30]}];运行结果:3.当n=10000时命令:n=10000;y[x_]:=4/(1+x*x);s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/( 6*n);Print[{N[s1,20],N[s2,30],N[Pi,30]}];Plot[{4(1-x*x)},{x,0,1}]运行结果:4. 结果分析:当数值积分法得到 的近似值为3.8,可以看出,用这种方法计算所得到的 值是相当精确的,n 越大,计算出来的扇形面积的近似值就越接近 的准确值。

mathematica实验报告

mathematica实验报告

mathematica实验报告《使用Mathematica进行实验报告:探索数学的奥秘》Mathematica是一款强大的数学软件,它不仅可以进行数学计算和图形绘制,还可以进行数据分析和模拟实验。

在本实验报告中,我们将使用Mathematica来探索数学的奥秘,展示其强大的功能和应用。

首先,我们将使用Mathematica进行数学计算。

通过输入数学表达式和方程式,我们可以快速地进行数值计算和符号运算。

Mathematica还提供了丰富的数学函数和算法,可以帮助我们解决复杂的数学问题,如微积分、线性代数和离散数学等。

其次,我们将利用Mathematica进行图形绘制。

通过输入函数表达式和参数设置,我们可以绘制出各种数学图形,如函数图像、曲线图和三维图形等。

Mathematica还提供了丰富的绘图工具和选项,可以帮助我们定制和美化图形,使其更加直观和具有艺术感。

接下来,我们将利用Mathematica进行数据分析。

通过输入数据集和统计方法,我们可以进行数据的可视化和分析,帮助我们发现数据的规律和趋势。

Mathematica还提供了丰富的数据处理和建模工具,可以帮助我们进行数据挖掘和预测分析,为决策和规划提供有力的支持。

最后,我们将利用Mathematica进行模拟实验。

通过输入模型和参数设置,我们可以进行各种科学和工程问题的模拟实验,帮助我们理解和预测实际现象。

Mathematica还提供了丰富的模拟工具和仿真方法,可以帮助我们进行虚拟实验和验证假设,为科学研究和工程设计提供有力的工具支持。

总之,Mathematica是一款强大的数学软件,它可以帮助我们探索数学的奥秘,解决数学问题,展示数学图形,分析数学数据,进行数学模拟实验,为科学研究和工程应用提供有力的支持。

希望本实验报告可以激发更多人对数学和科学的兴趣,让我们一起来探索数学的奥秘吧!。

mathematica实验报告

mathematica实验报告

mathematica实验报告Mathematica 实验报告一、实验目的本实验旨在深入了解和掌握 Mathematica 软件的基本功能和操作方法,通过实际的案例和问题解决,提升运用 Mathematica 进行数学计算、数据分析、图形绘制以及编程的能力。

二、实验环境操作系统:Windows 10Mathematica 版本:121三、实验内容与步骤(一)数学计算1、基本运算在 Mathematica 中,直接输入数学表达式进行计算,例如:计算 2+ 3 4 的结果,输入`2 + 3 4` ,得到结果 14。

2、函数计算使用内置函数进行复杂的数学运算,如计算正弦函数`SinPi / 6`的值,结果为 05。

(二)数据分析1、数据导入通过`Import` 函数导入外部数据文件,如 CSV 格式的数据文件。

假设我们有一个名为`datacsv` 的文件,包含两列数据`x` 和`y` ,使用`data = Import"datacsv"`即可将数据导入。

2、数据处理对导入的数据进行处理,如计算平均值、方差等统计量。

可以使用`Meandata` 计算平均值,`Variancedata` 计算方差。

(三)图形绘制1、二维图形绘制简单的函数图形,如`PlotSinx, {x, 0, 2 Pi}`绘制正弦函数在`0` 到`2 Pi` 区间的图形。

2、三维图形绘制三维图形,如`Plot3Dx^2 + y^2, {x, -2, 2},{y, -2, 2}`绘制一个抛物面。

(四)编程实践1、定义函数使用`Function` 关键字定义自己的函数,例如定义一个计算阶乘的函数`factorialn_ := Ifn == 0, 1, n factorialn 1` 。

2、循环结构使用`For` 循环和`While` 循环实现重复操作,例如使用`For`循环计算 1 到 10 的和,`sum = 0; Fori = 1, i <= 10, i++, sum += i; sum` 。

mathematica实验报告(符号计算)

mathematica实验报告(符号计算)
三、实验内容
1.表达式的运算
(1)化简: ;
(2)展开多项式: ;
(3)分解因式: ;
2.求函数的极限:(1) ;(2) ;(3) .
3.求导数:(1) ,求 ;(2) ,求 .
4.求积分: .
5.将 在 点,展开至 。
6.求和式与积式:(1) ;(2) .
7.求解方程 .
8.求微分方程:
四、程序、命令与结果
2.运行结果()A准确,表现效果好;B正确;C部分结果不准确;D有较严重错误.
3.其它问题______________________________________________________________________.
4.综合评定()A优秀;B良好;C合格;D不合格;E有明显抄袭或雷同现象.
结果:
(2)命令:Limit[(Tan[x])^Tan[2*x],xPi/4]
结果:
(3)命令:Limit[Exp[1/x],Direction0]
结果:
三、(1)命令:
结果:
(2)命令:
结果:
成绩评定:1.程序、命令()A准确、简洁、效率高;B命令基本准确,ቤተ መጻሕፍቲ ባይዱ有少量问题;C部分命令有问题;
D许多命令都有问题或错误.
一、
(1)命令:
P=(x-2)*(x^2+2*x+4)+(x+5)*(x^2-5*x+25);
Simplify[P]
结果:
(2)命令:P=(a+b)^3;
Expand[P]
结果:
(3)命令:P=x^5-x;
Factor[P]
结果:
二、
(1)命令:Limit[((x+m)/(x-n))^x,xInfinity]

数学实验mathmaticas

数学实验mathmaticas
DisplayFunction->Identity];
t3=ParametricPlot3D[{u,v,0},{u,-0.5, 1}, {v,-0.5,1},AxesLabel->{“x”,“y”,“z”},PlotPoints->50,
DisplayFunction->Identity];
Show[t1, t2, t3, DisplayFunction -> $DisplayFunction];
三、程序设计
1.实验对象:
输入命令:
t1 = ParametricPlot3D[{Sin[u]*Cos[v], Sin[u]*Sin[v], Cos[u]}, {u,
0, \[Pi]/2}, {v, 0, 2*\[Pi]}, PlotPoints -> 30,
DisplayFunction -> Identity];
t2 = ParametricPlot3D[{(0.5 + 0.5*Cos[u]), 0.5*Sin[u], v}, {u, 0,
2*\[Pi]},{v,-1,1}, PlotPoints->30,
DisplayFunction -> Identity];
t3 = ParametricPlot3D[{u, v, 0}, {u, -1, 1}, {v, -1, 1}, PlotPoints -> 30,
Show[g1,g2,DisplayFunction -> $DisplayFunction]]
五、程序运行结果
六、结果的讨论和分析
有图像可以看出,逼近函数f(x)的效果随n的增大而越来越好。通过实验,更直观的感受到傅里叶级数在函数模拟上的广泛用途。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学实验报告



学院:数学与统计学院
班级:信息与计算科学(1)班
姓名:郝玉霞
学号:201171020107
实验二
一、实验名称:π的计算
二、实验目的:首先在Mathematica环境中用多种方法计算圆周率π的值,通过
实验来体会各种方法的区别,比较各种方法的优劣,接着尝试自己提出新的
方法来计算圆周率π的值。

三、实验环境:学校机房,Mathematica软件。

四、实验的基本理论和方法
1、用Mathematica绘图函数Plot绘制圆周率π;
2、计算圆周率π的数值积分法、泰勒级数法、蒙特卡罗法,并且利用特定
的公式来计算圆周率π。

五、实验的内容和步骤及实验的结果和结果分析
步骤一、数值积分法计算π
因为单位圆的半径为1,它的面积等于π,所以只要计算出单位圆的面积,就算出了π。

在坐标轴上画出以圆点为圆心,以1为半径的单位圆,则这个单位圆在第一象限的部分是一个扇形,而且面积是单位圆的1/4,于是,我们只要算出此扇形的面积,便可以计算出π。

当n=5000时;
语句:
n=5000;y[x_]:=4/(1+x*x);
s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;
s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/(6*n);
Print[{N[s1,20],N[s2,30],N[Pi,30]}];
实验结果:
3.1415926469231265718,3.14159265358979323846264334
3.14159265358979323846264338328
当n=10000时;
语句:
n=10000;y[x_]:=4/(1+x*x);
s1=(Sum[y[k/n],{k,1,n-1}]+(y[0]+y[1])/2)/n;
s2=(y[0]+y[1]+2*Sum[y[k/n],{k,1,n-1}]+4*Sum[y[(k-1/2)/n],{k,1,n}])/(6*n);
Print[{N[s1,20],N[s2,30],N[Pi,30]}];
Plot[{4(1-x*x)},{x,0,1}]
实验结果:
3.1415926519231265718,3.14159265358979323846264338
3.14159265358979323846264338328
图1 1/4个单位圆
结果分析:当数值积分法得到π的近似值为3.14159265358979323846264338328, 可以看出,用这种方法计算所得到的π值是相当精确的,n 越大,计算出来的扇形面积的近似值就越接近π的准确值。

步骤二、泰勒级数法计算π 利用反正切函数的泰勒级数
+--+-+-=--1
2)1(53a r c t a n 1
2153k x x x x x
k k 来计算π。

语句:T[x_,n_]:=Sum[(-1)^k*x^(2k+1)/(2k+1),{k,0,n}]; N[4*T[1,20000],20]//Timing
T[x_,n_]:=Sum[(-1)^k*x^(2k+1)/(2k+1),{k,0,n}]; Print[N[4*(T[1/2,260]+T[1/3,170]),150]]; Print[N[16*(T[1/5,110]-4*T[1/239,30]),150]]; Print[N[Pi,150]]
实验结果:
9.14Second,3.1416426510898869
3.14159265358979323846264338327950288419716939937510582494459230781640628620899862803482534211706798214808651230664709384460955058223172535940813
2.89054809346530980659035048572237571973428548091718877376781907690970580083540220107847652474250068362104652048128394634092219187032819003167814
3.14159265358979323846264338327950288419716939937510582494459230781640628620899862803482534211706798214808651230664709384460955058223172535940813
结果分析:从实验过程可以看出,这种方法花费的时间很长。

原因是当x=1时得到的arctan1的展开式收敛太慢。

要使泰勒级数收敛得快,容易想到,应当使x
的绝对值小于1,最好是远比1小。

例如,因为11
arctan1arctan arctan 23
=+,所
以我们可以计算出11
arctan ,arctan 23
的值,从而得到arctan1的值。

这样,就使得
收敛速度加快。

改进后可以看出,泰勒级数法得到的结果比数值分析法精确到小数点后更多位。

步骤三、蒙特卡罗法计算π
在数值分析法中,我们利用求单位圆的1/4面积来得到/4π,从而得到π。

单位圆的1/4是一个扇形,它是边长为1的单位正方形的一部分,单位正方形的面积11S =。

只要能够求出扇形的面积S 在正方形的面积中所占的比例1/k S S =,就能立即得到S ,从而得到π的值。

下面的问题归结为如何求k 的值,这就用到了一种利用随机数来解决此种问题的蒙特卡罗法,其原理就是
在正方形中随机的投入很多点,是所投的每个点落在正方形中每一个位置的机会均等,看其中有多少个点落在扇形内。

降落在扇形内的点的个数m 与所投店的总数n 的比可以近似的作为k 的近似值。

语句:
n=10000;p={}; Do[m=0;
Do[x=Random[];y=Random[]; If[x^2+y^2<=1,m++],{k,1,n}];
AppendTo[p,N[4m/n]],{t,1,10}];
Print[p];
Sum[p[[t]],{t,1,10}]/10 实验结果:
3.1528,3.1472,3.1276,3.134,3.1384,3.1516,3.1424,3.1664,3.1436,3.1
3.14668
结果分析:
从运行结果来看,蒙特卡罗法的计算结果为3.14668,虽然精确度不太高,但运行时间短,在很多场合下,特别是在对精确度要求不高的情况下很有用的。

步骤四、针对步骤三提出疑问:步骤三中我们发现当n=10000时,蒙特卡罗法的计算结果为3.14668,精确度不太高,那么对n 取不同的值,所得结果的精确度
会不会有变化?假如有变化,会有什么变化呢?
猜想:对n 取不同的值,所得结果的精确度应该会有变化,且当n 值越大,所得结果越精确。

现令n=1000;
语句:
n=1000;p={}; Do[m=0;
Do[x=Random[];y=Random[]; If[x^2+y^2<=1,m++],{k,1,n}];
AppendTo[p,N[4m/n]],{t,1,10}];
Print[p];
Sum[p[[t]],{t,1,10}]/10 实验结果:
3.16,3.132,3.08,3.156,3.144,3.184,3.156,3.116,3.092,3.
3.
令n=100000; 语句:
n=100000;p={}; Do[m=0;
Do[x=Random[];y=Random[]; If[x^2+y^2<=1,m++],{k,1,n}];
AppendTo[p,N[4m/n]],{t,1,10}];
Print[p];
Sum[p[[t]],{t,1,10}]/10 实验结果:
3.14,3.13172,3.13692,3.13752,3.140923.13852,3.13976,3.14572,3.14028,3.14
3.1
结果分析:
从运行结果来看,虽然蒙特卡罗法的计算结果的精确度不太高,但对n 取不同的值,所得结果的精确度有变化,且当n 值越大,所得结果越精确,这与我们的猜想完全一致。

步骤五、利用麦琴给出
239
1
arctan 51arctan
44
-=π
,推出π
=4(239
1
arctan
51arctan
4 )。

对比以上方法,这种简单的直接用公式求的π的方法要简单得多,所以用处更广。

相关文档
最新文档