爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 3429|回复: 2

[求助] eof运行完输出结果全为0

[复制链接]

新浪微博达人勋

发表于 2018-4-26 14:14:13 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 不会游泳的fish 于 2018-4-26 14:16 编辑

用之前实习老师给的eof程序做分解,第一次没什么问题,数据正确也能出图。然后把原数据进行纬向平均后,再EOF输出的结果就画不出图了,在fortran里打开发现结果全为0 ,可是我就只是对原数据进行了纬向平均,并且检查了纬向平均后的数据,并没有什么问题。eof最后成功运行,并输出了一些结果,但是为什么输出的数据全为0呢?求大家帮忙看看,在这期间没有对eof程序进行任何改动
以下是eof的主程序部分

PARAMETER(M=33*91,N=240*31,MNH=33*91,KS=0,KV=10,KVT=5)
      PARAMETER(ff=-9.99e+08,nx=240,ny=31)
      parameter(pi=3.1415926)
      DIMENSION F(N,M),A(MNH,MNH),S(MNH,MNH),ER(mnh,4),DF(N),V(MNH),AVF(N),evf(N,KVT),tCF(M,KVT),data(Nx,ny),nf(N)

      open(11,file='D:\seaice\data2\juping2.grd',form='unformatted',access='direct',recl=nx*ny)
       do 132 it=1,m
       read(11,rec=it)((data(i,j),i=1,nx),j=1,ny)
       do 132 jj=1,ny
       do 132 ii=1,nx
        kkkk=nx*(jj-1)+ii
        f(kkkk,it)=data(ii,jj)
132       continue
           close(11)
!CCCCCCCCCCCCCCCCINPUT DATA CCCCCCCCCCCCCCCCCCC
!ccccccccccccccccccccccccccccccccccccc

      CALL Test1(n,m,ff,f,nf)
        write(*,*)'ok2'
      CALL TRANSF(N,M,F,nf,AVF,DF,KS)
              write(*,*)'ok3'
      CALL FORMA(N,M,MNH,F,A)
                write(*,*)'ok4'
      CALL JCB(MNH,A,S,0.00001)
                write(*,*)'ok5'
      CALL ARRANG(KV,MNH,A,ER,S)
                write(*,*)'ok6'
      CALL TCOEFF(KVT,KV,N,M,MNH,S,F,V,evf,tcf,ER)
                write(*,*)'ok7'
      call test3(N,ff,nf,evf,kvt)
                write(*,*)'ok8'
      open(21,file='D:\seaice\test\evf.grd',form='unformatted',access='direct',recl=nx*ny)
       irec=0
      do 668 kk=1,kvt
      irec=irec+1
668   write(21,rec=irec)((evf(nx*(j-1)+i,kk),i=1,nx),j=1,ny)
      close(21)


      open(21,file='D:\seaice\test\tcf.grd',form='unformatted',access='direct',recl=kvt)
      irec=0
      do 345 it=1,m
      irec=irec+1
345   write(21,rec=irec) (tcf(it,iik),iik=1,kvt)
      close(21)
106   format(10f8.4)
      open(21,file='D:\seaice\test\dats.dat')
      write(21,106)(er(iiii,3),iiii=1,kv)
      close(21)

      STOP
      END

这是第一次eof的数据和进行纬向平均后的数据
1.PNG                          2.PNG


这是eof程序运行完后显示的结果,应该没什么问题吧?求大神帮忙看看

这是eof运行完后显示的结果,应该没有什么问题吧?

这是eof运行完后显示的结果,应该没有什么问题吧?







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

新浪微博达人勋

 楼主| 发表于 2018-4-26 14:37:14 | 显示全部楼层
PS  最后输出的结果有三个,一个是解释方差,解释方差没什么问题,一个是空间向量场,输出数据都为0
还有时间系数,画出来的图很奇怪,一看就是有问题的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-4-30 19:24:56 | 显示全部楼层
emmmmm找到问题了好像还是原数据的问题
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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