program readagro C READ AGROCLIMATIC SOIL MOISTURE DATA c w20,w50,w100 avail. soil moisture, winter cereal crops c s20,s50,s100 avail. soil moisture, spring cereal crops ******w,s(soil layer,districts number, time) * soil layer 20cm,50cm or 100sm * districts number is used as station name * time changes from 1 to 37. (1-very beginning of the year and * 37-very end of the year are coincided for climatic mean values ******************************************* dimension w(1:3,1:107,1:37),s(1:3,1:131,1:37) dimension fw(107,2),fs(131,2),z(120,36) dimension idw(107),ids(131) character*8 name ******************************************************* * INPUT UNITS open (unit=11, status='old',form='formatted', $file='Data/dat.w20') open (unit=12, status='old',form='formatted', $file='Data/dat.w50') open (unit=13, status='old',form='formatted', $file='Data/dat.w100') open (unit=14, status='old',form='formatted', $file='Data/dat.s20') open (unit=15, status='old',form='formatted', $file='Data/dat.s50') open (unit=16, status='old',form='formatted', $file='Data/dat.s100') * OUTPUT UNITS CCC TO WRITE GRADS STATIONS BINARY FILE open (30, file='Grads/st.w20', $form='UNFORMATTED',recordtype='STREAM',status='unknown') open (31, file='Grads/st.w50', $form='UNFORMATTED',recordtype='STREAM',status='unknown') open (32, file='Grads/st.w100', $form='UNFORMATTED',recordtype='STREAM',status='unknown') open (33, file='Grads/st.s20', $form='UNFORMATTED',recordtype='STREAM',status='unknown') open (34, file='Grads/st.s50', $form='UNFORMATTED',recordtype='STREAM',status='unknown') open (35, file='Grads/st.s100', $form='UNFORMATTED',recordtype='STREAM',status='unknown') C TO WRITE GRADS GRIDDED BINARY FILE open (36, file='Grads/grd.w20', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') open (37, file='Grads/grd.w50', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') open (38, file='Grads/grd.w100', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') open (39, file='Grads/grd.s20', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') open (40, file='Grads/grd.s50', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') open (41, file='Grads/grd.s100', $ access='direct',form='UNFORMATTED',recl=4320,status='unknown') ************************************************************** c TO READ RUSSIAN SOIL MOISTURE DATA ******TO READ w20,w50,w100 555 format (x,i3,2x,f5.2,x,f6.2,x,i3,37(xf4.1)) do 5 n=1,107 read (11,555) idw(n),fw(n,1),fw(n,2),k,(w(1,n,m),m=1,37) read (12,555) idw(n),fw(n,1),fw(n,2),k,(w(2,n,m),m=1,37) read (13,555) idw(n),fw(n,1),fw(n,2),k,(w(3,n,m),m=1,37) 5 continue ******TO READ s20,s50,s100 do 6 n=1,131 read (14,555) ids(n),fs(n,1),fs(n,2),k,(s(1,n,m),m=1,37) read (15,555) ids(n),fs(n,1),fs(n,2),k,(s(2,n,m),m=1,37) read (16,555) ids(n),fs(n,1),fs(n,2),k,(s(3,n,m),m=1,37) 6 continue CCC TO WRITE GRADS STATIONS BINARY FILES nulat=0.0 nulon=0.0 tim=0.0 nulev=0 do 8 m=1,37 do 9 n=1,107 write(name,559) idw(n) write (30) name,fw(n,1),fw(n,2),0.0,1,1 write (31) name,fw(n,1),fw(n,2),0.0,1,1 write (32) name,fw(n,1),fw(n,2),0.0,1,1 write (30) w(1,n,m) write (31) w(2,n,m) write (32) w(3,n,m) 9 continue c TIME GROUP TERMINATOR write (30) name,nulat,nulon,tim,nulev,1 write (31) name,nulat,nulon,tim,nulev,1 write (32) name,nulat,nulon,tim,nulev,1 8 continue do 10 m=1,37 do 11 n=1,131 write(name,559) ids(n) 559 format(i3) write (33) name,fs(n,1),fs(n,2),0.0,1,1 write (34) name,fs(n,1),fs(n,2),0.0,1,1 write (35) name,fs(n,1),fs(n,2),0.0,1,1 write (33) s(1,n,m) write (34) s(2,n,m) write (35) s(3,n,m) 11 continue c TIME GROUP TERMINATOR write (33) name,nulat,nulon,tim,nulev,1 write (34) name,nulat,nulon,tim,nulev,1 write (35) name,nulat,nulon,tim,nulev,1 10 continue CCC TO WRITE GRADS GRIDDED BINARY FILES do 12 i=1,120 do 12 j=1,36 z(i,j)=0.0 12 continue irec=0 do 14 i=1,37 irec=irec+1 write (36,rec=irec) z write (37,rec=irec) z write (38,rec=irec) z write (39,rec=irec) z write (40,rec=irec) z write (41,rec=irec) z 14 continue ******************************************************* stop end