- 积分
- 167
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2015-7-12
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2016-5-6 09:48:13
|
显示全部楼层
第一次发帖木有经验见谅,先将站点资料处理成二进制文件,站点的经纬度和数据存放在txt中,其实也不算严格的站点资料,就是各个市的中心经纬度
32.04 118.78 1.145
34.26 117.20 0.372
34.59 119.16 0.222
32.01 120.86 0.561
31.32 120.62 1.450
31.59 120.29 1.660
31.79 119.95 0.961
33.96 118.30 0.190
33.50 119.15 0.204
33.38 120.13 0.195
32.08 121.05 0.561
32.39 119.42 0.475
34.49 119.90 0.497
之后使用fortran程序将其转换为二进制数据,所用程序如下
!----------------------------------------------------------
! This program is used to change the format of ascii data
! into the form of binary ,which is supported by the GrADS
!----------------------------------------------------------
program main
real, dimension(13) :: lat,lon,ind
open(1,file='e:\expojj.txt',status='old')
do i=1,13
read(1,*) lat(i),lon(i),ind(i)
enddo
close(1)
call stntogrd(ind)
end
subroutine stntogrd(x)
character*8 stid(13)
real, dimension(13) :: x,lat,lon
do i=1,13
stid(i)=char(i)
enddo
open(3,file='e:\expojj.grd',form='binary')
tim=0.0
nlev=1
nflag=1
do i=1,13
write(3) stid(i),lat(i),lon(i),tim,nlev,nflag,x(i)
enddo
nlev=0
write(3) stid(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
close(3)
return
end
之后写数据描述文件
dset e:/expojj.grd
dtype station
stnmap e:/expojj.map
undef -999.0
title economic exposure index
tdef 1 linear jul1951 1mo
vars 1
ind 0 99 economic exposure index
endvars
然后利用命令! stnmap生成站点映射文件
之后利用fortran程序生成格点文件,程序如下
Program key
parameter(nx=61, ny=61)
real lat(ny), lon(nx)
real s(nx,ny)
open(1, file= 'e:/grid.grd', form='binary')
lat(1)=25.0
lon(1)=110.0
do j=1,ny-1
lat(j+1)=lat(j)+0.25
enddo
do i=1,nx-1
lon(i+1)=lon(i)+0.25
enddo
do i=1,nx
do j=1,ny
s(i,j)= 1
enddo
enddo
write(1) s
end
写对应的描述文件
dset e:/grid.grd
undef -999.0
title Grid data
xdef 61 linear 110 0.25
ydef 61 linear 25 0.25
zdef 1 linear 500 1
tdef 1 linear jul1951 1mo
vars 1
g 0 99 grid data
endvars
最后的gs文件
'open e:/grid.ctl'
'open e:/expojj.ctl'
'set lon 112.5 122.5'
'set lat 22.5 37.5'
'set mpdset hires cnworld'
'define a=oacres(g,ind.2,0.2)'
'set gxout shaded'
'set gxout contour'
'd a'
'gxprint e:/expojj.png white'
'reinit'
以上就是所有的程序,万分感谢~
|
|