Back to home page

MITgcm

 
 

    


File indexing completed on 2021-04-08 05:11:19 UTC

view on githubraw file Latest commit ba0b0470 on 2021-04-08 01:06:32 UTC
4ff1cd5702 Jean*0001 C     *==========================================================*
                0002 C     | ATMCPL.h
                0003 C     | o Variables shared between atmos. component to coupler
                0004 C     |   layer.
                0005 C     *==========================================================*
                0006 C     | These variables are used in the atmos component. Grid
                0007 C     | variables have already been mapped/interpolated to the
                0008 C     | atmos grid.
                0009 C     | Which variables are exported will depend on the specific
                0010 C     | ocean coupling being utilised. The variables
                0011 C     | carried here will need to be customised accordingly.
                0012 C     *==========================================================*
c121b6d611 Jean*0013 
                0014 C--   fields sent from ATM to OCN:
                0015 
                0016 C-    COMMON /ATM_ATM2CPL_R/
4ff1cd5702 Jean*0017 C     atmSLPr    :: Atmospheric Sea-Level pressure anomaly (Pa=N/m2)
                0018 C     HeatFlux   :: Atmospheric net surface heat flux (W/m^2) (+=upward).
                0019 C     qShortWave :: net shortwave radiation heat flux (W/m^2) (+=upward).
                0020 C     tauX       :: Atmospheric zonal momentum flux at lower boundary (N/m^2).
a9cdd26a43 Jean*0021 C                  Same sign as wind. Positive zonal wind is westward.
4ff1cd5702 Jean*0022 C     tauY       :: Atmospheric meridional momentum flux at lower boundary (N/m^2).
a9cdd26a43 Jean*0023 C                  Same sign as wind. Positive meridional wind is northward.
4ff1cd5702 Jean*0024 C     EvMPrFlux  :: Fresh water flux (=Evap-Precip) on atmos. grid
c51bce94da Jean*0025 C                      ( kg/m2/s, positive into atmosphere).
c121b6d611 Jean*0026 C     atmSLPrTime    :: Time fraction over which term has been integrated.
                0027 C     HeatFluxTime   :: Time fraction over which term has been integrated.
                0028 C     qShortWaveTime :: Time fraction over which term has been integrated.
                0029 C     tauXTime       :: Time fraction over which term has been integrated.
                0030 C     tauYTime       :: Time fraction over which term has been integrated.
                0031 C     EvMPrTime      :: Time fraction over which term has been integrated.
4ff1cd5702 Jean*0032       COMMON /ATM_ATM2CPL_R/
                0033      &                   atmSLPr, HeatFlux, qShortWave,
c121b6d611 Jean*0034      &                   tauX, tauY, EvMPrFlux,
4ff1cd5702 Jean*0035      &                   atmSLPrTime, HeatFluxTime, qShortWaveTime,
c121b6d611 Jean*0036      &                   tauXtime, tauYtime, EvMPrTime
5a2fc21c93 Jean*0037       _RL  atmSLPr   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
a9cdd26a43 Jean*0038       _RL  HeatFlux  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
5a2fc21c93 Jean*0039       _RL  qShortWave(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
a9cdd26a43 Jean*0040       _RL  tauX      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0041       _RL  tauY      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0042       _RL  EvMPrFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
5a2fc21c93 Jean*0043       _RL  atmSLPrTime   (nSx,nSy)
                0044       _RL  HeatFluxTime  (nSx,nSy)
                0045       _RL  qShortWaveTime(nSx,nSy)
                0046       _RL  tauXTime      (nSx,nSy)
                0047       _RL  tauYTime      (nSx,nSy)
                0048       _RL  EvMPrTime     (nSx,nSy)
c121b6d611 Jean*0049 
                0050 #ifdef ALLOW_LAND
                0051 C-    COMMON /ATM_LAND2CPL_R/
                0052 C     RunOffFlux :: Fresh water flux (=RunOff) on atmos. grid
                0053 C                      ( kg/m2/s, positive is leaving the land bucket)
                0054 C     RunOffEnFx :: Energy carried by RunOff (W/m2) (+=leaving land bucket)
                0055 C     RunOffTime :: Time fraction over which term has been integrated.
                0056 C     ROEnFxTime :: Time fraction over which term has been integrated.
                0057       COMMON /ATM_LAND2CPL_R/
                0058      &                   RunOffFlux, RunOffEnFx,
                0059      &                   RunOffTime, ROEnFxTime
                0060       _RL  RunOffFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0061       _RL  RunOffEnFx (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0062       _RL  RunOffTime (nSx,nSy)
                0063       _RL  ROEnFxTime (nSx,nSy)
                0064 #endif /* ALLOW_LAND */
                0065 
                0066 #ifdef ALLOW_THSICE
                0067 C-    COMMON /ATM_SICE2CPL_R/
                0068 C     iceSaltFlx     :: salt flux from sea-ice compon. (+=upward)
                0069 C     seaIceMass     :: sea-ice mass (kg/m2)
                0070 C     saltPlmFlx_cpl :: salt-plume flux for salt_plume pkg
                0071 C     saltFxTime     :: Time fraction over which term has been integrated.
                0072 C     sIceMassTime   :: Time fraction over which term has been integrated.
                0073 C     saltPlmFlxTime :: Time fraction over which term has been integrated
                0074       COMMON /ATM_SICE2CPL_R/
                0075      &                   iceSaltFlx, seaIceMass,   saltPlmFlx_cpl,
                0076      &                   saltFxTime, sIceMassTime, saltPlmFlxTime
                0077       _RL  iceSaltFlx    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0078       _RL  seaIceMass    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0079       _RL  saltPlmFlx_cpl(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
5a2fc21c93 Jean*0080       _RL  saltFxTime    (nSx,nSy)
c121b6d611 Jean*0081       _RL  sIceMassTime  (nSx,nSy)
                0082       _RL  saltPlmFlxTime(nSx,nSy)
                0083 #endif /* ALLOW_THSICE */
                0084 
                0085 #ifdef ALLOW_AIM
                0086 C-    COMMON /ATM_AIM2CPL_R/
                0087 C     airCO2     :: atmospheric CO2 (parts by volume)
                0088 C     sWSpeed    :: surface wind speed (m/s)
                0089 C     airCO2Time     :: Time fraction over which term has been integrated.
                0090 C     sWSpeedTime    :: Time fraction over which term has been integrated.
                0091       COMMON /ATM_AIM2CPL_R/
                0092      &                   airCO2,     sWSpeed,
                0093      &                   airCO2Time, sWSpeedTime
                0094       _RL  airCO2     (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0095       _RL  sWSpeed    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0096       _RL  airCO2Time (nSx,nSy)
                0097       _RL  sWSpeedTime(nSx,nSy)
                0098 #endif /* ALLOW_AIM */
                0099 
                0100 #ifdef ALLOW_THSICE
                0101 C--   fields used for multiple purpose:
                0102 C-    COMMON /ATM_CPL_ICE_R/
                0103 C     sIceFrac_cpl   :: seaice fraction
                0104 C     sIceFracTime   :: Time fraction over which term has been integrated.
                0105       COMMON /ATM_CPL_ICE_R/
                0106      &                   sIceFrac_cpl, sIceFracTime
                0107       _RL  sIceFrac_cpl (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0108       _RL  sIceFracTime (nSx,nSy)
4ff1cd5702 Jean*0109 
c121b6d611 Jean*0110 C--   fields sent in both direction:
                0111 C-    COMMON /ATM_CPL_2WAYS_R/
                0112 C     sIceThick_cpl :: seaice thickness [m]
                0113 C     sIceSnowH_cpl :: snow thickness over seaice  [m]
                0114 C     sIceQ1_cpl    :: seaice enthalpy of ice layer 1 [J/kg]
                0115 C     sIceQ2_cpl    :: seaice enthalpy of ice layer 2 [J/kg]
                0116 C     sIceThickTime ::  Time fraction over which term has been integrated.
                0117 C     sIceSnowHTime ::  Time fraction over which term has been integrated.
                0118 C     sIceQ1Time    ::  Time fraction over which term has been integrated.
                0119 C     sIceQ2Time    ::  Time fraction over which term has been integrated.
                0120       COMMON /ATM_CPL_2WAYS_R/
                0121      &            sIceThick_cpl, sIceSnowH_cpl, sIceQ1_cpl, sIceQ2_cpl,
                0122      &            sIceThickTime, sIceSnowHTime, sIceQ1Time, sIceQ2Time
                0123       _RL  sIceThick_cpl(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0124       _RL  sIceSnowH_cpl(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0125       _RL  sIceQ1_cpl   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0126       _RL  sIceQ2_cpl   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0127       _RL  sIceThickTime(nSx,nSy)
                0128       _RL  sIceSnowHTime(nSx,nSy)
                0129       _RL  sIceQ1Time   (nSx,nSy)
                0130       _RL  sIceQ2Time   (nSx,nSy)
                0131 #endif /* ALLOW_THSICE */
a9cdd26a43 Jean*0132 
c121b6d611 Jean*0133 C--   fields sent from OCN to ATM:
                0134 
                0135 C-    COMMON /ATM_CPL2ATM_R/
4ff1cd5702 Jean*0136 C     ocMxlD    :: Ocean mixed-layer depth (m). ocMxlD==0. => land.
                0137 C     SSTocn    :: Ocean surface temperature (oC). Undefined data for land points.
ba0b047096 Mart*0138 C     SSSocn    :: Ocean surface salinity (g/kg). Undefined data for land points.
4ff1cd5702 Jean*0139 C     vSqocn    :: Ocean surface velocity square (m2/s2).
                0140       COMMON /ATM_CPL2ATM_R/
c121b6d611 Jean*0141      &            ocMxlD, SSTocn, SSSocn, vSqocn
4ff1cd5702 Jean*0142       _RL  ocMxlD   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0143       _RL  SSTocn   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0144       _RL  SSSocn   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0145       _RL  vSqocn   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
c121b6d611 Jean*0146 
                0147 #ifdef ALLOW_AIM
                0148 C-    COMMON /ATM_CPL2AIM_R/
                0149 C     flxCO2ocn :: Ocean flux of CO2 (mol/m2/s).
                0150       COMMON /ATM_CPL2AIM_R/
                0151      &            flxCO2ocn
4ff1cd5702 Jean*0152       _RL  flxCO2ocn(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
c121b6d611 Jean*0153 #endif /* ALLOW_AIM */
                0154 
                0155 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|