爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 7178|回复: 8

[分享资料] 求助,在grads中水汽通量的线性趋势分析的实现。

[复制链接]

新浪微博达人勋

发表于 2012-6-5 15:55:51 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
目的:想用在分析数据求1990-2010年的水汽通量变化,采用线性趋势分析,得到的结果如下图所示
1.jpg
想请问,在求的每一年的水汽通量后,在grads中可以用什么方法对每年的值,进行线性趋势分析,从而得到上面文献中的图,谢谢各位高手!!!

密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2012-6-5 18:04:04 | 显示全部楼层
线性趋势的东西你可以先看看文献是怎么分析的,计算线性趋势很简单,论坛有相关的程序以及介绍,比如这个:
http://bbs.06climate.com/forum.php?mod=viewthread&tid=633
下载那个ppt看一下,然后自己用LR程序计算,用GrADS等软件画图,或者直接用GrADS计算,具体的计算函数请看GrADS的官方帮助文档的 tregr函数
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-6-7 14:15:24 | 显示全部楼层

谢谢 版主的回复。我求每一年的水汽通量的程序如下:
'reinit'
'set grid off'
'set grads off'
'sdfopen E:\downloads\shum.mon.mean.nc'
'sdfopen E:\downloads\pres.mon.mean.nc'
'sdfopen E:\downloads\uwnd.mon.mean.nc'
'sdfopen E:\downloads\vwnd.mon.mean.nc'
'sdfopen E:\downloads\air.mon.mean(2).nc'
'enable print E:/vaporwinter.gmf'

'set lat 20 60'
'set xlint 5'
'set lon 100 180'
'set ylint 5'



'set map 1 1 1'
'draw map'
'set gxout shaded'
'set ylopts 1 4 0.14'
'set xlopts 1 4 0.14'

'set cthick 5'



'set cint 20'
'set clskip 4'

*'set define 1'
*'set t 180 660'
*'set define 2't
*'set t 180 660'
*'set define 3'
*'set t 180 660'
*'set define 4'
'set t 385 768'


'define m=shum.1*uwnd.3'
'define n=shum.1*vwnd.4'
'define qu=vint(pres.2(z=1),m,300)/1000'

'define qu80=sum(qu,t=385,t=396)'
'define qu81=sum(qu,t=397,t=408)'
'define qu82=sum(qu,t=409,t=420)'
'define qu83=sum(qu,t=421,t=432)'
'define qu84=sum(qu,t=433,t=444)'
'define qu85=sum(qu,t=445,t=456)'
'define qu86=sum(qu,t=457,t=468)'
'define qu87=sum(qu,t=469,t=480)'
'define qu88=sum(qu,t=481,t=492)'
'define qu89=sum(qu,t=493,t=504)'
'define qu90=sum(qu,t=505,t=516)'
'define qu91=sum(qu,t=517,t=528)'
'define qu92=sum(qu,t=529,t=540)'
'define qu93=sum(qu,t=541,t=552)'
'define qu94=sum(qu,t=553,t=564)'
'define qu95=sum(qu,t=565,t=576)'
'define qu96=sum(qu,t=577,t=588)'
'define qu97=sum(qu,t=589,t=600)'
'define qu98=sum(qu,t=601,t=612)'
'define qu99=sum(qu,t=613,t=624)'
'define qu10=sum(qu,t=625,t=636)'
'define qu11=sum(qu,t=637,t=648)'
'define qu12=sum(qu,t=649,t=660)'
'define qu13=sum(qu,t=661,t=672)'
'define qu14=sum(qu,t=673,t=684)'
'define qu15=sum(qu,t=685,t=696)'
'define qu16=sum(qu,t=697,t=708)'
'define qu17=sum(qu,t=709,t=720)'
'define qu18=sum(qu,t=721,t=732)'
'define qu19=sum(qu,t=733,t=744)'
'define qu20=sum(qu,t=745,t=756)'
'define qu21=sum(qu,t=757,t=768)'


'define qv=vint(pres.2(z=1),n,300)/1000'

'define qv80=sum(qv,t=385,t=396)'
'define qv81=sum(qv,t=397,t=408)'
'define qv82=sum(qv,t=409,t=420)'
'define qv83=sum(qv,t=421,t=432)'
'define qv84=sum(qv,t=433,t=444)'
'define qv85=sum(qv,t=445,t=456)'
'define qv86=sum(qv,t=457,t=468)'
'define qv87=sum(qv,t=469,t=480)'
'define qv88=sum(qv,t=481,t=492)'
'define qv89=sum(qv,t=493,t=504)'
'define qv90=sum(qv,t=505,t=516)'
'define qv91=sum(qv,t=517,t=528)'
'define qv92=sum(qv,t=529,t=540)'
'define qv93=sum(qv,t=541,t=552)'
'define qv94=sum(qv,t=553,t=564)'
'define qv95=sum(qv,t=565,t=576)'
'define qv96=sum(qv,t=577,t=588)'
'define qv97=sum(qv,t=589,t=600)'
'define qv98=sum(qv,t=601,t=612)'
'define qv99=sum(qv,t=613,t=624)'
'define qv10=sum(qv,t=625,t=636)'
'define qv11=sum(qv,t=637,t=648)'
'define qv12=sum(qv,t=649,t=660)'
'define qv13=sum(qv,t=661,t=672)'
'define qv14=sum(qv,t=673,t=684)'
'define qv15=sum(qv,t=685,t=696)'
'define qv16=sum(qv,t=697,t=708)'
'define qv17=sum(qv,t=709,t=720)'
'define qv18=sum(qv,t=721,t=732)'
'define qv19=sum(qv,t=733,t=744)'
'define qv20=sum(qv,t=745,t=756)'
'define qv21=sum(qv,t=757,t=768)'


'define quv80=mag(qv80,qu80)'
'define quv81=mag(qv81,qu81)'
'define quv82=mag(qv82,qu82)'
'define quv83=mag(qv83,qu83)'
'define quv84=mag(qv84,qu84)'
'define quv85=mag(qv85,qu85)'
'define quv86=mag(qv86,qu86)'
'define quv87=mag(qv87,qu87)'
'define quv88=mag(qv88,qu88)'
'define quv89=mag(qv89,qu89)'
'define quv90=mag(qv90,qu90)'
'define quv91=mag(qv91,qu91)'
'define quv92=mag(qv92,qu92)'
'define quv93=mag(qv93,qu93)'
'define quv94=mag(qv94,qu94)'
'define quv95=mag(qv95,qu95)'
'define quv96=mag(qv96,qu96)'
'define quv97=mag(qv97,qu97)'
'define quv98=mag(qv98,qu98)'
'define quv99=mag(qv99,qu99)'
'define quv10=mag(qv10,qu10)'
'define quv11=mag(qv11,qu11)'
'define quv12=mag(qv12,qu12)'
'define quv13=mag(qv13,qu13)'
'define quv14=mag(qv14,qu14)'
'define quv15=mag(qv15,qu15)'
'define quv16=mag(qv16,qu16)'
'define quv17=mag(qv17,qu17)'
'define quv18=mag(qv18,qu18)'
'define quv19=mag(qv19,qu19)'
'define quv20=mag(qv20,qu20)'
'define quv21=mag(qv21,qu21)'
在这里我想请问版主怎么将每一年的水汽通量保存在一个文件中,然后怎么用tregr函数求时空上面的趋势,(手册上没有实例,我不知道怎么下手求这个)得到例文中不同地域上的趋势?谢谢版主勒。


'print'
'disable print'




密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-6-7 14:15:25 | 显示全部楼层
mofangbao 发表于 2012-6-5 18:04
线性趋势的东西你可以先看看文献是怎么分析的,计算线性趋势很简单,论坛有相关的程序以及介绍,比如这个: ...

谢谢 版主的回复。我求每一年的水汽通量的程序如下:
'reinit'
'set grid off'
'set grads off'
'sdfopen E:\downloads\shum.mon.mean.nc'
'sdfopen E:\downloads\pres.mon.mean.nc'
'sdfopen E:\downloads\uwnd.mon.mean.nc'
'sdfopen E:\downloads\vwnd.mon.mean.nc'
'sdfopen E:\downloads\air.mon.mean(2).nc'
'enable print E:/vaporwinter.gmf'

'set lat 20 60'
'set xlint 5'
'set lon 100 180'
'set ylint 5'



'set map 1 1 1'
'draw map'
'set gxout shaded'
'set ylopts 1 4 0.14'
'set xlopts 1 4 0.14'

'set cthick 5'



'set cint 20'
'set clskip 4'

*'set define 1'
*'set t 180 660'
*'set define 2't
*'set t 180 660'
*'set define 3'
*'set t 180 660'
*'set define 4'
'set t 385 768'


'define m=shum.1*uwnd.3'
'define n=shum.1*vwnd.4'
'define qu=vint(pres.2(z=1),m,300)/1000'

'define qu80=sum(qu,t=385,t=396)'
'define qu81=sum(qu,t=397,t=408)'
'define qu82=sum(qu,t=409,t=420)'
'define qu83=sum(qu,t=421,t=432)'
'define qu84=sum(qu,t=433,t=444)'
'define qu85=sum(qu,t=445,t=456)'
'define qu86=sum(qu,t=457,t=468)'
'define qu87=sum(qu,t=469,t=480)'
'define qu88=sum(qu,t=481,t=492)'
'define qu89=sum(qu,t=493,t=504)'
'define qu90=sum(qu,t=505,t=516)'
'define qu91=sum(qu,t=517,t=528)'
'define qu92=sum(qu,t=529,t=540)'
'define qu93=sum(qu,t=541,t=552)'
'define qu94=sum(qu,t=553,t=564)'
'define qu95=sum(qu,t=565,t=576)'
'define qu96=sum(qu,t=577,t=588)'
'define qu97=sum(qu,t=589,t=600)'
'define qu98=sum(qu,t=601,t=612)'
'define qu99=sum(qu,t=613,t=624)'
'define qu10=sum(qu,t=625,t=636)'
'define qu11=sum(qu,t=637,t=648)'
'define qu12=sum(qu,t=649,t=660)'
'define qu13=sum(qu,t=661,t=672)'
'define qu14=sum(qu,t=673,t=684)'
'define qu15=sum(qu,t=685,t=696)'
'define qu16=sum(qu,t=697,t=708)'
'define qu17=sum(qu,t=709,t=720)'
'define qu18=sum(qu,t=721,t=732)'
'define qu19=sum(qu,t=733,t=744)'
'define qu20=sum(qu,t=745,t=756)'
'define qu21=sum(qu,t=757,t=768)'


'define qv=vint(pres.2(z=1),n,300)/1000'

'define qv80=sum(qv,t=385,t=396)'
'define qv81=sum(qv,t=397,t=408)'
'define qv82=sum(qv,t=409,t=420)'
'define qv83=sum(qv,t=421,t=432)'
'define qv84=sum(qv,t=433,t=444)'
'define qv85=sum(qv,t=445,t=456)'
'define qv86=sum(qv,t=457,t=468)'
'define qv87=sum(qv,t=469,t=480)'
'define qv88=sum(qv,t=481,t=492)'
'define qv89=sum(qv,t=493,t=504)'
'define qv90=sum(qv,t=505,t=516)'
'define qv91=sum(qv,t=517,t=528)'
'define qv92=sum(qv,t=529,t=540)'
'define qv93=sum(qv,t=541,t=552)'
'define qv94=sum(qv,t=553,t=564)'
'define qv95=sum(qv,t=565,t=576)'
'define qv96=sum(qv,t=577,t=588)'
'define qv97=sum(qv,t=589,t=600)'
'define qv98=sum(qv,t=601,t=612)'
'define qv99=sum(qv,t=613,t=624)'
'define qv10=sum(qv,t=625,t=636)'
'define qv11=sum(qv,t=637,t=648)'
'define qv12=sum(qv,t=649,t=660)'
'define qv13=sum(qv,t=661,t=672)'
'define qv14=sum(qv,t=673,t=684)'
'define qv15=sum(qv,t=685,t=696)'
'define qv16=sum(qv,t=697,t=708)'
'define qv17=sum(qv,t=709,t=720)'
'define qv18=sum(qv,t=721,t=732)'
'define qv19=sum(qv,t=733,t=744)'
'define qv20=sum(qv,t=745,t=756)'
'define qv21=sum(qv,t=757,t=768)'


'define quv80=mag(qv80,qu80)'
'define quv81=mag(qv81,qu81)'
'define quv82=mag(qv82,qu82)'
'define quv83=mag(qv83,qu83)'
'define quv84=mag(qv84,qu84)'
'define quv85=mag(qv85,qu85)'
'define quv86=mag(qv86,qu86)'
'define quv87=mag(qv87,qu87)'
'define quv88=mag(qv88,qu88)'
'define quv89=mag(qv89,qu89)'
'define quv90=mag(qv90,qu90)'
'define quv91=mag(qv91,qu91)'
'define quv92=mag(qv92,qu92)'
'define quv93=mag(qv93,qu93)'
'define quv94=mag(qv94,qu94)'
'define quv95=mag(qv95,qu95)'
'define quv96=mag(qv96,qu96)'
'define quv97=mag(qv97,qu97)'
'define quv98=mag(qv98,qu98)'
'define quv99=mag(qv99,qu99)'
'define quv10=mag(qv10,qu10)'
'define quv11=mag(qv11,qu11)'
'define quv12=mag(qv12,qu12)'
'define quv13=mag(qv13,qu13)'
'define quv14=mag(qv14,qu14)'
'define quv15=mag(qv15,qu15)'
'define quv16=mag(qv16,qu16)'
'define quv17=mag(qv17,qu17)'
'define quv18=mag(qv18,qu18)'
'define quv19=mag(qv19,qu19)'
'define quv20=mag(qv20,qu20)'
'define quv21=mag(qv21,qu21)'
在这里我想请问版主怎么将每一年的水汽通量保存在一个文件中,然后怎么用tregr函数求时空上面的趋势,(手册上没有实例,我不知道怎么下手求这个)得到例文中不同地域上的趋势?谢谢版主勒。


'print'
'disable print'




密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-6-18 19:12:01 | 显示全部楼层
帮楼主顶一下,自己正在做这个
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-18 22:57:17 | 显示全部楼层
set fwrite可以把提取的变量写在一个文件中,然后自己再写个ctl读一下。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-18 22:57:59 | 显示全部楼层
然后grads可以直接画趋势图的,详见http://bbs.06climate.com/forum.p ... id=15576&page=3
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-29 09:55:14 | 显示全部楼层
这图片的出处,能否给以下paper标题,谢谢!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2017-1-17 22:15:32 | 显示全部楼层
mofangbao 发表于 2012-6-5 18:04
线性趋势的东西你可以先看看文献是怎么分析的,计算线性趋势很简单,论坛有相关的程序以及介绍,比如这个: ...

我再文献看到有海温与降水趋势的逐年相关, 请问这里的降水趋势也是这么算吗??
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表