GRADS软件初步学习

本文介绍了GRADS这款主要用于气象数据分析和绘图的软件,包括数据处理、创建数据描述文件(.ctl)、转换数据格式、基本操作流程以及图形设置等步骤。通过实例展示了如何使用GRADS进行数据操作和绘图,强调了维数环境和图形类型设置的重要性,适合初学者入门。
摘要由CSDN通过智能技术生成

因为老师要求,只能学这个奇奇怪怪的东西了,希望以后能用到。

总览:这个小众的供气象工作人员画图的软件是怎么运作的呢?
数据处理(文件是不是GrADS能接受的格式,不行的话就要通过Fortran软件来转换文件格式)–》建立数据描述文件(有的时候直接就有,有时需要手写,我们不能直接使用数据文件,要通过数据描述文件来间接使用数据文件)–》输入GrADS命令或者建立批处理文件完成画图–》看图+存图

**1.格点数据和站点数据:**格点数据是什么呢?我们可以通过经度,纬度,高度在地球上确定一个位置,我们可以将这个位置视作一个格点,而一个格点上又有相应的数据,一些物理变量和时次变化。
此时如果固定了时间和高度,那么所有水平网格点就构成了一个二维网格数据片,每个数据片就是一个数据记录。最后这些二维数据片又组成了实际上的大数组(包含了所有的时空及物理量信息)。

2.数据描述文件:

我们知道了数据描述文件(.ctl)是必须有的,其实这是我们用记事本等编辑器写成的,写成之后文件名后缀用.ctl,保存类型为所有文件就可以了。写成之后如何使用呢?

open D:\GrADS\DATA\model.ctl

打开之后就可以用其他命令对数据文件model.grd进行绘图和处理了。
那么现在还有一个主要问题,数据描述文件要怎么写呢? 下面是个例子

* this is an example to demonstrate the data descriptor file
DEST model.grd      #给定了二进制原始数据文件的文件名,可以包含路径 d:/grads/data/model.grd
TITLE Upper Air Data  #简单地描述数据文件的内容
DTYPE grid     #数据的类别,网格数据
OPTIONS byteswapped  #定义数据格式
UNDEF -9.99E33    #数据文件中有些值是缺失的,并用-9.99E33来标记,我们在进行相应的操作时会忽略掉这些格点

#下面是设置网格点值和经度,纬度,气压面或者说z轴,时间的映射关系(选取linear时:网格点间距相同,用开始值+格距表示这些网格点处的经度/纬度等;
选取levels时网格点间距不同,所有将所有的值都列出来)
XDEF 80 LINEAR -140.0 1.0   #80是x方向网格点的数目,而这些网格点对应的经度值是从-140度开始,以1度为距离变化的(负数代表西经)
YDEF 50 LINEAR 20.0 1.0   #50是y方向的网格点的数目(负数代表南纬)
ZDEF 10 LEVELS 1000 850 700 500 400 300 250 200 150 100  #垂直网格点和气压面的映射关系
TDEF 4 LINEAR 0Z10apr1991 12hr    #网格点和时间的映射关系  这个4是时次数,12hr是间隔,0z10apr1991是开始时间,有自己固定的写法

#变量描述
vars 6  #变量的个数
slp 0 0 sea leavel pressure  #slp是变量名的缩写,sea leavel pressure是对变量的描述
z 10 0 heights   #第一个变量10表示在本数据集中都有几层含有这个变量,0表示该变量只有一层,并且不对应垂直层,如地表变量
t 10 0 temps     #第二个变量是为以后使用预留的,暂时设为0或者99
td 6 0 dewpoints
u 10 0 u winds
v 10 0 v winds
endvars   #表示数据描述文件结束

数据描述文件主要内容:1. 被描述的数据文件名(dest) 2. 该数据描述文件的标题(title)3.所描述数据的类别,格式和选项(dtype,format,option) 4. 时间,空间维数环境设置(xdef,ydef,zdef,tdef) 5. 变量定义(vars,endvars)

3.如何将不合适的数据文件转换为二进制的数据文件
现在有ASCII码(十进制格式)格点数据资料文件u.dat,v.dat和sst.dat,其中u.dat中存放了x方向的风速资料,v.dat中存放了y方向的风速资料,sst.dat中存放了海平面温度资料,写个Fortran文件将他们转换为一个二进制文件(后缀名为grd)

parameter(nx=37,ny=17,nz=2,nt=48)  #我们声明一些变量,以后要用到 分别是X,Y,Z方向的格点数和总时长nt
dimension u(nx,ny,nz,nt),v(nx,ny,nz,nt),sst(nx,ny,nt)  #我们声明了三个数组,这些数组是什么意思呢?注1
open(1,file='u.dat')   #此时我们打开了u.dat文件,并给u.dat文件命名为1
open(2,file='v.dat')
open(3,file='sst.dat')
open
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值