- 积分
- 288
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2011-10-26
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2014-12-5 12:30:52
|
显示全部楼层
还是换成F来编
parameter (nx=122,ny=102,nxx=2,nyy=1)
real u(nx,ny),uu(nx,ny),uuu(nx,ny),x,y,b(nxx,nyy),b1,b2,b3,b4
open (1,file='uenv850.grd',form='unformatted',
& access='direct', recl=nx*ny)
irec=0
irec=irec+1
read (1,rec=irec) ((u(i,j),i=1,nx),j=1,ny)
open (2,file='bama.txt')
read (2,*) ((b(i,j),i=1,nxx),j=1,nyy)
print *, b
open (4,file='uenv850yb.grd',form='unformatted',
& access='direct', recl=nx*ny)
irec=0
irec=irec+1
read (4,rec=irec) ((uu(i,j),i=1,nx),j=1,ny)
b1=b(1,1)+4
print *,b1
b2=b(1,1)-4
print *,b2
b3=b(2,1)+4
print *,b3
b4=b(2,1)-4
print *,b4
do 40 j=1,ny,1
y=0+(j-1)*0.5
print *,y
do 30 i=1,nx,1
x=90+(i-1)*0.5
* print *,x
if(((x.LE.b3).AND.(x.GE.b4)).AND.((y.LE.b1).AND.(y.GE.b2)))then
u(i,j)=0
endif
30 continue
40 continue
do 60 j=1,ny,1
y=0+(j-1)*0.5
do 50 i=1,nx,1
x=90+(i-1)*0.5
if((x.LT.b4).OR.((x.GT.b4).AND.(y.GT.b1)).OR.((x.GT.b4).AND.
&(y.LT.b2)).OR.((x.GT.b3).AND.(y.LT.b1).AND.(y.GT.b2)))then
uu(i,j)=0.0
endif
50 continue
60 continue
do 80 j=1,ny
do 70 i=1,nx
uuu(i,j)=u(i,j)+uu(i,j)
70 continue
80 continue
open(200,file='uenv850hj.dat',form='unformatted',
& access='direct',recl=nx*ny)
irec=1
write(200,rec=irec) ((uuu(i,j),i=1,nx),j=1,ny)
end
|
|