实验2π的计算

实验2π的计算
实验2π的计算

. 22||||2

12188 .

224 4242))21

(11()21(|||||| .22 . . 11121

111221212

2

21122N N ∈?=?=????===?=∈--=--=--+=+====++-+n a S a OE AB S S n a a a a a EF AF AE a S a n S a n n n OAE n n n n n n ,

,故又注意到,相应的边数,故,

注意到,边长和面积,则步单位圆内接多边形的第分别是

,设值也就越接近圆周率近单位圆的面积,其数边形的面积就越来越接那么内接正多

正多边形的边数开始,逐步成倍地增加从单位圆的内接正方形Δ实验2:π的计算

学院:机械与动力工程学院 姓名:唐子彦 学号:515020910137

一、实验目的

通过求π的近似值,了解历史上计算π值的一些方法,包括刘徽割圆术、级数展开、数值积分和Monte Carlo 法等. 复习微积分中相关知识,比较它们的差异,了解计算方法对提高计算效率的意义.

二、实验内容

(一)利用鲁道夫割圆术计算π值

【问题】德国人鲁道夫一生计算圆周率,他同样是用圆的内接多边形逼近圆周. 不过,他是从正方形开始成倍增加边数. 试推导出他计算所采用的递推公式,然后求π的近似值到10位和20位有效数字. 【解】

图1.1

.

1 ,21 ,21 421 ,

2 1112???>∈?==?????>∈--==---n n a n S n n a n a n n n n n 且,且,

的递推公式:

由此可得鲁道夫割圆术N N 为通过“鲁道夫法”计算π的近似值,现编写M 文件如下:

为求出指定有效数字位数的π值,还需编写M 文件如下:

运行结果如下:

图1.2

【答】由图1.2不难发现,“鲁道夫法”计算π值效率较高,n=16时即可得到π的10位有效数字,n=32时即可得到π的20位有效数字. 然而,由于中途过程涉及开方等运算,因此计算较为复杂繁琐

.

(二)利用幂级数展开式计算π值

【问题】简单公式

31arctan 21arctan

4+=π

,Machin 公式239

1arctan 51arctan 44-=π,

以及公式8

1

arctan 51arctan 21arctan 4++=π. 试验证上述三个公式(分别记为公式

1、2、3),并利用反正切函数的幂级数展开式求π值,比较上述三公式的计算效率. 此外,再找出一种利用幂级数展开式求π的方法并验证之. 【解】

.

14

2

4

4

04

tan 13121131

21tan tan 1tan tan )tan(.

3

1tan ,21tan 31arctan ,21arctan )1(得证,公式,故且,因为,则记π

βαπ

π

π

βαπβαβαβαβαβα=

+=

+

<

+<==?-+

=

-+=+====.

24

42

03

404

tan 1239111912012391

119120tan 4tan 1tan 4tan )4tan(119

1204tan 125)5

(1512tan 1tan 22tan .

239

1

tan ,51tan 2391arctan ,51arctan )2(22得证,公式,故且,因为,则再记ππππ=

-<

-<

-<==?+-

=

+-=-=?=-?

=

-=?====y x y x y x y x y x x x x x y x y x .

34

.

431tan 1tan 1)4(tan 3

1

8

15118151tan tan 1tan tan )tan(.

8

1

tan ,51tan ,21tan 81arctan )3(得证,公式即

,故且,

因为,则再记z x z x z x z x z x z x z ++=+=-=+-=-=?-+

=-+=+====απ

απαααπα

为利用上述三个公式求出π值,现编写以下三个M文件:

第一个M文件,对应于公式1:

第二个M文件,对应于公式2:

第三个M文件,对应于公式3:

为比较它们计算指定有效数字位数的π值的效率,还需编写M文件如下(详见第五页):

运行结果如下(每五个为一组):

图2.1 图2.2

图2.3 图2.4 从上述四幅图中可以看出,公式1、3的计算效率基本相同,而公式2的计算效率高于其他两个.

然而,从有效数字位数m=15开始,所得结果中公式1、2、3所需项数不再增加,这可能是MATLAB本身的原因. 个人猜测:当MATLAB计算到一个与π极为

相近的数时,可能将其自动补全为π,而没有继续计算. 为试图解决该问题,可

改用C++进行编程,所需的CPP文件如下:

运行结果(每五个为一组)见第9页.

从运行结果来看,有效数字位数m=1~16均可得到正确的项数n1、n2、n3. 然而当m=17时,或许是由于C++语言中long double类型的计算精度有限,无法进行高精度的浮点运算,导致循环条件恒为真,即程序进入死循环,无法得出正确结果. 对于m>17的情形更是如此(参见图2.8).

图2.5 图2.6

左图:图2.7 下图:图2.8

.

4)2

1(!)!2)(12(!)!12(2121arcsin 621.

!)!2)(12(!

)!12(d !)!2(!)!12(11d arcsin :)1,1(.

11

!)!2(!)!12(1],[)(:)1,1(],[!)!2(!)!12()( .)1,1(!)!

2(!)!12(1).

1,1(11 1).1,1(11

!)!2(!)!12(lim .

11

21lim 21lim 121!)!2(!)!12(21:.

!)!2(!)!12(lim lim 2,!)!2(!)!12(!)21

(12,

0!

)2

1(43!21211)]

(1[11

.

)2

1(!)!2)(12(!)!12(2121arcsin 6 4.)4(11

20

1112202

2],[122122

22221021

0422

1

22

112得证,公式,即得到取可求积定理”知:再由“函数项级数逐项且,则记内内闭一致收敛在第二定理,级数据无意义,故收敛域为时,又当,即收敛区间为,则收敛半径故,且注意到,则记证明如下::公式利用以下公式计算π值除此之外,我们还可以∑?∑∑?∑∑

∏∏∑∞=+∞

=∞

=+∞

=∞

=∞

→∞→∞→∞→∞→-=-=-∞=++-+===+-+=-+=-=-∈?-?-+∈-??-=--+--±=-==-==+=+<-≤

∈?-==???????=-=+-==?

+++?+?++=-+=-+-+==n n x

n n n n x

b a n n n n n n n

k

k n n n n k k n n ____

n k i n n n i n n n n n x x n n n x t t n n t t

x x x

x n n b a C x u b a x n n x u x n n Abel x

x r k k ρn n n n n n

n k k a ρk

n k k k i k n a x n i x x x x n n n πρ

π

N

为比较公式4与前三个公式的计算效率,现编写M 文件如下:

输入图2.9所示命令行,运行结果如下:

图2.10

【答】对比以上四公式的计算结果不难发现,公式1、3计算效率大致相同且较低,公式2的计算效率最高,公式4的计算效率介于它们之间比公式1、3略高。

(三)数值积分计算π值

【问题】利用数值积分计算π,分别用“梯形法”和“Simpson 法”精确到10位有效数字,再用“Simpson 法”精确到15位有效数字. 【解】在本题中,“梯形法”和“Simpson 法”的计算原理如下:

为利用数值积分计算π值,现编写如下两个M 文件:

].

42)[(32

].

42)[(61.11

2,,2,1,0 ,22]1,0[)2(23

(2.

23(21)(21]1)(21[.11,,2,1,0 ,[0,1])1(].

1,0[,11

.41d 4111

12220111122202

01

0000122

1

0def 2∑∑∑∑∑∑∑∑?-==--==-=-===++++≈+++≈+=?==

-≈-=--=?+≈?+=?==

∈+===+=m k m

k k k m m k m

k k k m k k k n k k n k n k k n k n k k k k

k k y y y y m y y y y m A x y m k m k x m Sim pson y n y n y y y n n y y A x y n k n k x n x x y A A x x ππππ

故计算,可以得到:曲线用抛物线代替进行将相邻两个区间的函数,则等分,令将区间法

故算,可以得到:曲线用直线段代替来计将每个小区间上的函数,则等分,令将区间梯形法

记,则由于

为计算指定有效数字位数的π值,还需编写以下两个M文件:(1)梯形法:

(2)Simpson法:

运行结果见第14页图3.1.

图3.1

【答】由图3.1知,利用“梯形法”和“Simpson 法”计算10位有效数字的π值所需的最少划分份数分别为12910和20;利用“Simpson 法”计算15位有效数字的π值所需的最少划分份数为92.

此外不难发现,当指定相同有效数字位数时,“Simpson 法”所需的划分份数远少于“梯形法”. 换言之,当划分份数一定时,“Simpson 法”的计算精度远高于“梯形法”.

综上所述,“Simpson 法”的计算效率远高于“梯形法”.

(四)利用Monte Carlo 法计算π值

【问题】(1)试用Monte Carlo 法计算π的5位有效数字; (2)设计方案试用计算机程序模拟Buffon 实验.

【解】首先将Monte Carlo 法和Buffon 实验的原理进行一些简要说明.

文件如下:

为此,需编写的点数个,并计算其中满足共上的随机数组生区间现用计算机程序模拟产从而的面积之比,即的面积与之比应趋于与投点总数内的点数则落在区域内随机地投大量的点,在区域,单位圆内,记正方形在坐标平面法:区域总面积

指定区域面积

率几何概型”,即待求概上述两种方法均基于“M .1),(]1,0[.

4,4 }.1|),{(}10,10|),{( )1(.

2222m y x n y x n

m

n m A B n m B A y x y x B y x y x A xOy Carlo Monte ≤+==≤+=≤≤≤≤==ππ

由于取n=10000运行该程序1次和取n=1000运行该程序10次再求平均值的本质没有区别,故每次进行投点实验时,仅运行该程序一次. 运行结果如下:

图4.1

从图4.1中可以看出,随着投点次数不断增加,所得的π值与真实值的误差总体上不断减小. 本次实验中,当投点次数为10亿,可得π的5位有效数字.

然而,投点10万次,即可求出π的4位有效数字;而投点1000万次,仅可求出π的3位有效数字. 这说明增加投点次数,不能说计算π的精度必定提高

.

上述公式的推导如下:

近似值:够大时,可以求出π的足,则当数为,针和平行线的相交次设投针次数为多次扔到该平面上的针随机地将长度为的平行线多条间距为在一个平面内画出足够实验:

.2 .)( .)2(n

m

d l n n m d l l d Buffon ?≈≤

π

图4.2

图4.3

.

2

2sin 2.

sin 2||).

,()2

2( )0( .2.42

d l d

l l l

h h d

h d h d

≤≤≤≤≤≤-<≤,故要求在该带形区域内,即又由于针的中点必须落相交的约束条件为:不难求出,针与该直线,设针的坐标为为中点到该直线的距离记,针的

针与该直线的夹角记为)见图所形成的带形区域(详两侧

可以只考虑一条直线及,故各直线地位相同,由于平行线数量足够多θθθπθθ

.22d )]sin 2(sin 2[3.40n

m d l d l d l l S S P m n ?≈?=--==≈?πππθθθπ

总内可知:由图

为利用计算机程序进行随机模拟,现编写M 文件如下:

运行结果如下:

图4.4

【答】尽管Monte Carlo 法和Buffon

实验的原理不复杂,操作也简单,但计算

.

]!

)!12(!)!2( !)!12(!)!2([2.

lim !)!12(!

)!2( !)!12(!)!2(lim !)!12(!)!22( !)!12(!)!2(lim 12212lim

.

lim }{.2

0]1)2()2([!)!12(!)!2( !)!12(!)!2(.2

212!)!12(!)!2( !)!12(!)!2(!)!12(!)!22( !)!12(!)!2(2!)!12(!)!2( !)!12(!)!2( .

!

)!12(!

)!22(2!)!2(!)!12(!)!12(!)!2( .

d sin d sin

sin

.

sin sin sin ,1sin 0:]2

,0[11def 12

220

122022

01

212212公式得证,故由“夹逼性”知:,故又存在单调有界定理”知:单调递增有上界,由“即且,显然又代入公式得:据“积分不等式”知:,故由于Wallis n n n n a n n n n n n n n n n a a a a a a k k n n n n n n n n n n n n n n n n n n n n n n n n x x x x x x x x n x x n n n n n n n n n n n n n n

k n n

n n n n ∏∏???∞

=∞

→∞→∞→∞→∞

→+=-+-++?-==+?-=--?-=-+>≤<=-=+?--+?+?-=--?-≤≤+?-?--≤?-≤+≤≤≤≤∈?≤≤∈?π

ππππ

π

π

πN π效率很低,必须通过多次(往往达成百上千亿次)实验方可得到较精确的结果. (五)利用“Wallis 公式”计算π值

【问题】试利用积分?=????

???+=+=?-=?,2,1,01

2 , !)!12(!)!2(2 ,2!)!2(!)!12(d sin 20k k n k k k

n k k x x n ,ππ

推导公

式:

??+?-??????=

122122543442122n n

n n π

并利用该公式计算π值,观察计算效率.

【解】

为利用Wallis 公式计算π值,并观察其计算效率,现编写M 文件如下:

运行结果如下:

图5.1

【答】图5.1表明,利用“Wallis 公式”计算π值,每增加一位有效数字,所需的项数n 就要提高一个数量级. 因此,“Wallis 公式”计算π的效率较低,大致和反正切函数公式

1arctan 4

的幂级数展开式的计算效率处于同一数量级.

(六)e 的计算

【问题】试利用多种方法计算自然对数的底数e 的近似值. 【解】以下四种方法均可用于计算e 值.

(1)利用公式1:n n n

e )1

1(lim +=∞→.

证:这是e 的定义式,故证明从略. 现编写M 文件如下:

并行计算1

并行计算 实 验 报 告 学院名称计算机科学与技术学院专业计算机科学与技术 学生姓名 学号 年班级 2016年5 月20 日

一、实验内容 本次试验的主要内容为采用多线程的方法计算pi的值,熟悉linux下pthread 形式的多线程编程,对实验结果进行统计并分析以及加速比曲线分析,从而对并行计算有初步了解。 二、实验原理 本次实验利用中值积分定理计算pi的值 图1 中值定理计算pi 其中公式可以变换如下: 图2 积分计算pi公式的变形 当N足够大时,可以足够逼近pi,多线程的计算方法主要通过将for循环的计算过程分到几个线程中去,每次计算都要更新sum的值,为避免一个线程更新sum 值后,另一个线程仍读到旧的值,所以每个线程计算自己的部分,最后相加。三、程序流程图 程序主体部分流程图如下:

多线程执行函数流程图如下: 四、实验结果及分析

令线程数分别为1、2、5、10、20、30、40、50和100,并且对于每次实验重复十次求平均值。结果如下: 图5 时间随线程的变化 实验加速比曲线的计算公式类似于 结果如下: 图5 加速比曲线 实验结果与预期类似,当线程总数较少时,线程数的增多会对程序计算速度带来明显的提升,当线程总数增大到足够大时,由于物理节点的核心数是有限的,因此会给cpu带来较多的调度,线程的切换和最后结果的汇总带来的时间开销较大,所以线程数较大时,增加线程数不会带来明显的速度提升,甚至可能下降。 五、实验总结

本次试验的主要内容是多线程计算pi的实现,通过这次实验,我对并行计算有了进一步的理解。上学期的操作系统课程中,已经做过相似的题目,因此程序主体部分相似。不同的地方在于,首先本程序按照老师要求应在命令行提供参数,而非将数值写定在程序里,其次是程序不是在自己的电脑上运行,而是通过ssh和批处理脚本等登录到远程服务器提交任务执行。 在运行方面,因为对批处理任务不够熟悉,出现了提交任务无结果的情况,原因在于windows系统要采用换行的方式来表明结束。在实验过程中也遇到了其他问题,大多还是来自于经验的缺乏。 在分析实验结果方面,因为自己是第一次分析多线程程序的加速比,因此比较生疏,参考网上资料和ppt后分析得出结果。 从自己遇到的问题来看,自己对批处理的理解和认识还比较有限,经过本次实验,我对并行计算的理解有了进一步的提高,也意识到了自己存在的一些问题。 六、程序代码及部署 程序源代码见cpp文件 部署说明: 使用gcc编译即可,编译时加上-pthread参数,运行时任务提交到服务器上。 编译命令如下: gcc -pthread PI_3013216011.cpp -o pi pbs脚本(runPI.pbs)如下: #!/bin/bash #PBS -N pi #PBS -l nodes=1:ppn=8 #PBS -q AM016_queue #PBS -j oe cd $PBS_O_WORKDIR for ((i=1;i<=10;i++)) do ./pi num_threads N >> runPI.log

多核编程与并行计算实验报告 (1)

多核编程与并行计算实验报告 姓名: 日期:2014年 4月20日 实验一 // exa1.cpp : Defines the entry point for the console application.

// #include"stdafx.h" #include #include #include #include using namespace std; void ThreadFunc1(PVOID param) { while(1) { Sleep(1000); cout<<"This is ThreadFunc1"<

实验二 // exa2.cpp : Defines the entry point for the console application. // #include"stdafx.h" #include #include using namespace std; DWORD WINAPI FunOne(LPVOID param){ while(true) { Sleep(1000); cout<<"hello! "; } return 0; } DWORD WINAPI FunTwo(LPVOID param){ while(true) { Sleep(1000); cout<<"world! ";

计算方法上机实验报告

《计算方法》上机实验报告 班级:XXXXXX 小组成员:XXXXXXX XXXXXXX XXXXXXX XXXXXXX 任课教师:XXX 二〇一八年五月二十五日

前言 通过进行多次的上机实验,我们结合课本上的内容以及老师对我们的指导,能够较为熟练地掌握Newton 迭代法、Jacobi 迭代法、Gauss-Seidel 迭代法、Newton 插值法、Lagrange 插值法和Gauss 求积公式等六种算法的原理和使用方法,并参考课本例题进行了MATLAB 程序的编写。 以下为本次上机实验报告,按照实验内容共分为六部分。 实验一: 一、实验名称及题目: Newton 迭代法 例2.7(P38):应用Newton 迭代法求 在 附近的数值解 ,并使其满足 . 二、解题思路: 设'x 是0)(=x f 的根,选取0x 作为'x 初始近似值,过点())(,00x f x 做曲线)(x f y =的切线L ,L 的方程为))((')(000x x x f x f y -+=,求出L 与x 轴交点的横坐标) (') (0001x f x f x x - =,称1x 为'x 的一次近似值,过点))(,(11x f x 做曲线)(x f y =的切线,求该切线与x 轴的横坐标) (') (1112x f x f x x - =称2x 为'x

的二次近似值,重复以上过程,得'x 的近似值序列{}n x ,把 ) (') (1n n n n x f x f x x - =+称为'x 的1+n 次近似值,这种求解方法就是牛顿迭代法。 三、Matlab 程序代码: function newton_iteration(x0,tol) syms z %定义自变量 format long %定义精度 f=z*z*z-z-1; f1=diff(f);%求导 y=subs(f,z,x0); y1=subs(f1,z,x0);%向函数中代值 x1=x0-y/y1; k=1; while abs(x1-x0)>=tol x0=x1; y=subs(f,z,x0); y1=subs(f1,z,x0); x1=x0-y/y1;k=k+1; end x=double(x1) K 四、运行结果: 实验二:

实验2 大数据分析平台中HDFS的使用

1、HDFS 预备知识 2、HDFS 读写数据的过程 (一) 实验目的 1.理解HDFS 在Hadoop 体系结构中的角色; 2.理解HDFS 存在的原因; 3.理解HDFS 体系架构; 4.理解HDFS 读写数据过程; 5.熟练使用HDFS 常用的Shell 命令。 (三) 实验环境 1.在HDFS 中进行目录操作; 2.在HDFS 中进行文件操作; 3.从本机中上传文件到HDFS ; 4.从HDFS 下载文件到本机。 (四) 实验步骤 (二) 实验要求 1.大数据分析实验系统(FSDP ); 2.CentOS 6.7; 3. Hadoop 2.7.1。 分布式文件系统(Distributed File System )是指文件系统管理的物理存储资源不一定直接连接在本地节点,而是通过计算机网络与节点相连。 HDFS (Hadoop 分布式文件系统,Hadoop Distributed File System )是一种适合运行在通用硬件上的分布式文件系统,它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS 能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。 HDFS 为大数据分析平台的其他所有组件提供了最基本的存储功能。它具有高容错、高可靠、可扩展、高吞吐率等特征,为大数据存储和处理提供了强大的底层存储架构。 HDFS 采用主/从(master/slave )式体系结构,从最终用户的角度来看,它就像传统的文件系统,可通过目录路径对文件执行增删改查操作。由于其分布式存储的性质,HDFS 拥有一个NameNode 和一些DataNode ,NameNode 管理文件系统的元数据,DataNode 存储实际的数据。 1.HDFS 预备知识; 2.HDFS 读写数据的过程; 3.HDFS 的目录和文件操作。 HDFS 提供高吞吐量应用程序访问功能,适合带有大型数据集的场景,具体包括: ?数据密集型并行计算:数据量大,但是计算相对简单的并行处理,如大规模Web 信息搜索; ? 计算密集型并行计算:数据量相对不是很大,但是计算较为复杂的并行处理,如3D 建模与渲染、气象预报、科学计算等; ? 数据密集型与计算密集型混合的计算,如3D 电影渲染等。 HDFS 读数据的过程 HDFS 写数据的过程 普通文件系统主要用于随机读写以及与用户进行交互,而HDFS 则是为了满足批量数据处理的要求而设计的,因此为了提高数据吞吐率,HDFS 放松了一些POSIX 的要求,从而能够以流方式来访问文件系统数据。

并行计算实验报告一

江苏科技大学 计算机科学与工程学院 实验报告 实验名称:Java多线程编程 学号:姓名:班级: 完成日期:2014年04月22日

1.1 实验目的 (1) 掌握多线程编程的特点; (2) 了解线程的调度和执行过程; (3)掌握资源共享访问的实现方法。 1.2 知识要点 1.2.1线程的概念 (1)线程是程序中的一个执行流,多线程则指多个执行流; (2)线程是比进程更小的执行单位,一个进程包括多个线程; (3)Java语言中线程包括3部分:虚拟CPU、该CPU执行的代码及代码所操作的数据。 (4)Java代码可以为不同线程共享,数据也可以为不同线程共享; 1.2.2 线程的创建 (1) 方式1:实现Runnable接口 Thread类使用一个实现Runnable接口的实例对象作为其构造方法的参数,该对象提供了run方法,启动Thread将执行该run方法; (2)方式2:继承Thread类 重写Thread类的run方法; 1.2.3 线程的调度 (1) 线程的优先级 ●取值范围1~10,在Thread类提供了3个常量,MIN_PRIORITY=1、MAX_ PRIORITY=10、NORM_PRIORITY=5; ●用setPriority()设置线程优先级,用getPriority()获取线程优先级; ●子线程继承父线程的优先级,主线程具有正常优先级。 (2) 线程的调度:采用抢占式调度策略,高优先级的线程优先执行,在Java中,系统按照优先级的级别设置不同的等待队列。 1.2.4 线程的状态与生命周期

说明:新创建的线程处于“新建状态”,必须通过执行start()方法,让其进入到“就绪状态”,处于就绪状态的线程才有机会得到调度执行。线程在运行时也可能因资源等待或主动睡眠而放弃运行,进入“阻塞状态”,线程执行完毕,或主动执行stop方法将进入“终止状态”。 1.2.5 线程的同步--解决资源访问冲突问题 (1) 对象的加锁 所有被共享访问的数据及访问代码必须作为临界区,用synchronized加锁。对象的同步代码的执行过程如图14-2所示。 synchronized关键字的使用方法有两种: ●用在对象前面限制一段代码的执行,表示执行该段代码必须取得对象锁。 ●在方法前面,表示该方法为同步方法,执行该方法必须取得对象锁。 (2) wait()和notify()方法 用于解决多线程中对资源的访问控制问题。 ●wait()方法:释放对象锁,将线程进入等待唤醒队列; ●notify()方法:唤醒等待资源锁的线程,让其进入对象锁的获取等待队列。 (3)避免死锁 指多个线程相互等待对方释放持有的锁,并且在得到对方锁之前不会释放自己的锁。 1.3 上机测试下列程序 样例1:利用多线程编程编写一个龟兔赛跑程序。 乌龟:速度慢,休息时间短;

多核编程与并行计算实验报告 (1)

(此文档为word格式,下载后您可任意编辑修改!) 多核编程与并行计算实验报告 姓名: 日期:2014年 4月20日

实验一 // exa1.cpp : Defines the entry point for the console application. // #include"stdafx.h" #include #include #include #include using namespace std; void ThreadFunc1(PVOID param) { while(1) { Sleep(1000); cout<<"This is ThreadFunc1"<

实验二 // exa2.cpp : Defines the entry point for the console application. // #include"stdafx.h" #include #include using namespace std; DWORD WINAPI FunOne(LPVOID param){ while(true) { Sleep(1000); cout<<"hello! "; } return 0; } DWORD WINAPI FunTwo(LPVOID param){ while(true) { Sleep(1000); cout<<"world! "; } return 0; } int main(int argc, char* argv[]) { int input=0; HANDLE hand1=CreateThread (NULL, 0, FunOne, (void*)&input, CREATE_SUSPENDED,

圆周率计算公式

圆周率计算公式Revised on November 25, 2020

12 π= 22 π= 32 π= 42 π= 52 π= 62 π= 72 π= 82 π= 92 π= 102 π=314 112 π= 122 π= 132 π= 142 π= 152 π= 162 π= 172 π= 182 π= 192 π= 202 π=1256 212 π= 222 π= 232 π= 242 π= 252 π= 262 π= 272 π= 282 π= 292 π= 302 π=2826 312 π= 322 π= 332 π= 342 π= 352 π= 362 π= 372 π= 382 π= 392 π= 402 π=5024 412 π= 422 π= 432 π= 442 π=

452 π= 462 π= 472 π= 482 π= 492 π= 502 π=7850 512 π= 522 π= 532 π= 542 π= 552 π= 562 π= 572 π= 582 π= 592 π= 602 π=11304 612 π= 622 π= 632 π= 642 π= 652 π= 662 π= 672 π= 682 π= 692 π= 702 π=15386 712 π= 722 π= 732 π= 742 π= 752 π= 762 π= 772 π= 782 π= 792 π= 802 π= 812 π= 822 π= 832 π= 842 π= 852 π= 862 π= 872 π= 882 π=

892 π= 902 π=25434 912 π= 922 π= 932 π= 942 π= 952 π= 962 π= 972 π= 982 π= 992 π= 1002 π=31400 12~1002 12=1 22=4 32=9 42=16 52=25 62=36 72=49 82=64 92=81 102=100 112=121 122=144 132=169 142=196 152=225 162=256 172=289 182=324 192=361 202=400 212=441 222=484 232=529 242=576 252=625 262=676 272=729 282=784 292=841 302=900 312=961 322=1024 332=1089 342=1156 352=1225 362=1296 372=1396 382=1444 392=1521 402=1600 412=1681 422=1764 432=1849 442=1936 452=2025

并行计算第一次实验报告

并行计算上机实验报告题目:多线程计算Pi值 学生姓名 学院名称计算机学院 专业计算机科学与技术时间

一. 实验目的 1、掌握集群任务提交方式; 2、掌握多线程编程。 二.实验内容 1、通过下图中的近似公式,使用多线程编程实现pi的计算; 2、通过控制变量N的数值以及线程的数量,观察程序的执行效率。 三.实现方法 1. 下载配置SSH客户端 2. 用多线程编写pi代码 3. 通过文件传输界面,将文件上传到集群上 4.将命令行目录切换至data,对.c文件进行编译 5.编写PBS脚本,提交作业 6.实验代码如下: #include

#include #include #include #include #include static double PI=0; static int N=0; static int numOfThread=0; static int length=0; static int timeUsed=0; static int numOfThreadArray[]={1,2,4,6,8,10,12,14,16,20,24,30}; static int threadArraySize=12; static int nTime=4; static int repeatTime=30; static double totalTime=0; struct timeval tvpre, tvafter; pthread_mutex_t mut; clockid_t startTime,endTime;

圆周率的计算方法

圆周率的计算方法 古人计算圆周率,一般是用割圆法。即用圆的内接或外切正多边形来逼近圆的周长。Archimedes用正96边形得到圆周率小数点后3位的精度;刘徽用正3072边形得到5位精度;Ludolph Van Ceulen用正262边形得到了35位精度。这种基于几何的算法计算量大,速度慢,吃力不讨好。随着数学的发展,数学家们在进行数学研究时有意无意地发现了许多计算圆周率的公式。下面挑选一些经典的常用公式加以介绍。除了这些经典公式外,还有很多其他公式和由这些经典公式衍生出来的公式,就不一一列举了。 ?Machin公式 这个公式由英国天文学教授John Machin于1706年发现。他利用这个公式计算到了100位的圆周率。Machin公式每计算一项可以得到1.4位的十进制精度。因为它的计算过程中被乘数和被除数都不大于长整数,所以可以很容易地在计算机上编程实现。 Machin.c 源程序 还有很多类似于Machin公式的反正切公式。在所有这些公式中,Machin公式似乎是最快的了。虽然如此,如果要计算更多的位数,比如几千万位,Machin 公式就力不从心了。下面介绍的算法,在PC机上计算大约一天时间,就可以得到圆周率的过亿位的精度。这些算法用程序实现起来比较复杂。因为计算过程中涉及两个大数的乘除运算,要用FFT(Fast Fourier Transform)算法。FFT可以将两个大数的乘除运算时间由O(n2)缩短为O(nlog(n))。 关于FFT算法的具体实现和源程序,请参考Xavier Gourdon的主页 ?Ramanujan公式 1914年,印度数学家Srinivasa Ramanujan在他的论文里发表了一系列共14条圆周率的计算公式,这是其中之一。这个公式每计算一项可以得到8位的十进制精度。1985年Gosper用这个公式计算到了圆周率的17,500,000位。

并行处理实验报告:用MPI实现的矩阵乘法的加速比分析

华中科技大学 课程名称并行处理 实验名称矩阵乘法的实现及加速比分析考生姓名李佩佩 考生学号 M201372734 系、年级计算机软件与理论2013级类别硕士研究生 考试日期 2014年1月3日

一. 实验目的 1) 学会如何使用集群 2) 掌握怎么用并行或分布式的方式编程 3) 掌握如何以并行的角度分析一个特定的问题 二. 实验环境 1) 硬件环境:4核CPU、2GB内存计算机; 2) 软件环境:Windows XP、MPICH2、VS2010、Xmanager Enterprise3; 3) 集群登录方式:通过远程桌面连接211.69.198.2,用户名:pppusr,密码:AE2Q3P0。 三. 实验内容 1. 实验代码 编写四个.c文件,分别为DenseMulMatrixMPI.c、DenseMulMatrixSerial.c、SparseMulMatrixMPI.c和SparseMulMatrixSerial.c,用于比较并行和串行矩阵乘法的加速比,以及稀疏矩阵和稠密矩阵的加速比。这里需要说明一下,一开始的时候我是把串、并行放在一个程序中,那么就只有两个.c文件DenseMulMatrix.c 和SparseMulMatrix.c,把串行计算矩阵乘的部分放到了主进程中,即procsID=0的进程,但是结果发现执行完串行后,再执行并行就特别的慢。另外,对于稀疏矩阵的处理方面可能不太好,在生成稀疏矩阵的过程中非0元素位置的生成做到了随机化,但是在进行稀疏矩阵乘法时没有对矩阵压缩,所以跟稠密矩阵乘法在计算时间上没多大区别。 方阵A和B的初始值是利用rand()和srand()函数随机生成的。根据稀疏矩阵和稠密矩阵的定义,对于稀疏矩阵和稠密矩阵的初始化方法InitMatrix(int *M,int *N,int len)会有所不同。这里需要说明一下,一开始对于矩阵A和B的初始化是两次调用InitMatrix(int *M ,int len),生成A和B矩阵,但是随后我发现,由于两次调用方法InitMatrix的时间间隔非常短,又由于srand()函数的特点,导致生成的矩阵A和B完全一样;然后,我就在两次调用之间加入了语句“Sleep(1000);”,加入头文件“#include ”,这样生成的A、B矩阵就不一样了,但很快问题又出现了,在Xshell中不能识别头文件“#include ”。所以,最后决定用下面的方法生成矩阵A和B,B是A的转置。 //稠密矩阵的生成方法 void InitMatrix(int *M,int *N,int len) { srand((unsigned)time( NULL)); for(i=0; i < len*len; i++)

圆周率的计算历程及意义

圆周率π的计算历程及意义 李毫伟 数学科学学院数学与应用数学学号:080412047 指导老师:王众杰 摘要: 圆周率π这个数,从有文字记载的历史开始,就引起了人们的兴趣.作为一个非常重要的常数,圆周率π最早是出于解决有关圆的计算问题.仅凭这一点,求出它的尽量准确的近似值,就是一个极其迫切的问题了.几千年来作为数学家们的奋斗目标,古今中外的数学家为此献出了自己的智慧和劳动.回顾历史,人类对π的认识过程,反映了数学和计算技术发展情形的一个侧面.π的研究在一定程度上反映这个地区或时代的数学水平. 关键词: 圆周率; 几何法; 分析法; 程序 1、实验时期 通过实验对π值进行估算,这是计算π的第一个阶段.这种对π值的估算基本上都是以观察或实验为根据,是基于对一个圆的周长和直径的实际测量而得出来 π=这个数据,最早见于有文字记载的基督教《圣经》的.在古代,实际上长期使用3 中的章节,其上取圆周率π为3.这一段描述的事大约发生在公元前950年前后.其他如巴比伦、印度、中国等也长期使用3这个粗略而简单实用的数值.在我国刘徽之前“圆径一而周三”曾广泛流传.我国第一部《周髀算经》中,就记载有“圆周三径一”这一结论.在我国,木工师傅有两句从古流传下来的口诀:叫做:“周三径一,方五斜七,”意思是说,直径为1的圆,周长大约是3,边长为5的正方形,对角线之长约为7,这正反应了人们早期对π和2这两个无理数的粗略估计.东汉时期,官方还明文规定圆周率取3为计算圆的面积的标准,后人称之为古率. 早期的人们还使用了其它的粗糙方法.如古埃及、古希腊人曾用谷粒摆在圆形上,以数粒数与方形对比的方法取得数值.或用匀重木板锯成圆形和方形以秤量对比取值……由此,得到圆周率π的稍好些的值.如古埃及人应用了约四千年的()≈2984 3.1605.在印度,公元前六世纪,曾取π≈10≈3.162.在我国东、西汉之

并行计算课程设计报告

并行计算与多核多线程技术 课程报告 专业 班级 学号 姓名 成绩___________________ 年月日

课程报告要求 手写内容:设计目的、意义,设计分析,方案分析,功能模块实现,最终结果分析,设计体会等。 允许打印内容:设计原理图等图形、图片,电路图,源程序。硬件类的设计,要有最终设计的照片图;软件类设计,要有各个功能模块实现的界面图、输入输出界面图等。 评价 理论基础 实践效果(正确度/加速比) 难度 工作量 独立性

目录 1. 设计目的、意义(功能描述) (1) 2. 方案分析(解决方案) (1) 3. 设计分析 (1) 3.1 串行算法设计 (1) 3.2 并行算法设计 (1) 3.3 理论加速比分析 (2) 4. 功能模块实现与最终结果分析 (2) 4.1 基于OpenMP的并行算法实现 (2) 4.1.1 主要功能模块与实现方法 (2) 4.1.2 实验加速比分析 (3) 4.2 基于MPI的并行算法实现 (3) 4.2.1 主要功能模块与实现方法 (3) 4.2.2 实验加速比分析 (4) 4.3 基于Java的并行算法实现 (4) 4.3.1 主要功能模块与实现方法 (4) 4.3.2 实验加速比分析 (5) 4.4 基于Windows API的并行算法实现 (5) 4.4.1 主要功能模块与实现方法 (5) 4.4.2 实验加速比分析 (6) 4.5 基于.net的并行算法实现 (6) 4.5.1 主要功能模块与实现方法 (6) 4.5.2 实验加速比分析 (6) 4.6并行计算技术在实际系统中的应用 (6) 4.6.1 主要功能模块与实现方法 (6) 4.6.2 实验加速比分析 (7) 5. 设计体会 (7) 6. 附录 (9) 6.1 基于OpenMP的并行程序设计 (9) 6.1.1 代码及注释 (9) 6.1.2 执行结果截图 (11) 6.1.3 遇到的问题及解决方案 (12) 6.2 基于MPI的并行程序设计 (12)

并行计算-实验二-矩阵乘法的OpenMP实现及性能分析

深圳大学 实验报告 课程名称:并行计算 实验名称:矩阵乘法的OpenMP实现及性能分析姓名: 学号: 班级: 实验日期:2011年10月21日、11月4日

一. 实验目的 1) 用OpenMP 实现最基本的数值算法“矩阵乘法” 2) 掌握for 编译制导语句 3) 对并行程序进行简单的性能 二. 实验环境 1) 硬件环境:32核CPU 、32G 存计算机; 2) 软件环境:Linux 、Win2003、GCC 、MPICH 、VS2008; 4) Windows 登录方式:通过远程桌面连接192.168.150.197,用户名和初始密码都是自己的学号。 三. 实验容 1. 用OpenMP 编写两个n 阶的方阵a 和b 的相乘程序,结果存放在方阵c 中,其中乘法用for 编译制导语句实现并行化操作,并调节for 编译制导中schedule 的参数,使得执行时间最短,写出代码。 方阵a 和b 的初始值如下: ????????? ? ??????????-++++=12,...,2,1,..2,...,5,4,31,...,4,3,2,...,3,2,1n n n n n n n a ???????? ? ???????????= 1,...,1,1,1..1,...,1,1,11,...,1,1,11,..., 1,1,1b 输入: 方阵的阶n 、并行域的线程数 输出: c 中所有元素之和、程序的执行时间 提示: a,b,c 的元素定义为int 型,c 中所有元素之各定义为long long 型。 Windows 计时: 用中的clock_t clock( void )函数得到当前程序执行的时间 Linux 计时: #include

数学实验:怎样计算圆周率

怎样计算 姓名: 学号 班级:数学与应用数学4班

实验报告 实验目的:自己尝试利用Mathematica软件计算的近似值,并学会计算的近似值的方法。 实验环境:Mathematica软件 实验基本理论和方法: 方法一:数值积分法(单位圆的面积是,只要计算出单位圆的面积也就计算出了的值) 其具体内容是:以单位圆的圆心为原点建立直角坐标系,则单位圆在第一象限内的部分G是一个扇形, 由曲线()及坐标轴围成,它的面积是,算出了S的近似值,它的4倍就是的近似值。而怎样计算扇形G的面积S的近似值呢?如图

图一 扇形G中,作平行于y轴的直线将x轴上的区间[0,1](也就是扇形在x轴上的半径)分成n等份(n=20),相应的将扇形G分成n个同样宽度1/n的部分()。每部分是一个曲边梯形:它的左方、右方的边界是相互平行的直线段,类似于梯形的两底;上方边界是一段曲线,因此称为曲边梯形。如果n很大,每个曲边梯形的上边界可以近似的看成直线段,从而将近似的看成一个梯形来计算它的面积;梯形的高(也就是它的宽度)h=1/n,两条底边的长分别是和,于是这个梯形面积可以作为曲边梯形面积的近似值。所有这些梯形面积的和T就可以作为扇形面积S的近似值: n越大,计算出来的梯形面积之和T就越接近扇形面积S,而4T就越接近的准确值。 方法二:泰勒级数法 其具体内容是:利用反正切函数的泰勒级数 计算。 方法三:蒙特卡罗法

其具体内容是:单位正方形的面积=1,只要能够求出扇形G 的面积S在正方形的面积中所占的比例,就能立即得到S,从而得到的值。而求扇形面积在正方形面积中所占的比例k的值,方法是在正方形中随机地投入很多点,使所投的每个点落在正方形中每一个位置的机会均等,看其中有多少个点落在扇形内。将落在扇形内的点的个数m与所投的点的总数n的比可以作为k的近似值。能够产生在区间[0,1]内均匀分布的随机数,在Mathematica中语句是 Random[ ] 产生两个这样的随机数x,y,则以(x,y)为坐标的点就是单位正方形内的一点P,它落在正方形内每一个位置的机会均等。P落在扇形内的充分必要条件是。这样利用随机数来解决数学问题的方法叫蒙特卡罗法。 实验内容、步骤及其结果分析: 问题1:在方法一中,取n=1000,通过计算图一中扇形面积计算的的近似值。 分析:图一中的扇形面积S实际上就是定积分。 与有关的定积分很多,比如的定积分

并行计算实验报告

实验报告 课程名称并行计算机体系结构 实验名称并行计算机体系结构实验指导教师纪秋 实验日期 _ 2011.4 ______ 学院计算机学院 专业计算机科学与技术 学生姓名 _______查隆冬_______ 班级/学号计科0804 /2008011183 成绩 ________ _________

并行计算机体系结构实验报告 ⒈安装Mpich、配置文件、小组互相ping通网络的过程和指令 (一)安装Mpich (1)本机插入MPICH光盘,双击桌面的计算机图标->CD-RW/DVD-ROM Drive图标;系统自动挂载cdrom到/media下。(桌面出现新光盘图标XCAT-MPICH2.即挂载成功) (2)Cp /media/cdrecorder/mpich2-1.0.6.tar.gz /usr ;本机拷贝mpich2-1.0.6.tar.gz到/usr目录下 (3)Cd /usr ;进入usr目录下 (4)Tar zxvf mpich2-1.0.6.tar.gz ;解压mpich2-1.0.6.tar.gz到当前目录(5)cd mpich2-1.0.6 ;进入mpich2-1.0.6目录 (6)./configure –enable–f90 –prefix=/opt/mpich ;生成mpi的makefile 和设置mpich路径启用f90编译器 (7)make ; 编译 (8)make install ;将编译好的文件安装,安装结束后在/opt下生成mpich文件夹 (9) which mpdboot ; 查找文件 (二)配置环境变量 (1)打开终端,输入 vi/etc/bashrc

虚拟化与云计算实验报告.

实验报告 课程名称虚拟化与云计算学院计算机学院 专业班级11级网络工程3班学号3211006414 姓名李彩燕 指导教师孙为军 2014 年12 月03日

EXSI 5.1.0安装 安装准备 安装VSPHERE HYPERVISOR SEVER(EXSI 5.1.0)需要准备: 无操作系统的机器(如有系统,安装过程中会格式化掉),需切换到光盘启动模式。BOIS中开启虚拟化设置(virtualization设置成enable) VMware vSphere Hypervisor 自启动盘 安装过程 1.安装VMware vSphere Hypervisor确保机器中无操作系统,并且设置BIOS到光盘启 动模式 2.插入光盘,引导进入安装界面。 3.选择需要安装在硬盘 4.选择keyboard 类型,默认US DEFAULT

5.设置ROOT的密码 6.安装完毕后,请注意弹出光盘。然后重启。 7.F2进入系统配置界面。

8.选择到Configure management network去配置网络。

9.配置完毕后,注意重启网络以使设置生效,点击restart management network,测 试网络设置是否正确,点test management network。至此,sever端安装完毕。配置 1.添加机器名:在DNS服务器上添加相关正反解析设置。 2.License设置:Vsphere client登陆后,清单→配置→已获许可的功能→编辑 输入license

3.时间与NTP服务设置:Vsphere client登陆后,清单→配置→时间配置→属性 钩选上NTP客户端 选项中,NTP设置设添加NTP服务器,然后在常规中开启NTP服务

历史上一些圆周率计算方法

历史上一些圆周率计算方法 从古至今,计算圆周率一直挑战着人类的探索能力极限,人们为此提出了效率越来越高的计算方法。可是,你知道多少圆周率的另类计算法呢?今天我们就来和大家分享一下,历史上出现的几个最奇怪的圆周率计算法。 功亏一篑的人肉计算记录 电脑计算圆周率屡破记录,但新时代对机器的信任和依赖使得人们已经主动放弃了自己手动演算的能力。为了打破手算圆周率的记录,让人们重新拾回对自己演算能力的信心,澳大利亚一个 16 岁的小伙子决定人肉计算圆周率的前 100 位。他挑选了圆周率的一个广义连分数公式,准备了 2000 张草稿纸,并精心地规划了一番。从此开始,他总是把这厚厚的一叠草稿纸带在身边。不管是在家还是在学校,他都端坐在草稿纸面前,不停地挥动着手中的笔。他很快成为了学校的一道风景线——无视上下课铃声,雷打不动地做着枯燥的加法和除法。 2 年后的某堂历史课上,就在他书写最后一个除法竖式时,悲剧发生了:新来的代课老师发现他有小动作,点名叫他起来回答问题。当他无视老师继续埋头苦算时,不明真相的代课老师一怒之下抢过草稿纸,并撕成了无数碎片。 最辗转的计算方法 在一本统计学读物中,为了告诉读者在日常生活中数字无处不在,作者统计出了自家厕所的卷筒纸平均每多少天换一次,乘以平均每天的大便次数,乘以平均每次大便需要扯下来的卫生纸张数,乘以每一截卫生纸的长度,乘以把一长截卫生纸对折 10 次的厚度,除以 1024 ,除以自动切割机从卷筒纸最外层切到最里层(厚度为 R-r )的时间,除以切完整个卷筒纸(剩余的 R+r )还需要的时间,除以切割机移动的速度,得出了圆周率近似值。 作者顺便指出,若读者愿意,还可以在末尾乘以平均每个男人拥有的 jj 根数。 用生命换来的圆周率 这个多少有些标题党了,但实际情况就是如此——这个 3.14 真的是由无数人的鲜血换来的。 2003 年,美国纽约警方搜集了 30 年来发生在斑马线上的车祸,从里面抽取了所有身高在 5 英尺 6 英寸到 8 英寸之间(大概从 1.68 米到 1.73 米)的遇难行人,统计了他们的尸体与斑马线相交的概率,并应用Buffon 投针实验理论得到了圆周率的近似值。纽约警方还专门发表了文章,称由此他们得出,行人被撞事故是完全随机的,一切都是遵循大自然的规律的。文章末尾请求出行人看开一些,生命在规律面前弱不禁风,该发生的总会发生。 凶案现场也有圆周率

MPI并行编程实验报告

MPI并行编程实验报告 起讫日期:xx-05-20 ~全文结束》》-06-15组名:第四组院系:计算机学院专业:计算机科学与技术指导老师:XXX 教授xx 年6月15日实验一Linux下基于MPI的hello程序设计Author:姓名 一、MPICH并行计算库安装在Linux环境下安装MPICH执行环境,配置MP D、CONF, 完成实验室中临近机器间的并行配置。概要:以寝室四台计算机为例,设置IP(1 92、1 68、1、1~1 92、1 68、1、4),更改主机名为node01,node02,node03, node04。 (一)创建SSH信任连接 1、更改/etc/hosts文件#vi /etc/hosts 打开hosts文件,更改如下:1 27、0、0、1 localhost、localdomain localhost1 92、1 68、1、1 node011 92、1

68、1、2 node021 92、1 68、1、3 node031 92、1 68、1、4 node0 42、在node01生成SSH秘钥对、#ssh-keygena 查看是否有、ssh文件夹 3、进入、ssh目录#cd 、ssh 4、生成authorized_keys文件#cp id_rsa、pub authorized_keys 5、退出到root目录#cd 、、 6、建立本身的信任连接#ssh node01 按提示输入yes(三个字母要打全) 7、设置node02(node02的root目录下)#ssh-keygenzxvf mpich2- 1、0、1、tar、gz 2、创建安装目录#mkdir /usr/MPICH-instsll 3、进入mpich2解压目录#cd mpich2- 1、0、 14、设置安装目录#、/configureprefix=/usr/MPICH- install 5、编译#make 6、安装#make install

《并行计算》实验教学大纲

《并行计算》实验教学大纲 课程名称:并行计算 英文名称:Parallel Computing 课程编号: 课程性质:课程类型:专业选修是否为独立设课的实验课:否 适用专业:软件工程专业 学时与学分:总学时:72 总学分:3.5 实验学时:16 实验学分:0.5 执笔人:陆克中 制定时间:2012-3-12 一、实验课的任务、性质与目的 《并行计算》是一门实践性很强的课程,除了系统的课堂理论学习外,还配有足够数量的实践内容,以巩固和加深学生对并行算法理论、设计技术、分析方法和具体实现等各个环节的整体理解。通过课程实践,强化学生“结构—算法—编程”一体化学习方法的意识,充分理解对于求解一个给定问题的任何并行算法,都必须采用某种并行编程语言,最终运行在一台具体的并行计算机上。 根据并行计算课程的要求,其实验教学的要求如下: (1) 熟悉三种以上的主流并行计算平台,包括共享存储的多处理机、分布存储的多计算机和目前流行的PC机群,要求学生能够使用上述几种并行计算平台所提供的硬/软件环境及工具来开展自己的实验工作。 (2) 掌握至少两种并行程序设计语言标准:即分布存储的MPI和共享存储的OpenMP。对面向大型科学和工程计算的HPF(高性能Fortran)也应尽量了解和熟悉。 (3) 选择某些典型的非数值并行算法和数值并行算法,使用上述的并行编程语言标准,至少在PC机群上编程调试、分析和运行它们。 (4) 为了入门,选用课程中简单的计算π的样本程序为出发点,通过使用不同的并行程序设计模型和不同的并行编程语言,在不同的硬件编程环境上改造和重现,以便为进一步的实践打下基础。 学习本课程的过程中,这些实践环节是非常必要的和重要的,它可以激发学生学习并行计算的积极性,缩小理论教学和实际应用能力之间的差距,引导学生进入一个思考和探索的世界,在这个世界里,他们是学习的主动参与者,而不再是被动的接受者。 二、主要仪器设备及环境 硬件设备:机群计算机 软件环境:Linux MPICH PVM

相关文档
最新文档