Peggy's profilePeggy's WonderlandPhotosBlogListsMore ![]() | Help |
|
November 12 好久没有在compile的时候,自己把所有错误都找出来了经过n个小时的奋斗,终于写好了FORTRAN计算每层大气中水汽含量的程序了.
而且而且而且,嘿嘿嘿嘿,ERROR和WARNING都是0个!
虽然没有运行过,因为我的计算机不识别.dat,所以文件里的数据读不进去,
但是,对于我这个计算机白痴来说已经是划时代的了!!!!!!!!!!!
庆祝,庆祝!普天同庆!!!!!
下面把我伟大的程序贴上来炫耀下,
不过内行的就表细看了,嘿嘿~
贻笑大方的.....
因为我只会用简单的语句对付复杂的程序,
导致程序的长度让人和计算机咋舌......
program waterearth2
! for calculation the atmosphere water implicit none integer,parameter::nx=144,ny=73,nt=1,lev2=8,lev3=7 real,parameter::g=9.8,pi=3.14 integer il,i,j integer::R=6400000 real q0(nx,ny,lev2),w(nx,ny,lev3),qq(nx,ny,lev2),total(nx,ny),p1,p2,iw37 real :: s(ny) real :: l(ny) integer :: pressure(lev2) real :: averqq(144,72) real :: averq(144,72,lev2) real :: wtotal(145,72) real :: wlayer(nx,ny,lev2) 888 format(12f10.3)
open (27,file='wat-earth-jul.dat',form='formatted') open (17,file='q-earth-jul.dat',form='formatted',status='old') read(17,*)q0 pressure(1)=1000
pressure(2)=925 pressure(3)=850 do i=4,8,1 pressure(i)=700-(i-4)*100 end do total=0.0
do il=1,lev2
read(17,*) read(17,888) ((q0(i,j,il),i=1,nx),j=1,ny) enddo qq=q0*0.001 !cccceeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee !It's for you! s(1)=0.5*(2*R*sin(2.5)*pi/144)*(2*pi*R/144)
l(1)=2*R*sin(2.5)*pi/144 j=2 do while(j<=72) l(j)=abs(2*R*sin(2.5*i)*pi/144) s(j)=0.5*(l(i-1)+l(i))*(2*pi*R/144) end do !calculate the area of every grid of the earth w(1,1,1)=0
do i=1,144,1 do j=1,73,1 do il=2,8,1 w(i,j,il)=w(i,j,il-1)+0.5*(qq(i,j,il-1)+qq(i,j,il))*(pressure(il-1)-pressure(il))/g end do end do end do !gain the contain of water of every air column do i=1,144,1 averqq(i,1)=(w(1,1,8)+w(i,2,8)+w(i+1,2,8))/3 averqq(i,72)=(w(144,73,8)+w(i,72,8)+w(i+1,73,8))/3 end do !the average water contains in the center of the grid do i=2,143,1
do j=2,72,1 averqq(i,j)=(w(i,j,8)+w(i,j+1,8)+w(i+1,j,8)+w(i+1,j+1,8))/4 end do end do !the same as the above wtotal(1,1)=0
do j=1,ny,1 do i=1,144,1 wtotal(i+1,j)=averqq(i,j)*s(j)+wtotal(i,j) end do end do !add all the water contains in every volumn of the air open (11,file='wat-earth-plr.dat',form='formatted')
write(*,*)wtotal(145,72) do il=2,8,1
do j=1,ny,1 do i=1,nx,1 averq(i,j,1)=0 w(i,j,il)=0.5*(qq(i,j,il-1)+qq(i,j,il))*(pressure(il-1)-pressure(il))/g end do end do end do do il=2,8,1 do i=1,144,1 averq(i,1,il)=(w(i,1,il)+w(i,2,il)+w(i+1,2,il))/3 averq(i,72,il)=(w(144,73,il)+w(i,72,il)+w(i+1,73,il))/3 wlayer(i,1,il)=averq(i,1,il)*s(1) write(*,*)"the water vapor of grid (",i,",1)in 1Q is",wlayer(i,1,il) wlayer(i,72,il)=averq(i,72,il)*s(1) write(*,*)"the water vapor of grid (",i,",72)in 1Q is",wlayer(i,72,il) end do end do !calculate the water vapor contained in every grid of each layer do il=2,8,1 do i=1,144,1 do j=2,72,1 averq(i,j,il)=(w(i,j,il)+w(i,j+1,il)+w(i+1,j,il)+w(i+1,j+1,il))/4 wlayer(i,j,il)=averq(i,j,il)*s(j) write(*,*)"the water vapor of grid (",i,",",j,") in",il,"Q is",wlayer(i,j,il) end do end do end do END November 08 阶段性的看不清未来晚上去赶校车,南京浸在雾霾中,
头疼的像裂开一样,因为担心自己手机的时间慢了,
就一路跑到化学楼。
在跑到青岛路过新杂志的那条小巷时,
突然很没归属感的开始恐惧,
天已经完全黑了,小巷因为下了雾,幽幽的找不到方向。
最近生活质量很低,补大堆的欠下的讨厌的编程作业,
且反复的生病了。。。。。
然后然后,我当时很没征兆的在巷子中间傻不啦几的开始:
流眼泪 => 啜泣 => 震惊 => 努力压抑 => 斗争失败=>猛哭。。。
不过,一向自诩很有理智的我,竟然没有放慢脚步,
早早的出现在校车站点。
其实人有情绪的反复很正常,特别是在换季的时候,
难得是我刚听说明天降温?!导致的?!
但在整个过程中,我一直在想关于未来的问题,
人容易对不确定和看不见的东西产生恐惧,
我站在小巷里,虽然知道自己要往前走,而且也知道往前走会到哪里,
但我还是害怕,是因为对结果的不信任导致的么?
那么我的未来呢,我也知道自己要往前走,但是,
但是,不仅仅是目的地,我甚至连自己的方向都不一定可以把握。
然后。。。恐惧就产生了。。。
也许我在小巷里奔跑的动力不是来源于可能会赶不上校车,
而是来源我当时急于想摆脱这样一种对前路的怀疑。
站着等校车的时候,因为来的太早,
似乎没有人在等,我又开始害怕:难道今天没校车?!
突然明白,未来这个东西,即使不断有人提示和重复,
我们仍然会纠结于它的细节而无力把握,
我现在唯一可以确定和抓住的是心的方向。 November 05 终于考完期中考了考试告一段落,谁知道栖霞山的叶子什么时候红呢?
去年就开始叫嚣要去栖霞山了~
从枫树开始长叶子一直叫到红叶全归根了也没踏上山脚一步。。。
只好对着学校用来喂虫子的红叶一顿猛拍,就当去了栖霞山南大浦口分部了。
班里这周末组织秋游去栖霞山,
但是现在去看不到层林尽染的景象,很犹豫呢。
但是我还从来没参加过班里集体出游的活动呢。
但是大四也许还有集体出游的机会呢。。。
转折好像多了点,嗯。。。很有ETS的风格。。。
唉,等我但是完了,估计班委已经统计完人数了,
到时候,
我就只能说:但是,班委为什么不能多给我点时间考虑呢。。。? |
|
|