matlab 圆周率的近似计算 实验报告

合集下载

实验名称 圆周率的计算

实验名称  圆周率的计算

400000 315925 VC++ 3.159250
500000 395497 VC++ 3.163976
第四部分 级数方法
所用级数 计算项数 精确位数 所用工具 圆周率值 10000 3 MATLAB 3.14149265
第五部分 蒙特卡洛方法的应用
(填写所计算 的积分) (填写该积分 积分结果 的准确结果) (填写总的循 循环次数 环次数) (填写满足条 满足的次数 件次数) (填使用的软 所用工具 件) (用蒙特卡洛 积分的估计 方法估计的 值 值) 计算积分 (
第二部分 数值积分
所用函数
1/ 1 x2 1/ 1 x2 1/ 1 x2 1/ 1 x2 1/ 1 x2
积分方法 矩形公式 分割程度 100 所用工具 VC++ 圆周率值 3.131576
矩形方式 1000 VC++
3.140592
矩形方式 矩形方式 10000 100000 VC++ VC++
3.141494 3.141523
矩形方式 100000 VC++
3.141348
第三部分 蒙特卡洛方法
实验报告 ----计算科学实验室
所用函数 循环次数 满足的次数 所用工具 圆周率值
100000 79037 VC++ 3.141680
200000 158411 VC++ 3.168220
300000 237748 VC++ 3.169973
实验报告 ----计算科学实验室
实验名称: 圆周率的计算
姓名 实验类型 所用知识 魏萱 综合 设计 11112228 实验地点 学号 实验要求 选修 学时量 数学建模 数学软 运筹学 T5-207 6

数学实验(计算圆周率)

数学实验(计算圆周率)

数学实验报告一、 实验问题人们很早就发现圆的周长和直径的比是个常数,也就是我们都熟悉的圆周率π,那么这个常数的值究竟是多少哪?我国的伟大数学家祖冲之将π精确到3.1415926-3.1415927之间,西方的数学研究者也从来没有停止过对π的计算,那么在今天计算机技术如此发达的情况下,我们如何将π的近似值精确到更多位数哪?二、问题的分析π的精确度问题困扰大家已久,所以我们不妨在MATLAB 中采用循环来实现对π的更高位数的精确。

不妨以精确到小数点后9位为例。

我们知道 31arctan 21arctan 1arctan 4+==π 因此可以利用)(π)(321-1-2n 1-2n 1n 1-n 111-2n 431arctan 21arctan 4+=⎪⎭⎫ ⎝⎛+=∑∞=三、实验内容在MATLAB 中键入以下程序clear;n=0;r=1;p=0;k=-1;a=1;b=1;while r>=1.0e-9n=n+1;k=k*(-1);a=4*a;b=9*b;pl=p+k/(2*n-1)*(2/a+3/b);r=abs(4*(pl-p));fprintf('n=%.0f,p=%.10f\n',n,4*pl);p=pl;end四、问题求解结果和结论n=1,p=3.3333333333n=2,p=3.1172839506n=3,p=3.1455761317n=4,p=3.1408505618n=5,p=3.1417411974n=6,p=3.1415615879n=7,p=3.1415993410n=8,p=3.1415911844n=9,p=3.1415929813n=10,p=3.1415925796n=11,p=3.1415926705n=12,p=3.1415926497n=13,p=3.1415926545n=14,p=3.1415926534n=15,p=3.1415926536对泰勒级数,当|x |越小时级数收敛速度越快,这启示我们另外构造相关级数来逼近π。

MATLAB数学实验

MATLAB数学实验

实验三 圆周率的计算学号: 姓名:XX一、 实验目的1. 本实验涉及概率论、定积分、三角函数等有关知识,要求掌握计算π的三种方法及其原理。

2. 学习和掌握数学软件MATLAB 的使用方法。

二、 实验内容圆周率是一个极其驰名的数。

从有文字记载的历史开始,这个数就引起了外行人和学者们的兴趣。

作为一个非常重要的常数,圆周率最早是出于解决有关圆的计算问题。

仅凭这一点,求出它的尽量准确的近似值,就是一个极其迫切的问题了。

事实也是如此,几千年来作为数学家们的奋斗目标,古今中外一代又一代数学家为此献出了自己的智慧和劳动。

回顾历史,人们对π的认识过程,反映了数学和计算技术发展情形的一个侧面。

π的研究,在一定程度上反映这个地区或时代的数学水平。

德国数学家康托说:“历史上一个国家所算的圆周率的准确程度,可以作为衡量这个国家当时数学发展水平的指标。

”直到19世纪初,求圆周率的值还是数学中的头号难题。

1. 圆周率的计算方法古人计算圆周率,一般是用割圆法。

即用圆的内接或外切多边形来逼近圆的周长。

Archomedes 用正96边形得到35位精度;刘徽用正3072边形得到5位精度;Ludolph V an Ceulen 用正2^62边形得到了35位精度。

这种基于几何的算法计算量大,速度慢,吃力不讨好。

随着数学的发展,数学家们在进行数学研究时有意无意得发现了许多计算圆周率的公式。

下面挑选一些经典的常用公式加以介绍。

除了这些经典公式外,还有很多其他公式和由这些经典公式衍生出来的公式,就不一一列举了。

1) Machin 公式2391a r c t a n451a r c t a n 16-=π ()121...753arctan 121753--++-+-=--n x x x x x x n n 这个公式由英国天文学教授John Machin 于1706年发现。

他利用这个公式计算到100位的圆周率。

Machin 公式每计算一项可以得到1.4位的十进制精度。

圆周率的近似计算

圆周率的近似计算

实验二π 的近似计算一.实验目的1.了解π 的计算历程2.理解和掌握近似计算π的数值积分法、蒙特卡罗(Monte Carlo )法、韦达公式、级数法、拉马努金公式、迭代法等方法的原理和过程。

3.学习、掌握Mathematica 和MATLAB 的应用环境及其基本功能,通过一些练习掌握其基本的操作及相关命令。

二.实验内容1.运用数值积分法来近似计算π的值。

2.利用蒙特卡罗(Monte Carlo )法来近似计算π的值。

3.利用韦达(VieTa )公式近似计算π4.利用级数来近似计算π:(1) 莱布尼茨级数 ∑∞=+-=1212)1(4n nn π (2) 欧拉级数∑∞==12216n n π 和∑∞=+=022)12(18n n π 5.利用拉玛努金(Ranmaunujan )公式来近似逼近计算π值n n n n n 396263901103)!()!4(980122104+=∑∞=π 三.实验准备及过程π 是人们经常使用的数字常数,对π的研究已经持续了2500多年,同时今天人们还在不断的探索研究进行中。

一般有以下几种近似计算方法。

1.数值积分法 半径为1的圆称为单位圆,它的面积等于π,只要计算出它的面积,计算出了π。

以单位圆的圆心为原点建立直角坐标系,则单位圆在第一象限内的部分是一个扇形,由曲线y= (x ∈[0,1])及两条坐标轴围成,它的面积S=π/4。

算出了S 的近似值,它的4倍就是π的近似值。

(1)梯形公式设分点x 1,…,x n-1将积分区间[a,b]分成n 等份,即x i =a+i(b-a)/n,0≤i ≤n 所有的曲边梯形的宽度都是h=(b-a)/n 。

记y i =f(x i )。

则第i 个曲边梯形的面积S i 近似地等于梯形面积(y i-1+y i )h/2,将所有这些梯形的面积加起来就得到S ≈(b-a)[y 1+y 2+…+y n-1+(y 0+y n )/2]/n这就是梯形公式。

用MATLAB编程求π值

用MATLAB编程求π值

上海电力学院高级程序设计(C)课程设计报告题目:用MATLAB编程求π院系:计算机科学与技术学院专业年级:信息安全2012级学生姓名:涂桂花学号:20123333指导教师:魏为民2015年3月14日目录一、实验目的 (1)二、实验内容和步骤 (1)1. 操作环境 (1)2. 系统配置 (1)3. 操作步骤 (1)4. 程序源代码 (3)三、实验结果 (3)四.实验小结 (4)上 海 电 力 学 院实 验 报 告课程名称 实验项目 姓名 学号 班级 专业 同组人姓名 指导教师 魏为民 实验日期注意:报告文件名格式:学号_姓名_实验项目.doc ,电子版发邮件到afoe@ ,打印版按要求黑白打印。

一、实验目的1.了解MATLAB 编译器的功能并学会使用;2.学会使用MATLAB 语言编写简单的程序;3.用下列公式 求π值,并了解π的其他公式。

二、实验内容和步骤1.操作环境电脑型号 华硕 X550EP 笔记本电脑操作系统 Windows 7 旗舰版 64位 SP1 ( DirectX 11 ) 2.系统配置处理器 AMD E1-2100 APU with Radeon HD Graphics 双核 主板 华硕 X550EP ( AMD 未知(1536h) ) 内存4 GB ( DDR3 1600MHz )主硬盘 日立 HGST HTS545050A7E680 ( 500 GB / 5400 转/分 )显卡ATI Radeon HD 8210 ( 512 MB / 华硕 )显示器 奇美 CMO15A7 ( 15.7 英寸 ) 光驱 松下 DVD-RAM UJ8C2 S DVD 刻录机 声卡 瑞昱 High Definition Audio @网卡 瑞昱 RTL8168/8111/8112 Gigabit Ethernet Controller / 华硕3.操作步骤3.1打开MATLAB 编辑器,如图1-1所示。

matlab 圆周率

matlab 圆周率
nl n 2 , 特别取针的长度 l d / 2 时, md m
本实验涉及的方法
3、蒙特卡罗法——蒲丰(Buffon)掷针法
x表示针的中点与最近的一条平行线间的距离, 为针与平行线 的夹角.则0 x d 2 ,0 , 确定x 平面内一个矩形 .如图:
平面内一个矩形确定的夹角为针与平行线一条平行线间的距离表示针的中点与最近的针与平行线相交本实验涉及的方法3蒙特卡罗法蒲丰buffon掷针法针与平行线相交时针在平行线矩形区域内所组成的区域面积与矩形区域面积比即为针与直线相交的概率
实验三
圆周率的求法


• 设半径为1的圆的周长与圆的直径比为A; • 设半径为2的圆的周长与圆的直径比为B. • 请问A与B哪个大?
计算历程的几个阶段
3.分析方法时期 17世纪出现了数学分析,这锐利的工具 使得许多初等数学束手无策的问题迎刃 而解。 π 的计算历史也随之进入了一 个新的阶段。
计算历程的几个阶段
1593年,韦达给出
1671年,苏格兰数学家詹姆斯.格雷戈里 公开了他发现的公式: 3 5 7
arctan x x x3 x5 x7 (1 x 1)


2 nl md
本实验涉及的方法
3、蒙特卡罗法——蒲丰(Buffon)掷针法
• 随机生成一个针的中点与最近一条平行直线间的 距离x,满足0≤x≤d/2; • 随机生成针与平行线的夹角a,满足0≤a≤ ; • 判断x≤L/2*sin[a],若成立,则针与直线相交, 否则不相交。
本实验涉及的方法
计算历程的几个阶段
圆周长大于内接正四边形而小于外切正四边形
计算历程的几个阶段
在我国,首先是由数学家刘徽得出较精确的 圆周率。他采用割圆术。

西安交大数学实验五matlab计算圆周率pi-精选文档

西安交大数学实验五matlab计算圆周率pi-精选文档

3
5
7
2 n 1
并利用这个公式计算到了圆周率的100位.
1914年,印度数学家Srinivasa Ramanujan 表了下面的公式:
9801 ( 4 n )! ( 1103 26390 n ) 22 4 n 4 4 n 4 ( n ! ) 99 n 0

在1985年,Gosper用这个公式计算到了圆周率 的17500000位.
在中国
• 祖冲之: 在刘徽研究的基础上,进一步地发展, 经过既漫长又烦琐的计算,一直算到圆内接正 24576边形,而得到一个结论: • 3.1415926 < π < 3.1415927 同时得到π 的两个近似分数:约率为22/7; 密率为355/113。
• 他算出的 π 的8位可靠数字,不但在当时是最精 密的圆周率,而且保持世界记录九百多年。以致 于有数学史家提议将这一结果命名为“祖率”。
1 .圆周率 的幂级数计算方法
例1
利用 arctan x 的 Maclaurin 展开式 , 计算 的近似值 .

1 2 4 n 12 n 1 x x (1 ) x . 2 1 x
xx ( 1 )x arctan x x . 35 2 n 1
1989年,David 和 Gregory Chudnovsky 发表 了下面的公式
n 1 ( 1 ) ( 6 n )! 13591409 5451401 n 12 , 3 3 3 n n ( 3 n )! ( n ! ) 2 0 640320
并在1994年计算到了4044000000位.它的另一 种形式是
在中国
• 刘徽:公元263年前后,刘徽提出著名的 “割圆 术”求出了比较精确的圆周率。他发现:当圆内 接正多边形的边数不断增加后,多边形的周长会 越来越逼近圆周长,而多边形的面积也会越来越 逼近圆面积。于是,刘徽利用正多边形面积和圆 面积之间的关系,从正六边形开始,逐步把边数 加倍:正十二边形、正二十四边形,正四十八边 形……,一直到正三○七二边形,算出圆周率等 于三点一四一六,将圆周率的精度提高到小数点 后第四位。

MATLAB数学实验报告

MATLAB数学实验报告

数学实验报告一、实验目的1.学会用软件对矩阵进行一些数值运算。

2.学会用软件解线性方程组。

3.掌握逆矩阵的一种应用:整数逆矩阵加密、解密方法。

4.熟悉三维空间中的线性变换,加深对正交变换保持距离不变性的理解。

5.掌握泰勒级数在近似计算中的应用,从而理解数值逼近思想。

6.了解无理数e和欧拉常数C的由来历史。

7.了解圆周率π的计算历史,掌握计算圆周率π近似值的多种方法。

8.利用幂级数展开式计算无理数e和欧拉常数C的近似值。

9.学会根据实际问题建立线性规划模型。

10.掌握用软件求解线性函数极值问题。

11.学会建立0-1规划模型,掌握用软件求解0-1规划问题。

二、实验内容1.实验五:练习1:1.(1)程序代码[2,11,1;32,13;1,43,5][1;42][]()结果显示特解:(0.8571,-0.7143,0,0)基础解系:ξ1=(0.1429,-1.2857,1,0),ξ2=(0.1429,0.7143,0,1)通解:0.1429 0.1429 0.8571-1.2857 0.7143 -0.7143k1 1 + k2 0 + 0 12єR0 10感想与反思:A.通过解这道题,熟练掌握了用软件解线性方程组的方法B.手工解线性方程组非常繁琐,通过这道题,进一步认识到的强大2.实验五.练习2.24*4的加密锁:程序代码[3 7 15 22;2 5 11 17;3 6 13 21;9 18 36 46](q)(q)[68 105 108 105 103 101 110 99 101 32 105 115 116 32 116 104 101 32 109 111 116 104 101 114 32 111 102 32 115 117 99 99 101 115 115 32](w,4,9)(q)*b结果显示6*6的加密锁代码[2 3 4 2 1 6;7 7 11 9 2 17;4 6 9 5 2 12;8 7 12 9 2 17;3 3 4 2 1 6;6 4 6 6 1 2](q)(q)[68 105 108 105 103 101 110 99 101 32 105 115 116 32 116 104 101 32 109 111 116 104 101 114 32 111 102 32 115 117 99 99 101 115 115 32](w,6,6)*a(q)*b感想与反思:A.通过解这道题,熟练掌握了逆矩阵的一种应用:整数逆矩阵加密、解密方法B.用矩阵就可以完成对于信息的加密和解密,体会到了矩阵和的神奇C.在选择密码锁矩阵时可以对于一个单位矩阵进行多次初等变换,便于找到3.实验七,练习2.1程序代码单数阶导数在0处的值为零。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

开放性数学实验报告
(2016 / 2017学年第 2学期)
题目:基于MATLAB的圆周率近似计算
专业通信工程
学生姓名杨坤冯著豪周李鑫
班级学号 B B B
指导教师赵礼峰
指导单位南京邮电大学理学院
日期 2017/5/20
MATLAB圆周率的近似计算
B 杨坤 B 冯著豪 B周李鑫
摘要:圆周率(Pi)是圆的周长与直径的比值,一般用希腊字母π表示,是一个在数学及物理学中普遍存在的数学常数。

π也等于圆形之面积与半径平方之比。

是精确计算圆周长、圆面积、球体积等几何形状的关键值。

在分析学里,π可以严格地定义为满足sin x = 0的最小正实数x。

计算圆周率一直是很多人的追求。

在电子计算机还没有发明的时候就有很多先贤用各种方法计算了圆周率的近似值最著名的应该是祖冲之,他计算出了圆周率的位数达到了小数点后七位。

该记录在世界范围内保持了八百年。

之后圆周率的计算进入了分析法时期,这一时期人们开始利用无穷级数或无穷连乘积求π,摆脱可割圆术的繁复计算。

无穷乘积式、无穷连分数、无穷级数等各种π值表达式纷纷出现,使得π值计算精度迅速增加。

在分析法的基础上,电子计算机的出现使得圆周率的计算精度大幅提高。

计算圆周率已经成为评判超级计算机的性能指标的项目之一。

如今个人计算机的性能也达到了一个极高的程度。

学习使用计算机计算圆周率可以帮助我们更好地学习matlab同时对数学也会有更深的理解。

关键词:圆周率计算;投点法;定积分计分法;幂级数;韦达公式
一、问题分析
计算圆周率有很多方法,不同方法之间自然也有好坏之分。

在强大的计算机性能的支持下,我们能使用不同的方法计算圆周率并且感受不同方法孰优孰劣。

首先我们需要了解不同的计算方法是怎么计算圆周率的,然后使用matlab编写代码帮助我们实现算法,计算出圆周率。

二、实验方法
1.投点法:
投点法,顾名思义就是通过投点计算圆周率。

在一个边长为1的正方形里以1为半径画一个四分之一圆,再向正方形里投点,在概率的学习中我们知道,大量地向这个正方形中投点时,在投的点足够多的前提下,落在四分之一扇形里的点与投的所有点的个数之比应该为扇形与整个正方形的面积之比。

扇形的面积为四分之一圆,即1/4*pi,正方形的面积为 1.设投n个点,落在扇形里的点的个数为count即可推出pi=4*(count/n)。

代码如下:
count=0;
ezplot('x^2+y^2=1',[0,1,0,1]),hold on ,grid on
n=10000;
for i=1:1:n
x=rand(1,1);
y=rand(1,1);
plot(x,y,'*'),hold on
pause
if x^2+y^2<=1
count=count+1;
end
end
p=4*(count/n)
投200个点时多次运行分别获得以下结果:
可见这时所得的结果并不稳定,且结果并不精确于是继续实验投一千个点。

多次实验后得出以下结果
此时的精确度仍然不尽人意,于是我们直接投了一万个点
此时得到了以下结果
此时基本达到了两位小数的精确度
于是我们更改投点个数得到以下结果
投100000个点时:
当我们准备投更多点时发现投点法消耗太多计算机资源,已经无法投太多的点了。

投点法计算圆周率利用了计算机的高性能,但是性能的使用效率并不太高。

2.定积分积分法
将区间[0,1]分成n等份,在每个小区间上,选中点为,使用积分的方法计算π的近似值。

代码如下:
n=50;%等分积分区间数。

i=0:1/n:1;
s=0;
for k=1:length(i)-1
s=s+(1/(1+((i(k)+i(k+1))/2)^2))*1/n;
end
vpa(4*s,20)
设置不同的区间数,获得不同的近似值,对应关系如下:
50100200300400500600
区间

3. 3. 3. 3.
近似

相比于投点法,该方法以较高的效率使用了计算机资源达到了更高的精度,当n=100,000,000时,精度达到了小数点后十二位。

3.幂级数
幂级数的方法有很多,我们学习了使用arctan(x)的Maclaurin展开式计算π的近似值,
代码如下
n=10; %展开次数
s=0;
digits(50) %计算精度
for k=1:n
s=s+4*(-1)^(k+1)/(2*k-1);
end
vpa(s,20)
改变n的值,计算不同情况下得出的圆周率近似值
n10100100010000100000
近似值 3.
该计算方法能比较准确地得出较高精度的圆周率的近似值
4.韦达公式
根据韦达在1593年给出的公式
代码如下:
a=sqrt(2);
s=1;
n=100
for i=1:n
s=(s*a)/2;
a1=sqrt(2+a);
a=a1;
end
vpa(2/s,20)
高,效率之快。

一下列出n=100时所得结果精确到100位的输出值:
46 79 71 10 44 64 09 25 8
三、实验感想
圆周率的近似计算一直是一种挑战,经过这次研究,我们更加深刻地体会到了数学的魅力,同时也对matlab更加熟悉。

在不断的学习中,我们成长了很多。

参考文献:
【1】杨振华,郦志新《数学实验》北京:科学技术出版社,
【2】赵洪牛《高等数学》北京:高等教育出版社
【3】百度百科:圆周率。

相关文档
最新文档