implicit none
! GSMaP‚̃oƒCƒiƒŠƒf[ƒ^‚ðØ‚èo‚µ‚ăeƒLƒXƒg‚É‘‚«o‚·ƒvƒƒOƒ‰ƒ€
!
! (’ˆÓ) ƒIƒŠƒWƒiƒ‹ read_GSMaP_MVK_0.1deg ƒvƒƒOƒ‰ƒ€‚Æ‚Í
! i ‚Æ j ‚ð“ü‚ê‘Ö‚¦‚Ä‚¢‚邱‚Æ‚É’ˆÓ‚·‚é
character*256 listfile
parameter( listfile = "list.txt" )
! input folder
character*256 infile1, infile
parameter( infile1 = "./infile/" )
character*256 cutfile1, cutfile
parameter( cutfile1 = "./cutfile/" )
character*256 rainfile
parameter( rainfile = "rain.data" )
character*256 sumfile
parameter( sumfile = "sumRain.data" )
! Target Area
integer jleft, ibottom, jright, itop
parameter( jleft = 441 )
parameter( ibottom = 273 )
parameter( jright = 451 )
parameter( itop = 267 )
! Time Step (sec) <3600>
integer tstep
parameter( tstep = 3600 )
! ‚»‚Ì‘¼‚Ì•Ï”
integer i,j,k,n,ios,t
integer idim,jdim
parameter(idim=1200, jdim=3600)
character*256 list_day, list_time
! (•ÏXŒã)
j=1 --> LON=0.05E
j=100 --> LON=0.05+0.1*(100-1)
i=1 --> LAT=59.95N
i=jdim --> LAT=59.95S
real*4 rain(idim, jdim), sumRain(idim, jdim)
open(1, file = listfile, status = 'old')
open(1000, file = rainfile)
open(1100, file = sumfile)
t = 0
sumRain = 0.d0
do
read(1,*,iostat=ios) list_day
if(ios.ne.0) exit
infile = trim(infile1) // list_day
cutfile = trim(cutfile1) // list_day
open(10,file= infile, &
form='unformatted',access='direct',recl=4*idim*jdim, &
status='old')
read(10,rec=1)((rain(i,j),j=1,jdim),i=1,idim) ! •ÏXŒã
close(10)
do i = itop, ibottom
do j = jleft, jright
if(rain(i,j).lt.0) rain(i,j) = 0.0
enddo
enddo
open(100, file = cutfile)
do i = itop, ibottom
write(100,'(<jdim>f7.2)') (rain(i,j), j = jleft, jright)
enddo
close(100)
write(1000,*) t * tstep, (jright - jleft) + 1, (ibottom - itop) + 1
do i = itop, ibottom
write(1000,'(<jdim>f7.2)') (rain(i,j), j = jleft, jright)
enddo
t = t + 1
sumRain = sumRain + rain
enddo
close(1000)
do i = itop, ibottom
write(1100,'(<jdim>f8.2)') (sumRain(i,j), j = jleft, jright)
enddo
end
Partager