program soilpop implicit none !==================================================================== ! SOILPOP30 is a global database of soil population fractions (%) ! It is derived from STATSGO soil texture data, following ! Tegen et al (2002) and Shirazi et. al (1988). ! The database is available for download: wwww.seevccc.rs/GMINER30 ! Data are on 30-seconds gird (~ km) and are organized in 27 tiles ! with NXT x NYT points each. ! There is 4 soil population categories: ! CLY clay ! SLT silt ! SNF fine sand ! SNC coarse sand ! ! This program is intended for reading soil population fractions (%) ! from the database and writing ASCII files (lon, lat, mineral frac). !==================================================================== integer :: i, j, it, k, jj real, parameter :: dlo=1./120.,dla=1./120. integer, parameter :: nxt=40./dlo+1, nyt=50./dla+1 integer, parameter :: nmin=12, ntile=27 real, dimension (nxt,nyt) :: sc real, dimension (ntile) :: tlon, tlat character*7, dimension (ntile) :: ctile character*4, dimension (4) :: cpop integer*2 kcly(nxt,nyt) data cpop /'CLY', 'SLT', 'SNF', 'SNC'/ data ctile / & 'W180N90', 'W140N90', 'W100N90', 'W060N90', 'W020N90', & 'E020N90', 'E060N90', 'E100N90', 'E140N90', & 'W180N40', 'W140N40', 'W100N40', 'W060N40', 'W020N40', & 'E020N40', 'E060N40', 'E100N40', 'E140N40', & 'W180S10', 'W140S10', 'W100S10', 'W060S10', 'W020S10', & 'E020S10', 'E060S10', 'E100S10', 'E140S10'/ print*, 'Dimensions of each tile:', nxt,'x', nyt print*, 'dlon:', dlo,' dlat:', dla do k=1,4 print*, 'Processing soil population: ', cpop(k) do it=1,ntile print*, 'Processing tile:',it OPEN(30,FILE=ctile(it)//'.'//cpop(k) & ,FORM='UNFORMATTED',STATUS='UNKNOWN',ACCESS='DIRECT',RECL=NXT*NYT*4) READ(30,REC=1) ((sc(i,j),i=1,NXT), j=1,NYT) CLOSE(30) enddo enddo endprogram soilpop