爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4213|回复: 7

[源代码] APO指数年际变化计算

[复制链接]

新浪微博达人勋

发表于 2012-12-16 12:56:42 | 显示全部楼层 |阅读模式

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

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

x


      PROGRAM ebna
implicit real(a-z)
dimension tt(144,73,32),tp(73,32),tr(144,73,32),apo(32)
      dimension ap(32),bz(32),tr1(32),tr2(32)
real fc,a,ave
      open(10,file='d:\xnlw\air2.grd',form='binary',status='old')

      !读数据
do it=1,32
do j=1,73
do i=1,144
read(10)tt(i,j,it)
enddo;enddo;enddo
      write(*,*)'read data ok'
      !纬向平均
do j=1,73
      do it=1,32
      tp(j,it)=0.0
enddo
enddo
      do it=1,32
      do j=1,73
      do i=1,144
      tp(j,it)=tp(j,it)+tt(i,j,it)/144
      enddo;enddo;enddo
print*,tp
      !扰动值
      do it=1,32
do j=1,73
do i=1,144
tr(i,j,it)=tt(i,j,it)-tp(j,it)
enddo;enddo;enddo

       write(*,*)'select region ok111'
       !(所选区域15-50N,180-120W,60E-120E),区域平均
do it=1,32
tr1(it)=0
enddo
      do it=1,32
do j=43,57
do i=25,49
        tr1(it)=tr1(it)+tr(i,j,it)/375
      enddo
enddo
enddo
do it=1,32
tr2(it)=0
enddo
      do it=1,32
do j=43,57
do i=73,97
        tr2(it)=tr2(it)+tr(i,j,it)/375
      enddo
enddo
enddo
       !区域作差值
      do it=1,32
   apo(it)=tr1(it)-tr2(it)
enddo
print*,apo
      write(*,*)'select region ok222'
!标准化处理
ave=0.0
do it=1,32
   ave=ave+apo(it)/32
enddo
do it=1,32
   ap(it)=apo(it)-ave
enddo
print*,ap
a=0.0
do it=1,32
  a=a+ap(it)**2
enddo
fc=sqrt(a/32)
print*,fc
      write(*,*)'select region ok333'
do it=1,32
bz(it)=ap(it)/fc
enddo
print*,bz
      write(*,*)'select region ok444'
      open(20,file='d:\xnlw\apo.grd',form='binary')
write(20) (apo(it),it=1,32)
open(30,file='d:\xnlw\bz.grd',form='binary')
write(30) (bz(it),it=1,32)
close(20)
close(30)
end

评分

参与人数 2金钱 +11 贡献 +2 体力 +20 收起 理由
右土右圆 + 1 赞一个!
言深深 + 10 + 2 + 20 赞一个!

查看全部评分

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

新浪微博达人勋

发表于 2012-12-16 18:06:32 | 显示全部楼层
顶,谢谢分享!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 0
发表于 2012-12-17 08:23:54 | 显示全部楼层
楼主有时间的时候不妨给这些程序加个文件头,说明一下哈
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-3-12 16:51:07 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-4-21 17:44:57 | 显示全部楼层
楼主,你是对APO有研究过吗?如果有的话,我想请教你些问题!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-12 09:37:51 | 显示全部楼层
APO不是指500-200hPa的T吗?那应该有好几层气温吧。但air2.grd里读出来的好像只有一层格点上的多年气温数据,air2.grd是垂直积分后的结果吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-13 13:42:05 | 显示全部楼层
对啊!楼主是否测试过正确吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-7-13 23:40:25 | 显示全部楼层
多谢楼主分享
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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