⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 micaps_grads.txt

📁 气象高空MICAPS资料:气压 温度、温度露点差、U、V分量 Se 涡度 散度 垂直速度 比湿 水汽通量 相对湿度 ! 总温度 K指数 KY指数 Si指数等转为grads数据
💻 TXT
字号:
PROGRAM gkmicaps_grads

integer ri,IREC,cc
character*2 yea
character*2 mon,hou
character*1 ri0
character*2 ri1
character*80 a0,b0,c0,d0
real::hh(11,41,51),tt(11,41,51),td(11,41,51),uu(11,41,51),vv(11,41,51)
real::se(11,41,51),ww(11,41,51),qq(11,41,51),qf(11,41,51),qd(11,41,51)
real::vo(11,41,51),di(11,41,51),rh(11,41,51),tad(11,41,51),qad(11,41,51)
real::tt0(11,41,51),ki(41,51),ky(41,51),si(41,51),ps(41,51),ts(41,51)
character cc0(11)*4
data cc0/'1000','925','850','700','500','400','300','250','200','150','100'/
yea="07"
mon="07"
IREC=1
! ****高空:气压 温度、温度露点差、U、V分量 Se 涡度 散度 垂直速度 比湿 水汽通量 相对湿度 
!          总温度  K指数  KY指数 Si指数   ************************
! OPEN (9,FILE="z:\20050422\gk20050422.dat",form="UNFORMATTED",ACCESS='DIRECT',RECL=31*41*4)
  OPEN (9,FILE="E:\20070717\gk2007071708.dat",form="UNFORMATTED",ACCESS='DIRECT',RECL=41*51*4)

do ri=16,17
    if (ri.lt.10) then
      write(ri0,'(i1)') ri     
        ri1="0"//ri0
    else
       write(ri1,'(i2)') ri
     end if
   
do shi=1,2
    if (shi.eq.1)   hou="08"
    if (shi.eq.2)   hou="20"
do cc=1,11
!     高空气压
OPEN (8,FILE="D:\MICAPS\high\height\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (hh(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (hh(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (hh(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (hh(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (hh(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') hh(cc,lat,51)
enddo
close(8)
enddo

!     高空气温
do cc=1,11
OPEN (8,FILE="D:\MICAPS\high\temper\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (tt(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (tt(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (tt(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (tt(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (tt(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') tt(cc,lat,51)
enddo
close(8)
enddo
!     高空温度露点差
do cc=1,11
OPEN (8,FILE="D:\MICAPS\high\t-td\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (td(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (td(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (td(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (td(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (td(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') td(cc,lat,51)
enddo
close(8)
enddo

!      高空U V分量
do cc=1,11
OPEN (8,FILE="D:\MICAPS\high\uv\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")

read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
do lat=1,41
   read(8,'(10f8.1)') (uu(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (uu(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (uu(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (uu(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (uu(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') uu(cc,lat,51)
enddo
 
do lat=1,41
   read(8,'(10f8.1)') (vv(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (vv(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (vv(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (vv(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (vv(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') vv(cc,lat,51)
enddo
close(8)
enddo
!     高空Se
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\thetse\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (se(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (se(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (se(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (se(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (se(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') se(cc,lat,51)
enddo
close(8)
enddo
!     涡度
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\vor\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (vo(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (vo(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (vo(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (vo(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (vo(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') vo(cc,lat,51)
enddo
close(8)
enddo
!     涡度
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\div\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (di(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (di(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (di(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (di(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (di(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') di(cc,lat,51)
enddo
close(8)
enddo
!     高空垂直速度
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\omega\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (ww(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (ww(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (ww(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (ww(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (ww(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') ww(cc,lat,51)
enddo
close(8)
enddo

!     高空相对湿度
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\rh\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (rh(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (rh(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (rh(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (rh(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (rh(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') rh(cc,lat,51)
enddo
close(8)
enddo
!     高空水汽通量
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\qflux\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (qf(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (qf(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (qf(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (qf(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (qf(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') qf(cc,lat,51)
enddo
close(8)
enddo
!     高空水汽通量散度
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\qfdiv\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (qd(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (qd(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (qd(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (qd(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (qd(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') qd(cc,lat,51)
enddo
close(8)
enddo
!     高空比湿
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\qq\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (qq(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (qq(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (qq(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (qq(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (qq(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') qq(cc,lat,51)
enddo
close(8)
enddo
!     总温度tt0
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\tt\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (tt0(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (tt0(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (tt0(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (tt0(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (tt0(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') tt0(cc,lat,51)
enddo
close(8)
enddo
!     温度平流tad
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\tadv\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (tad(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (tad(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (tad(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (tad(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (tad(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') tad(cc,lat,51)
enddo
close(8)
enddo
!     水汽平流qad
do cc=1,11
OPEN (8,FILE="D:\MICAPS\physic\qadv\"//trim(cc0(cc))//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (qad(cc,lat,lon),lon=1,10)
   read(8,'(10f8.1)') (qad(cc,lat,lon),lon=11,20)
   read(8,'(10f8.1)') (qad(cc,lat,lon),lon=21,30)
   read(8,'(10f8.1)') (qad(cc,lat,lon),lon=31,40)
   read(8,'(10f8.1)') (qad(cc,lat,lon),lon=41,50)
   read(8,'(f8.1)') qad(cc,lat,51)
enddo
close(8)
enddo
!     K指数
OPEN (8,FILE="D:\MICAPS\physic\ki\"//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (ki(lat,lon),lon=1,10)
   read(8,'(10f8.1)') (ki(lat,lon),lon=11,20)
   read(8,'(10f8.1)') (ki(lat,lon),lon=21,30)
   read(8,'(10f8.1)') (ki(lat,lon),lon=31,40)
   read(8,'(10f8.1)') (ki(lat,lon),lon=41,50)
   read(8,'(f8.1)') ki(lat,51)
enddo
close(8)

!      Ky指数
OPEN (8,FILE="D:\MICAPS\physic\ky\"//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (ky(lat,lon),lon=1,10)
   read(8,'(10f8.1)') (ky(lat,lon),lon=11,20)
   read(8,'(10f8.1)') (ky(lat,lon),lon=21,30)
   read(8,'(10f8.1)') (ky(lat,lon),lon=31,40)
   read(8,'(10f8.1)') (ky(lat,lon),lon=41,50)
   read(8,'(f8.1)') ky(lat,51)
enddo
close(8)
!      Si指数
OPEN (8,FILE="D:\MICAPS\physic\si\"//"\"//yea//mon//ri1//hou//".000",status="old")
read(8,'(a80)') a0
read(8,'(a80)') b0
read(8,'(a80)') c0
read(8,'(a80)') d0
do lat=1,41
   read(8,'(10f8.1)') (si(lat,lon),lon=1,10)
   read(8,'(10f8.1)') (si(lat,lon),lon=11,20)
   read(8,'(10f8.1)') (si(lat,lon),lon=21,30)
   read(8,'(10f8.1)') (si(lat,lon),lon=31,40)
   read(8,'(10f8.1)') (si(lat,lon),lon=41,50)
   read(8,'(f8.1)') si(lat,51)
enddo
close(8)


do cc=1,11
 write(9,REC=IREC) ((hh(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((tt(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((td(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((uu(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((vv(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((se(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((vo(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((di(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo

do cc=1,11
 write(9,REC=IREC) ((ww(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((qq(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((qf(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((qd(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((rh(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((tt0(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((tad(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo
do cc=1,11
 write(9,REC=IREC) ((qad(cc,LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
enddo

 write(9,REC=IREC) ((ki(LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
 write(9,REC=IREC) ((ky(LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1
 write(9,REC=IREC) ((si(LAT,LON),LON=1,51),LAT=1,41)
  IREC=IREC+1

enddo
enddo
close(9)
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -