67 |
|
|
68 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
69 |
|
|
|
c CALL FORDATE |
|
|
C- extract parts of S/R FORDATE from Franco Molteni Physics : |
|
|
|
|
70 |
C- Physics package needs to know time of year as a fraction |
C- Physics package needs to know time of year as a fraction |
71 |
yearLength = 86400.*360. |
yearLength = 86400.*360. |
72 |
tYear = mod(myTime/yearLength, 1. _d 0) |
tYear = mod(myTime/yearLength, 1. _d 0) |
73 |
c tYear = myTime/(86400.*360.) - |
c tYear = myTime/(86400.*360.) - |
74 |
c & FLOAT(INT(myTime/(86400.*360.))) |
c & FLOAT(INT(myTime/(86400.*360.))) |
75 |
|
|
76 |
C- Load external data needed by physics package |
C-- Set surface Boundary Conditions for atmos. physics package: |
77 |
C 1. Albedo (between 0-1) |
C (Albedo, Soil moisture, Surf Temp, Land sea mask) |
78 |
C 2. Soil moisture (between 0-1) |
C includes some parts of S/R FORDATE from F.Molteni SPEDDY code (ver23) |
79 |
C 3. Surface temperatures (in situ Temp. [K]) |
CALL AIM_SURF_BC( tYear, myTime, myIter, bi, bj, myThid ) |
|
C 4. Snow depth - assume no snow for now |
|
|
C 5. Sea ice - assume no sea ice for now |
|
|
C 6. Land sea mask - infer from exact zeros in soil moisture dataset |
|
|
C 7. Surface geopotential - to be done when orography is in |
|
|
C dynamical kernel. Assume 0. for now. |
|
|
|
|
|
C Load in surface albedo data (in [0,1]) from aim_albedo to alb1 : |
|
|
DO J=1,sNy |
|
|
DO I=1,sNx |
|
|
I2 = (sNx)*(J-1)+I |
|
|
alb1(I2,myThid) = 0. |
|
|
alb1(I2,myThid) = aim_albedo(I,J,bi,bj) |
|
|
ENDDO |
|
|
ENDDO |
|
|
C Load in surface temperature data from aim_surfTemp to stl1 & sst1 : |
|
|
DO J=1,sNy |
|
|
DO I=1,sNx |
|
|
I2 = (sNx)*(J-1)+I |
|
|
sst1(I2,myThid) = 300. |
|
|
stl1(I2,myThid) = 300. |
|
|
sst1(I2,myThid) = aim_surfTemp(I,J,bi,bj) |
|
|
stl1(I2,myThid) = aim_surfTemp(I,J,bi,bj) |
|
|
ENDDO |
|
|
ENDDO |
|
|
|
|
|
C Load in soil water availability (in [0,1]) from aim_soilWater to soilw1 : |
|
|
DO J=1,sNy |
|
|
DO I=1,sNx |
|
|
I2 = (sNx)*(J-1)+I |
|
|
soilw1(I2,myThid) = 0. |
|
|
soilw1(I2,myThid) = aim_soilWater(I,J,bi,bj) |
|
|
ENDDO |
|
|
ENDDO |
|
|
C Set snow depth, sea ice to zero for now |
|
|
C Land-sea mask ( figure this out from where |
|
|
C soil moisture is exactly zero ). |
|
|
DO J=1,sNy |
|
|
DO I=1,sNx |
|
|
I2 = (sNx)*(J-1)+I |
|
|
fMask1(I2,myThid) = 1. |
|
|
IF ( soilw1(I2,myThid) .EQ. 0. ) fMask1(I2,myThid) = 0. |
|
|
oice1(I2,myThid) = 0. |
|
|
snow1(I2,myThid) = 0. |
|
|
ENDDO |
|
|
ENDDO |
|
|
C open(77,file='lsmask',form='unformatted') |
|
|
C write(77) fmask1 |
|
|
C close(77) |
|
80 |
|
|
81 |
C-- Set surface geopotential: (g * orographic height) |
C-- Set surface geopotential: (g * orographic height) |
82 |
DO J=1,sNy |
DO J=1,sNy |