±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 430  |  »Ø¸´: 4
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£
µ±Ç°Ö»ÏÔʾÂú×ãÖ¸¶¨Ìõ¼þµÄ»ØÌû£¬µã»÷ÕâÀï²é¿´±¾»°ÌâµÄËùÓлØÌû

jianchaoyv

½ð³æ (СÓÐÃûÆø)

[½»Á÷] ¡¾ÇóÖú¡¿Çë½Ìfortran³ÌÐò³ö´íÎÊÌâ

ÎÊÌâÒ»£º³ÌÐòÈçÏ£º
program initial_velocity
implicit none
!we assumed m=1,k=1
real*8,parameter::temp=300.0
integer,parameter::N=10
integer::i
real*8,dimension(1:N)::vx,vy,vz
write(*,'(1x,a,8x,a,10x,a,10x,a)')'n','vx','vy','vz'
call comvel(temp)
  do i=1,N
   write(*,'(i2,2x,f10.3,2x,f10.3,2x,f10.3)')i,vx(i),vy(i),vz(i)
  end do
end program initial_velocity



subroutine comvel(temp)
integer,parameter::N=10
integer::i
real*8,dimension(1:N)::vx,vy,vz

real*8::temp,Rtemp,sumx,sumy,sumz
real*8::gauss,dummy
Rtemp=sqrt(temp)

  do i=1,N
    vx(i)=Rtemp*gauss(dummy)
        vy(i)=Rtemp*gauss(dummy)
        vz(i)=Rtemp*gauss(dummy)
  end do

sumx=0.0
sumy=0.0
sumz=0.0
  do i=1,N
    sumx=sumx+vx(i)
        sumy=sumy+vy(i)
        sumz=sumz+vz(i)
  end do

sumx=sumx/real(N)
sumy=sumy/real(N)
sumz=sumz/real(N)
  do i=1,N
    vx(i)=vx(i)-sumx
        vy(i)=vy(i)-sumy
        vz(i)=vz(i)-sumz
  end do
  return
end subroutine comvel


function gauss(dummy)
   real*8,parameter::A1=3.949846138,A3=0.252408784
   real*8,parameter::A5=0.076542912,A7=0.008355968
   real*8,parameter::A9=0.029899776
   real*8::sum,R,R2,dummy
   integer::i
   sum=0.0
    call random_seed()
   do i=1,12
     call random_number(dummy)
         sum=sum+dummy
   end do
   R=(sum-6.0)/4.0
   R2=R*R
   gauss=((((A9*R2+A7)*R2+A5)*R2+A3)*R2+A1)*R
   return
end function gauss
ÔËÐкó½á¹û£º
n        vx          vy          vz
1       0.000       0.000       0.000
2       0.000       0.000       0.000
3       0.000       0.000       0.000
4       0.000       0.000       0.000
5       0.000       0.000       0.000
6       0.000       0.000       0.000
7       0.000       0.000       0.000
8       0.000       0.000       0.000
9       0.000       0.000       0.000
10       0.000       0.000       0.000
Press any key to continue
ÇëÎÊÔõÑùÄܵõ½ËùÐèµÄËæ»úÊýÖµ£¿£¿


ÎÊÌâ¶þ£ºÎªÑéÖ¤ÉÏÃæ³ÌÐòÖв¿·Ö³ÌÐò¶Î£¬ÎÒдÁíÒ»³ÌÐòÈçÏ£º
program a_1
implicit none
real*8::gauss,dummy,Rtemp
integer,parameter::N=10
integer::i
real,dimension(1:N)::vx,vy,vz
real,parameter::temp=300.0
Rtemp=sqrt(temp)
do i=1,N
    vx(i)=Rtemp*gauss(dummy)
    vy(i)=Rtemp*gauss(dummy)
    vz(i)=Rtemp*gauss(dummy)
         print*,vx(i),vy(i),vz(i)
end do
end program a_1


function gauss(dummy)
   real*8,parameter::A1=3.949846138,A3=0.252408784
   real*8,parameter::A5=0.076542912,A7=0.008355968
   real*8,parameter::A9=0.029899776
   real*8::sum,R,R2,dummy
   integer::i
   sum=0.0
   
   do i=1,12
   call random_seed()
     call random_number(dummy)
         sum=sum+dummy
   end do
   R=(sum-6.0)/4.0
   R2=R*R
   gauss=((((A9*R2+A7)*R2+A5)*R2+A3)*R2+A1)*R
   return
end function gauss
ÔËÐнá¹ûÓÐʱֵȫ²¿Ò»Ñù£¬ÓÐʱ²¿·ÖÒ»Ñù£¬µ«¶ÔӦͬһ¸öi ʱvx(i),vy(i),vz(i)ʼÖÕÖµÒ»Ñù½á¹ûÈçÏ£º
½á¹û£¨1£©£º   
  49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
   49.20191       49.20191       49.20191
Press any key to continue
½á¹û£¨2£©£º   
  82.36326       82.36326       82.36326
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
  -72.15305      -72.15305      -72.15305
Press any key to continue
Çë¶à¶àÖ¸½Ì£¡£¡
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

ÀÏ»¢´óÍõ

ľ³æ (ÖøÃûдÊÖ)

¡ï ¡ï
sunxiao(½ð±Ò+2,VIP+0):лл²ÎÓ룬»¶Ó­³£À´·ÂÕæ±à³Ì°æ 4-15 09:00
°¡£¿ÔõÑù´«°¡£¿±ÈÈçÄãÓøöcall comvel(temp, vx,vy,vz)°É¡£»òÕß°Ñvx,vy,vz  Êý×éÉèΪȫ¾Ö±äÁ¿£¨ÓÃCOMMON)¡£
5Â¥2009-04-15 08:32:16
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
²é¿´È«²¿ 5 ¸ö»Ø´ð

jianchaoyv

½ð³æ (СÓÐÃûÆø)

ÆÚ´ýby ÀÏ»¢´óÍõµÄÖ¸µã£¡£¡
2Â¥2009-04-14 18:01:29
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

ÀÏ»¢´óÍõ

ľ³æ (ÖøÃûдÊÖ)

¡ï ¡ï ¡ï ¡ï ¡ï
jianchaoyv(½ð±Ò+5,VIP+0): 4-14 21:25
µÚÒ»¸öÎÊÌ⣺ΪʲôÊä³öÈ«ÊÇÁãÄØ£¿ÒòΪ
call comvel(temp)
  do i=1,N
   write(*,'(i2,2x,f10.3,2x,f10.3,2x,f10.3)')i,vx(i),vy(i),vz(i)
  end do
ÔÚÕâÀÄãûÓаÑvx,vy,vz´«µ½×Ó³ÌÐòÀµ±È»Êä³öµÄ¶¼ÊÇÁã¡£

µÚ¶þ¸öÎÊÌ⣬ÎÒ½¨ÒéÄãÔËÐÐÒÔÏÂÕâÁ½¸öС³ÌÐò£¬²âÊÔһϠ  random_seed()ºÍrandom_number(dummy)µÄÓ÷¨¡£

³ÌÐòÒ»£º£¨ÕâÊÇÄãµÄ³ÌÐòд·¨£©
     do i=1,12
    call random_seed()
     call random_number(dummy)
   write(*,*)  dummy
   enddo
   end
µÃµ½Ê²Ã´£¿ºÇºÇ£¬È«¶¼Ò»ÑùµÄËæ»úÊý¡£µ«ÊÇ£¬Ã¿ÔËÐÐÒ»´Î£¬¾ÍÓв»Í¬µÄÐòÁС£

³ÌÐò¶þ£º °Ñrandom_seed()·ÅÔÚÍâÃæ£º
     call random_seed()
       do i=1,12
     call random_number(dummy)
         write(*,*)  dummy
         enddo
         end

µÃµ½Ê²Ã´£¿²»Í¬µÄËæ»úÊý£¡

ËùÒÔ£¬ÄãÓ¦¸Ã°Ñ  call random_seed()дÔÚÑ­»·µÄÍâ±ß£¡

µ«ÊÇ£¬Äã°ÑCall random_seed()дÔÚ×Ó³ÌÐòÖÐÑ­»·µÄÍâ±ßÖ®ºó£¬ÓÖÈçºÎÄØ£¿
ÓÖÊÇͬÑùµÄËæ»úÊý£¡£¡£¡ÎªÊ²Ã´ÄØ£¿ÒòΪÄãÔÚÖ÷³ÌÐòÖз´¸´µ÷ÓÃÁËGauss£¬»¹ÊÇÏ൱ÓÚ°ÑCall random_seed()дÔÚÁËÑ­»·ÄÚ²¿¡£

×îºóÎÒÃÇÖªµÀ£¬ÕýÈ·µÄд·¨Ó¦¸Ã°ÑCall random_seed()дÔÚÖ÷³ÌÐòµÄ¿ªÍ·£¡£¡£¡ºÇºÇ¡£

×¢£ºÎÒÖ»¹Ü±à³Ì£¬Ã»Óп¼²ìËã·¨µÄÕýÈ·Óë·ñ¡£
3Â¥2009-04-14 19:45:56
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

jianchaoyv

½ð³æ (СÓÐÃûÆø)

¡°µÚÒ»¸öÎÊÌ⣺ΪʲôÊä³öÈ«ÊÇÁãÄØ£¿ÒòΪ
call comvel(temp)
  do i=1,N
   write(*,'(i2,2x,f10.3,2x,f10.3,2x,f10.3)')i,vx(i),vy(i),vz(i)
  end do
ÔÚÕâÀÄãûÓаÑvx,vy,vz´«µ½×Ó³ÌÐòÀµ±È»Êä³öµÄ¶¼ÊÇÁã¡£¡±
ÇëÎÊÔõÑù°Ñvx,vy,vz´«µ½×Ó³ÌÐòÀ£¿
4Â¥2009-04-14 21:46:05
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 291Çóµ÷¼Á +4 Y-cap 2026-03-29 5/250 2026-03-29 08:08 by Î޼ʵIJÝÔ­
[¿¼ÑÐ] Ò»Ö¾Ô¸¹þ¶û±õ¹¤Òµ´óѧ²ÄÁÏÓ뻯¹¤·½Ïò336·Ö +9 ³½ãå5211314 2026-03-26 9/450 2026-03-29 01:12 by ÎÒÊÇС¿µ
[¿¼ÑÐ] 0703 »¯Ñ§ Çóµ÷¼Á£¬Ò»Ö¾Ô¸É½¶«´óѧ 342 ·Ö +4 Shern¡ª- 2026-03-28 4/200 2026-03-29 00:47 by 544594351
[¿¼ÑÐ] 332Çóµ÷¼Á +4 @MZB382400 2026-03-28 4/200 2026-03-28 21:02 by ÌÆãå¶ù
[¿¼ÑÐ] ±¾¿ÆÐÂÄÜÔ´¿ÆÑ§Ó빤³Ì£¬Ò»Ö¾Ô¸»ªÀíÄܶ¯285Çóµ÷¼Á +3 AZMK 2026-03-27 5/250 2026-03-28 16:19 by xxxsssccc
[¿¼ÑÐ] 311Çóµ÷¼Á +4 ¶¬Ê®Èý 2026-03-24 4/200 2026-03-28 13:17 by ÌÆãå¶ù
[¿¼ÑÐ] 292Çóµ÷¼Á +14 ¶ì¶ì¶ì¶î¶î¶î¶î¶ 2026-03-25 15/750 2026-03-28 08:45 by WYUMater
[¿¼ÑÐ] »¯Ñ§µ÷¼Á +4 °®³Ô·¬ÇѵÄÐñ 2026-03-24 5/250 2026-03-27 17:50 by kiokin
[¿¼ÑÐ] Ò»Ö¾Ô¸211£¬335·Ö£¬0856£¬Çóµ÷¼ÁԺУºÍµ¼Ê¦ +4 Çã____Ïô 2026-03-27 5/250 2026-03-27 11:52 by zhshch
[¿¼ÑÐ] 333Çóµ÷¼Á +3 questionÍì·ç 2026-03-23 3/150 2026-03-27 11:29 by ²»³Ôô~µÄ؈
[¿¼ÑÐ] µ÷¼Á +3 Àî¼Îͼ¡¤S¡¤Â· 2026-03-27 3/150 2026-03-27 11:19 by wangjy2002
[¿¼ÑÐ] 0703»¯Ñ§338Çóµ÷¼Á£¡ +6 Zuhui0306 2026-03-26 7/350 2026-03-27 10:35 by shangxh
[¿¼ÑÐ] Çóµ÷¼Á£¬Ò»Ö¾Ô¸ ÄϾ©º½¿Õº½Ìì´óѧ´óѧ £¬080500²ÄÁÏ¿ÆÑ§Ó빤³Ìѧ˶ +4 @taotao 2026-03-26 5/250 2026-03-27 08:10 by hypershenger
[¿¼ÑÐ] Öйú¿ÆÑ§ÔºÉîÛÚÏȽø¼¼ÊõÑо¿Ôº-¹âÏË´«¸Ð¿ÎÌâ×éÕÐÉú-Öйú¿ÆÑ§Ôº´óѧ¡¢ÉîÛÚÀí¹¤´óѧÁªÅà +5 YangTyu1 2026-03-26 5/250 2026-03-26 18:27 by èßäèßäѽ
[¿¼ÑÐ] Ò»Ö¾Ô¸ºÓ¹¤´ó 081700 276Çóµ÷¼Á +4 µØÇòÈÆ×ÅÌ«Ñôת 2026-03-23 4/200 2026-03-26 14:27 by zzll406
[¿¼ÑÐ] 290·Öµ÷¼ÁÇóÖú +3 ¼ªÏéÖ¹Ö¹³Â 2026-03-25 3/150 2026-03-25 19:58 by barlinike
[¿¼ÑÐ] ¿¼ÑÐÒ»Ö¾Ô¸ËÕÖÝ´óѧ³õʼ315£¨Ó¢Ò»£©Çóµ÷¼Á +3 sbdksD 2026-03-24 4/200 2026-03-25 18:16 by xcjcqu
[¿¼ÑÐ] 296Çóµ÷¼Á +4 Íô£¡£¿£¡ 2026-03-25 7/350 2026-03-25 16:41 by Íô£¡£¿£¡
[¿¼ÑÐ] 0854µç×ÓÐÅÏ¢Çóµ÷¼Á 324 +4 Promise-jyl 2026-03-23 4/200 2026-03-25 11:36 by Sugarlight
[¿¼ÑÐ] 333Çóµ÷¼Á +3 ALULU4408 2026-03-23 3/150 2026-03-23 19:04 by macy2011
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û