.. . .
实习一 数据文件的转换及数据描述文件的建立
一、实习资料:
现在“data”文件夹下有ASCII码数据资料文件:月平均风场 (u200.dat、u850.dat、v200.dat、v850.dat)、月平均高度场 (hgt500.dat),2002.1-2005.12共48个月,资料的水平网格围是M×N个网格点(M=37,N=17),分辨率为2.5°×2.5°,自西向东经度60-150°E,由南至北纬度0-40°N。 二、 实习要求:
编写出将ASCII码数据资料文件:月平均风场和月平均高度场分别转换成二进制无格式直接存取(GrADS数据格式)文件(uv.grd和hgt.grd文件)的Fortran程序,给出相应的数据描述文件(uv.ctl和hgt.ctl文件),并利用GrADS基本操作命令显示该地区850hPa和200hpa uv风场,最后保存图形。 三、实习目的:
通过编写该程序,进一步熟悉数据GrADS的数据格式,熟练编写将ASCII码数据转换为二进制格式的Fortran程序以及建立相应的CTL文件。 四、实习步骤:
4.1 利用“写字板”程序打开*.dat数据文件,熟悉该数据资料;
4.2 按要求编写Fortran程序,将所给的ASCII码数据资料文件转换成二进制无格式直接存取文件,结果保存为mhy.grd;
4.3 通过“写字板”或“记事本”程序编写相应的数据描述文件,保存为mhy.ctl; 4.4 画出2002年1月850hpa风场图,与图1比较验证数据正确性;
4.5 利用GrADS基本操作命令(open,display,print等)显示2002年7月850hpa和200hpa uv风场图形; 4.5 完成实习报告
. 学习.资料.
.. . .
1)说明所用资料
资料名称:月平均风场 (u200.dat、u850.dat、v200.dat、v850.dat);
月平均高度场 (hgt500.dat)
围:60~150E,0~40N.
层次:风场,850 hPa、200hPa;高度场,500hPa; 时段:2002.1~2005.12共48个月。 变量名:u v hgt
分辨率:2.5*2.5,格点数:37*17 资料读取文件:data.f90
2)给出所编写的Fortran程序:
parameter(nx=37,ny=17,nz=1,nt=48) dimension
u1(nx,ny,nz,nt),v1(nx,ny,nz,nt),u2(nx,ny,nz,nt),v2(nx,ny,nz,nt),hgt(nx,ny,nz,nt)
open(1,file='u200.dat') open(2,file='v200.dat') open(3,file='u850.dat') open(4,file='v850.dat') open(11,file='hgt500.dat')
open(12,file='uv.grd',form='binary') open(13,file='hgt500.grd',form='binary')
do 100 it=1,nt do 50 iz=1,nz read(1,*)
((u1(i,j,iz,it),i=1,nx),j=1,ny) read(3,*)
((u2(i,j,iz,it),i=1,nx),j=1,ny) 50 continue do 51 iz=1,nz read(2,*)
((v1(i,j,iz,it),i=1,nx),j=1,ny) read(4,*)
((v2(i,j,iz,it),i=1,nx),j=1,ny) 51 continue do 52 iz=1,nz read(11,*)
((hgt(i,j,iz,it),i=1,nx),j=1,ny)
3)给出所编写的数据描述文件
52 continue 100 continue do 200 it=1,nt do 30 iz=1,nz write(12)
((u2(i,j,iz,it),i=1,nx),j=1,ny) write(12)
((u1(i,j,iz,it),i=1,nx),j=1,ny) 30 Continue do 31 iz=1,nz write(12)
((v2(i,j,iz,it),i=1,nx),j=1,ny) write(12)
((v1(i,j,iz,it),i=1,nx),j=1,ny) 31 continue do 55 iz=1,nz write(13)
((hgt(i,j,iz,it),i=1,nx),j=1,ny) 55 continue 200 continue CLOSE(1) CLOSE(2) CLOSE(3) CLOSE(4) CLOSE(11) CLOSE(12) CLOSE (13) end
. 学习.资料.
.. . .
uv.ctl:
dset C:\\GrADS19\%uv.grd undef -9.99E+13 title two levels air data xdef 37 linear 60.0 2.5 ydef 17 linear 0.0 2.5 zdef 2 levels 850 200 tdef 48 linear JAN2002 1mo vars 2
u 2 99 u wind(m/s) v 2 99 v wind(m/s) endvars
文件*.GS 'reinit'
'open c:\\data\%uv.ctl' *ctl路径 'set grid off'
hgt.ctl
dset C:\\GrADS19\\hgt.grd undef -9.99E+13
title the attitude of 500hpa xdef 37 linear 60.0 2.5 ydef 17 linear 0.0 2.5 zdef 1 levels 500
tdef 48 linear JAN2002 1mo vars 1
h 0 99 attitude endvars
. 学习.资料.
.. . .
'set grads off' 'set lat 0 40’ 'set lon 60 150' ' set time jul2002' 'set lev 850' 'set gxout vector' 'd u;v'
'draw title Air data in 200201 850' 'printim c:\\images\%uv8.png white' 'c'
'set lev 200' 'set gxout vector' 'd u;v'
'draw title Air data in 200201 200' 'printim c:\\images\%uv2.png white'
4)给出所绘制的图形
2002年1月850hpa高度的风场图
. 学习.资料.
.. . .
2002年7月850hpa 高度的风场图
2002年7月200hpa高度的风场图:
实习二 基本命令的上机使用(2小时)
1.实习资料:
现在“data”文件夹下有GrADS数据格式的二进制资料文件model.le.dat
. 学习.资料.