2024年5月29日发(作者:蔺颀)
实用文档
实习一 数据文件的转换及数据描述文件的建立
一、实习资料:
现在“data”文件夹下有ASCII码数据资料文件:月平均风场 (、、
、)、月平均高度场 (),2002.1-2005.12共48个月,资料的水
平网格范围是M×N个网格点(M=37,N=17),分辨率为2.5°×2.5°,自西向东经度60-150°
E,由南至北纬度0-40°N。
二、 实习要求:
编写出将ASCII码数据资料文件:月平均风场和月平均高度场分别转换成二进制无格式直
接存取(GrADS数据格式)文件(和文件)的Fortran程序,给出相应的数据
描述文件(和文件),并利用GrADS基本操作命令显示该地区850hPa和200hpa
uv风场,最后保存图形。
三、实习目的:
通过编写该程序,进一步熟悉数据GrADS的数据格式,熟练编写将ASCII码数据转换为二
进制格式的Fortran程序以及建立相应的CTL文件。
四、实习步骤:
4.1 利用“写字板”程序打开*.dat数据文件,熟悉该数据资料;
4.2 按要求编写Fortran程序,将所给的ASCII码数据资料文件转换成二进制无格式直接存取
文件,结果保存为;
4.3 通过“写字板”或“记事本”程序编写相应的数据描述文件,保存为;
4.4 画出2002年1月850hpa风场图,与图1比较验证数据正确性;
4.5 利用GrADS基本操作命令(open,display,print等)显示2002年7月850hpa和200hpa uv
风场图形;
4.5 完成实习报告
1)说明所用资料
资料名称:月平均风场 (、、、);
月平均高度场 ()
范围: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='')
open(2,file='')
open(3,file='')
open(4,file='')
open(11,file='')
open(12,file='',form='binary')
open(13,file='',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)
52 continue
3)给出所编写的数据描述文件
:
dset C:
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
标准
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
u 2 99 u wind(m/s)
v 2 99 v wind(m/s)
endvars
2024年5月29日发(作者:蔺颀)
实用文档
实习一 数据文件的转换及数据描述文件的建立
一、实习资料:
现在“data”文件夹下有ASCII码数据资料文件:月平均风场 (、、
、)、月平均高度场 (),2002.1-2005.12共48个月,资料的水
平网格范围是M×N个网格点(M=37,N=17),分辨率为2.5°×2.5°,自西向东经度60-150°
E,由南至北纬度0-40°N。
二、 实习要求:
编写出将ASCII码数据资料文件:月平均风场和月平均高度场分别转换成二进制无格式直
接存取(GrADS数据格式)文件(和文件)的Fortran程序,给出相应的数据
描述文件(和文件),并利用GrADS基本操作命令显示该地区850hPa和200hpa
uv风场,最后保存图形。
三、实习目的:
通过编写该程序,进一步熟悉数据GrADS的数据格式,熟练编写将ASCII码数据转换为二
进制格式的Fortran程序以及建立相应的CTL文件。
四、实习步骤:
4.1 利用“写字板”程序打开*.dat数据文件,熟悉该数据资料;
4.2 按要求编写Fortran程序,将所给的ASCII码数据资料文件转换成二进制无格式直接存取
文件,结果保存为;
4.3 通过“写字板”或“记事本”程序编写相应的数据描述文件,保存为;
4.4 画出2002年1月850hpa风场图,与图1比较验证数据正确性;
4.5 利用GrADS基本操作命令(open,display,print等)显示2002年7月850hpa和200hpa uv
风场图形;
4.5 完成实习报告
1)说明所用资料
资料名称:月平均风场 (、、、);
月平均高度场 ()
范围: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='')
open(2,file='')
open(3,file='')
open(4,file='')
open(11,file='')
open(12,file='',form='binary')
open(13,file='',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)
52 continue
3)给出所编写的数据描述文件
:
dset C:
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
标准
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
u 2 99 u wind(m/s)
v 2 99 v wind(m/s)
endvars