- 14
- 0
- 约 9页
- 2017-02-09 发布于重庆
- 举报
Fortran做EOF分析
!此程序为EOF程序
! 运行时要改动前面的空间、时间格点以及文件路径,ks和kvt根据自己的需要进行改动
!程序中自动去除缺省值并将其写回生成数据(生成数据中缺省值为-9999.0)
!对程序中data_in到F的传递 进行调整后 此程序也可用于s-eof和mv-eof
!
PROGRAM EOF
IMPLICIT NONE
INTEGER,PARAMETER :: nt=12,nx=23,ny=34 ! you need change,NT为时间长度
INTEGER,PARAMETER ::M=nt,KS=0,KVT=8 !kvt为输出的模态数
! KS的设置: ks0 计算前先将数据标准化 ,
! ks=0时取距平,ks0时不进行这一步处理
INTEGER :: i,j ,MNH,N ,K,IM , m1
REAL, allocatable,dimension(:,:,:)::DATA_IN
REAL, allocatable,dimension(:,:)::F,S,ER,A,S1,F1
CHARACTER(LEN=20) :: NOW , TRACK
REAL :: land(nx,ny), D,AVE,PT(NX,NY,kvt) ,ran1
TRACK=E:\aat\EA\ !输出的目标文件夹,默认为程序所在文件夹
call time(now)
print*, now
!!1111111111读入数据并去掉缺省值11111111111111
ALLOCATE(DATA_IN(NX,NY,NT))
OPEN(1,file=E:\aat\EA\aat.eof.dat,access=direct,recl=nx*ny*nt) !****修改路径
READ(1,rec=1) (((data_in(I,J,K),I=1,nx),J=1,ny),K=1,nt)
CLOSE(1)
!注意数据排列顺序
!************做纬度加权平均,中、高纬度使用,热带或小范围不必******(未验证)
!do j=1,ny
!z(j)=0.+(real(j)-1.)*2.5/180.*3.1415926575 !使用时需要改动格距和起始纬度
!data_in(:,j,:)=data_in(:,j,:)*sqrt(cos(z(j)))
!enddo
land=0.0
N=NX*NY
DO I=1,nx
DO J=1,ny
DO K=1,nt
IF(abs(data_in(I,J,K))99999.0)then !判断缺省值 (注意条件)
land(I,J)=-9999.0
N=N-1
EXIT
ENDIF
ENDDO
ENDDO
ENDDO
ALLOCATE(F(1:N,1:M))
im=0
DO I=1,nx
DO J=1,ny
IF(land(I,J)/=-9999.0)then
im=im+1
F(IM,1:m)=data_in(I,J,1:m)
ENDIF
ENDDO
ENDDO
print*, 空间点数 , nx*ny, 非缺省值空间点数:,im,N
DEALLOCATE(DATA_IN)
MNH=min(N,M)
ALLOCATE( A(MNH,MNH))
ALLOCATE(S(MNH,MNH))
ALLOCATE(ER(mnh,6))
!222222222222222222计算过程22222222222222222222222
CALL TRANSF(N,M,F,KS)
您可能关注的文档
最近下载
- 2025年日照市中考生物试题卷(含答案).docx
- 征信报告模板-带水印版.docx VIP
- 钢筋混凝土化粪池22S702.docx VIP
- 标准图集-20S515-钢筋混凝土及砖砌排水检查井.pdf VIP
- 文广旅体局三防应急预案.docx
- 第3讲 秦统一多民族封建国家的建立课件—2024届高三历史统编版一轮复习.pptx VIP
- 第1讲 先秦:统一多民族封建国家的奠基时期 课件--2024届高三统编版(2019)历史二轮专题复习.pptx VIP
- 第一讲 中华文明的起源与奠基——先秦时期(远古—公元前221年)+课件+---2025届高三历史统编版二轮通史复习.pptx VIP
- 2025年潍坊市中考生物试题卷(含答案逐题解析).docx
- 2025年中国AI眼底筛查设备市场调研报告_2025年12月.docx VIP
原创力文档

文档评论(0)