作者chun15 (小红帽)
看板Fortran
标题[问题] 常态分配
时间Wed Dec 2 17:38:09 2009
老板要求开始跑模拟了,可是fortran是我五年前学过的
而且只学过初级的 > <
这次我要模拟出mean =10 20 30 40 50 标准差 = 1 的常态分配
X~N(10,1), N(20,1), N(30,1),N(40,1),N(50,1)各要模拟5个值
每组要10次
可是我现在只能做出mean=10
可是不知道该怎麽在写出个回圈跑mean
这个程式是之前有位版大写的
Program normal
use msimsl
IMPLICIT NONE
integer I,j,M,NR,ISEED,NOUT
real R(10),RAND(5),XM,XSTD
DO 100 I=1,10 !→产生样本的组数为M 组
DO 50 J=1,5 !→产生每组有5 个随机常态的样本点
NR =5
XM=10
XSTD=1
CALL RNSET(ISEED)
CALL UMACH(2,NOUT)
R(I) =RNNOF()
CALL RNGET(ISEED)
CALL RNNOA (NR, R)
CALL SSCAL (NR,XSTD,R,1)
CALL SADD (NR,XM,R,1)
RAND(J)=R(5)
50 CONTINUE
WRITE (NOUT,99999) RAND
99999 FORMAT ('Normal Random Deviates: ', 5F8.4)
100 CONTINUE
end Program normal
请问我该怎麽再加一个回圈跑mean呢?
麻烦大家帮我一下,谢谢~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.75.100