Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:38:21 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
5b5e7c31c6 Jean*0001 c #ifdef ALLOW_CHEAPAML
                0002 C     !ROUTINE: CHEAPAML.h
                0003 C -------------------------------
                0004 C   CHEAPAML.h
cf5b5345a0 Jean*0005 C   Parameters for cheap atmos mixed layer model
5b5e7c31c6 Jean*0006 C -------------------------------
cc99c9c4f4 Jean*0007 C     Tr :: Relaxation temperature profile for lateral boundary region [^oC]
5b5e7c31c6 Jean*0008 C     qr :: Relaxation specific humidity profile for lateral boundary region
cc99c9c4f4 Jean*0009 C     Tair :: atmosphere boundary layer temperature [^oC]
5b5e7c31c6 Jean*0010 C     gTairm :: atmosphere temperature tendency
cc99c9c4f4 Jean*0011 C     qair :: atmosphere specific humidity  [-]
ced0783fba Jean*0012 C     gqairm :: atmosphere moisture tendency
cc99c9c4f4 Jean*0013 C     uWind :: zonal wind component at grid-cell Western  edge (uVel location)
                0014 C     vWind :: meridional wind comp at grid-cell Southern edge (vVel location)
                0015 C     solar :: short wave insolation (+=dw) [W/m2]
                0016 C     ustress :: zonal wind stress component at grid-cell center (A-grid) [N/m2]
                0017 C     vstress :: meridional wind stress comp at grid-cell center (A-grid) [N/m2]
51132e5783 Nico*0018 C     Cheaptracer :: passive tracer
                0019 C     CheaptracerR :: Relaxation profile for passive tracer
                0020 C     gCheaptracerm :: passive tracer tendency
cc99c9c4f4 Jean*0021 C     cheapPrecip   :: precipitation (+=dw) [kg/m2/s]
3379260551 Jean*0022 
                0023       COMMON /CHEAPAML_VARS/
4fa4901be6 Nico*0024      &       Tr, qr,
3379260551 Jean*0025      &       Tair, gTairm,
4fa4901be6 Nico*0026      &       qair, gqairm,
cc99c9c4f4 Jean*0027      &       uWind, vWind, solar,
                0028      &       wWind,
ced0783fba Jean*0029      &       ustress, vstress,
7e0a43f4a2 Jean*0030      &       wavesh, wavesp, xrelf, CheapHgrid,
cc99c9c4f4 Jean*0031      &       Cheapclouds, Cheapdlongwave,
2616d73cb2 Nico*0032      &       Cheaptracer, CheaptracerR, gCheaptracerm,
7e0a43f4a2 Jean*0033 c    &       cheapPrGrid,
                0034      &       cheapPrecip
2616d73cb2 Nico*0035 
ced0783fba Jean*0036       _RL    Tr     (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0037       _RL    qr     (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0038       _RL    Tair   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0039       _RL    gTairm (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0040       _RL    qair   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0041       _RL    gqairm (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
cc99c9c4f4 Jean*0042       _RL    uWind  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0043       _RL    vWind  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0044       _RL    wWind  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
ced0783fba Jean*0045       _RL    Solar  (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0046       _RL    ustress(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0047       _RL    vstress(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0048       _RL    wavesh (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0049       _RL    wavesp (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
cc99c9c4f4 Jean*0050       _RL    xrelf   (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0051       _RL    cheapPrecip(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0052       _RL    CheapHgrid (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
7e0a43f4a2 Jean*0053 c     _RL    cheapPrGrid(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
2616d73cb2 Nico*0054       _RL    Cheapclouds(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
1d89809ef0 Nico*0055       _RL    Cheapdlongwave(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
51132e5783 Nico*0056       _RL    Cheaptracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0057       _RL    CheaptracerR(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0058       _RL    gCheaptracerm(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
                0059 
2d31068647 Jean*0060 C     cheap_tauRelax    :: main relaxation time-scale (in sec) for atm T & Q
                0061 C                          used with cheapMask (if provided) or over land
                0062 C     cheap_tauRelaxOce :: relaxation time-scale (in sec) for atm T & Q,
                0063 C                          used over ocean if cheapMask is not provided
fabbf6ab19 Jean*0064 C     lath      :: latent heat (J/kg)
                0065 C     xkar      :: von Karman constant
                0066 C     gasR      :: gas constant
                0067 C     dsolms    :: Solar variation at Southern boundary
                0068 C     dsolmn    :: Solar variation at Northern boundary
                0069 C     xphaseinit :: user input initial phase of year relative to mid winter.
                0070 C                   e.g. xphaseinit = pi implies time zero is mid summer.
                0071 C     gamma_blk :: atmospheric adiabatic lapse rate
                0072 C     humid_fac :: humidity factor for computing virtual potential temperature
                0073 C     p0        :: surface pressure in mb
                0074 C     ssq[0:2]  :: coeff. used to compute saturation specific humidity
                0075 C     cheap_pr1 :: precipitation time constant
                0076 C     cheap_pr2 :: precipitation time constant
3379260551 Jean*0077       COMMON /CHEAPAML_PARMS_R/
                0078      &       cheapaml_h,
                0079      &       cheapaml_kdiff,
2d31068647 Jean*0080      &       cheap_tauRelax, cheap_tauRelaxOce,
ced0783fba Jean*0081      &       rhoa, cpair, stefan,
                0082      &       lath, xkar, gasR,
                0083      &       dsolms, dsolmn,
                0084      &       xphaseinit, gamma_blk, humid_fac, p0,
fabbf6ab19 Jean*0085      &       ssq0, ssq1, ssq2,
2616d73cb2 Nico*0086      &       xef, hm,
ced0783fba Jean*0087      &       zu, zt, zq,
4fa4901be6 Nico*0088      &       cdrag_1, cdrag_2, cdrag_3,
                0089      &       externForcingPeriod_cheap,
2616d73cb2 Nico*0090      &       externForcingCycle_cheap,
fabbf6ab19 Jean*0091      &       cheap_pr1, cheap_pr2
cf5b5345a0 Jean*0092       _RL    cheapaml_h
3379260551 Jean*0093       _RL    cheapaml_kdiff
2d31068647 Jean*0094       _RL    cheap_tauRelax, cheap_tauRelaxOce
3379260551 Jean*0095       _RL    rhoa, cpair, stefan
ced0783fba Jean*0096       _RL    lath, xkar, gasR
                0097       _RL    dsolms, dsolmn
                0098       _RL    xphaseinit, gamma_blk, humid_fac, p0
fabbf6ab19 Jean*0099       _RL    ssq0, ssq1, ssq2
2616d73cb2 Nico*0100       _RL    xef, hm
ced0783fba Jean*0101       _RL    zu, zt, zq
cf5b5345a0 Jean*0102       _RL    cdrag_1, cdrag_2, cdrag_3
4fa4901be6 Nico*0103       _RL    externForcingPeriod_cheap
0b40ec04c4 Jean*0104       _RL    externForcingCycle_cheap
2616d73cb2 Nico*0105       _RL    cheap_pr1,cheap_pr2
3379260551 Jean*0106 
fabbf6ab19 Jean*0107 C    cheap[]StartAB :: Adams-Bashforth restart status for prognostic variable []
3379260551 Jean*0108       COMMON /CHEAPAML_PARMS_I/
ced0783fba Jean*0109      &       cheapaml_ntim,
0b40ec04c4 Jean*0110      &       cheapaml_mask_width,
fabbf6ab19 Jean*0111      &       cheapTairStartAB, cheapQairStartAB, cheapTracStartAB
5b5e7c31c6 Jean*0112       INTEGER cheapaml_ntim
ced0783fba Jean*0113       INTEGER cheapaml_mask_width
fabbf6ab19 Jean*0114       INTEGER cheapTairStartAB, cheapQairStartAB, cheapTracStartAB
3379260551 Jean*0115 
fabbf6ab19 Jean*0116 C--   COMMON /CHEAPAML_PARMS_L/
76b059cef2 Jean*0117 C     cheapamlXperiodic :: domain (including land) is periodic in X dir
                0118 C     cheapamlYperiodic :: domain (including land) is periodic in Y dir
fabbf6ab19 Jean*0119 C     useFreshWaterFlux :: option to include evap+precip  (on  by default)
                0120 C     useFluxLimit      :: use flux limiting advection    (off by default)
                0121 C     useStressOption   :: use stress option              (off by default)
                0122 C     useCheapTracer    :: use passive tracer option      (off by default)
                0123 C     useTimeVarBLH     :: use time varying BL height option (off by default)
                0124 C     useClouds         :: use clouds option              (off by default)
cf6b9ab292 Brun*0125 C     useDLongWave      :: use imported downward longwave  (off by default)
                0126 C     usePrecip         :: use imported precipitation (off by default)
d54b0079d9 Brun*0127 C     useRelativeWind   :: use relative wind (off by default)
3379260551 Jean*0128       COMMON /CHEAPAML_PARMS_L/
76b059cef2 Jean*0129      &       cheapamlXperiodic,
                0130      &       cheapamlYperiodic,
0b40ec04c4 Jean*0131      &       useFreshWaterFlux,
ced0783fba Jean*0132      &       useFluxLimit,
                0133      &       useStressOption,
4fa4901be6 Nico*0134      &       useRelativeHumidity,
51132e5783 Nico*0135      &       periodicExternalForcing_cheap,
2616d73cb2 Nico*0136      &       useCheapTracer,
fabbf6ab19 Jean*0137      &       useTimeVarBLH,
                0138      &       useClouds,
cf6b9ab292 Brun*0139      &       useDLongWave,
d54b0079d9 Brun*0140      &       usePrecip,
                0141      &       useRelativeWind
76b059cef2 Jean*0142       LOGICAL cheapamlXperiodic
                0143       LOGICAL cheapamlYperiodic
0b40ec04c4 Jean*0144       LOGICAL useFreshWaterFlux
ced0783fba Jean*0145       LOGICAL useFluxLimit
                0146       LOGICAL useStressOption
                0147       LOGICAL useRelativeHumidity
4fa4901be6 Nico*0148       LOGICAL periodicExternalForcing_cheap
51132e5783 Nico*0149       LOGICAL useCheapTracer
fabbf6ab19 Jean*0150       LOGICAL useTimeVarBLH
                0151       LOGICAL useClouds
                0152       LOGICAL useDLongWave
cf6b9ab292 Brun*0153       LOGICAL usePrecip
d54b0079d9 Brun*0154       LOGICAL useRelativeWind
3379260551 Jean*0155 
                0156       COMMON /CHEAPAML_PARMS_C/
4fa4901be6 Nico*0157      &       AirTempFile, AirQFile, SolarFile,
ced0783fba Jean*0158      &       UWindFile, VWindFile, UStressFile, VStressFile,
4fa4901be6 Nico*0159      &       TrFile, QrFile,
51132e5783 Nico*0160      &       WaveHFile, WavePFile, FluxFormula, WaveModel,
fabbf6ab19 Jean*0161      &       TracerFile, TracerRFile, cheapMaskFile, cheap_hFile,
                0162      &       cheap_prFile, cheap_clFile, cheap_dlwFile
ced0783fba Jean*0163 
cf5b5345a0 Jean*0164       CHARACTER*(MAX_LEN_FNAM) AirTempFile
                0165       CHARACTER*(MAX_LEN_FNAM) AirQFile
                0166       CHARACTER*(MAX_LEN_FNAM) SolarFile
                0167       CHARACTER*(MAX_LEN_FNAM) UWindFile
                0168       CHARACTER*(MAX_LEN_FNAM) VWindFile
ced0783fba Jean*0169       CHARACTER*(MAX_LEN_FNAM) UStressFile
                0170       CHARACTER*(MAX_LEN_FNAM) VStressFile
                0171       CHARACTER*(MAX_LEN_FNAM) TrFile
3379260551 Jean*0172       CHARACTER*(MAX_LEN_FNAM) QrFile
ced0783fba Jean*0173       CHARACTER*(MAX_LEN_FNAM) WaveHFile
                0174       CHARACTER*(MAX_LEN_FNAM) WavePFile
                0175       CHARACTER*(MAX_LEN_FNAM) FluxFormula
                0176       CHARACTER*(MAX_LEN_FNAM) WaveModel
51132e5783 Nico*0177       CHARACTER*(MAX_LEN_FNAM) TracerFile
                0178       CHARACTER*(MAX_LEN_FNAM) TracerRFile
fabbf6ab19 Jean*0179       CHARACTER*(MAX_LEN_FNAM) cheapMaskFile
                0180       CHARACTER*(MAX_LEN_FNAM) cheap_hFile
                0181       CHARACTER*(MAX_LEN_FNAM) cheap_prFile
                0182       CHARACTER*(MAX_LEN_FNAM) cheap_clFile
1d89809ef0 Nico*0183       CHARACTER*(MAX_LEN_FNAM) cheap_dlwFile
ced0783fba Jean*0184 
5b5e7c31c6 Jean*0185 c #endif /* ALLOW_CHEAPAML */