Ignore:
Timestamp:
Sep 15, 2016, 10:25:51 AM (8 years ago)
Author:
mlefevre
Message:

Restored WRFV3 modification in module_model_constants.F lost in commit 1598

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MESOSCALE/LMD_MM_MARS/SRC/WRFV2/share/module_model_constants.F

    r1598 r1599  
    33!PLANET MARS
    44
    5 MODULE module_model_constants
     5 MODULE module_model_constants
    66   USE module_configure
    7    !  2. Following are constants for use in defining  REAL number bounds.
    8 
    9     IMPLICIT NONE
    10    !character(len=10),save :: planet_type
    11    !integer,save :: planet
     7   !  2. Following are constants for use in defining real number bounds.
     8
     9   !  A really small number.
     10
     11   REAL    , PARAMETER :: epsilon         = 1.E-15
     12
    1213   !  4. Following is information related to the physical constants.
    13 ! >> TODO: possible modification with startfi.nc values ?
    14 
     14
     15   !  These are the physical parameter used within the model.
     16
     17   !! added in WRFV3
     18   real    , parameter :: mwdry        = 43.49 ! molecular weight of dry air (g/mole)
    1519!
    1620!-------------------------------
    17     REAL    , PARAMETER :: epsilon         = 1.E-15
    18 !    REAL    , PARAMETER :: asselin      = .025
    19     REAL    , PARAMETER :: asselin      = .0
    20     REAL    , PARAMETER :: cb           = 25.
    21 
    22     REAL    , PARAMETER :: XLV0         = 3.15E6
    23     REAL    , PARAMETER :: XLV1         = 2370.
    24     REAL    , PARAMETER :: XLS0         = 2.905E6
    25     REAL    , PARAMETER :: XLS1         = 259.532
    26 
    27     REAL    , PARAMETER :: XLS          = 2.85E6
    28     REAL    , PARAMETER :: XLV          = 2.5E6
    29     REAL    , PARAMETER :: XLF          = 3.50E5
    30 
    31     REAL    , PARAMETER :: rhowater     = 1000.
    32     REAL    , PARAMETER :: rhosnow      = 100.
    33     REAL    , PARAMETER :: rhoair0      = 0.02   !Earth Surface density: 1.217 kg/m3
     21
     22   REAL    , PARAMETER :: asselin      = .025
     23!   REAL    , PARAMETER :: asselin      = .0
     24   REAL    , PARAMETER :: cb           = 25.
     25
     26   REAL    , PARAMETER :: XLV0         = 3.15E6
     27   REAL    , PARAMETER :: XLV1         = 2370.
     28   REAL    , PARAMETER :: XLS0         = 2.905E6
     29   REAL    , PARAMETER :: XLS1         = 259.532
     30
     31   REAL    , PARAMETER :: XLS          = 2.85E6
     32   REAL    , PARAMETER :: XLV          = 2.5E6
     33   REAL    , PARAMETER :: XLF          = 3.50E5
     34
     35   REAL    , PARAMETER :: rhowater     = 1000.
     36   REAL    , PARAMETER :: rhosnow      = 100.
     37   REAL    , PARAMETER :: rhoair0      = 0.02   !Earth Surface density: 1.217 kg/m3
    3438                                                !Mars Surface density: 0.020 kg/m3
    35     REAL    , PARAMETER :: DEGRAD       = 3.1415926/180.
    36     REAL    , PARAMETER :: DPD          = 360./669. ! longitude solaire d'un jour?
    37 
    38     REAL    , PARAMETER ::  SVP1=0.6112
    39     REAL    , PARAMETER ::  SVP2=17.67
    40     REAL    , PARAMETER ::  SVP3=29.65
    41     REAL    , PARAMETER ::  SVPT0=273.15
    42 
    43     REAL    , PARAMETER ::  KARMAN=0.4  ! von karman constant
    44 
    45     REAL    , PARAMETER ::  STBOLT=5.67051E-8 ! stefan-boltzmann constant
    46 
    47                                       ! proportionality constants for eddy viscosity coefficient calc
    48     REAL    , PARAMETER ::  c_s = .25  ! turbulence parameterization constant, for smagorinsky
    49 !    REAL    , PARAMETER ::  c_s = .1  ! turbulence parameterization constant, for smagorinsky
    50     REAL    , PARAMETER ::  c_k = .15  ! turbulence parameterization constant, for TKE
    51     REAL    , PARAMETER ::  prandtl = 1./3.0
     39   REAL    , PARAMETER :: DEGRAD       = 3.1415926/180.
     40   REAL    , PARAMETER :: DPD          = 360./669. ! longitude solaire d'un jour?
     41
     42   REAL    , PARAMETER ::  SVP1=0.6112
     43   REAL    , PARAMETER ::  SVP2=17.67
     44   REAL    , PARAMETER ::  SVP3=29.65
     45   REAL    , PARAMETER ::  SVPT0=273.15
     46   REAL    , PARAMETER ::  KARMAN=0.4  ! von karman constant
     47   REAL    , PARAMETER ::  STBOLT=5.67051E-8 ! stefan-boltzmann constant
     48
     49   !! NB: c_s and c_k in WRFV2 moved to module_diffusion_em.F
     50   !! NB: no need in WRFV3 because set in namelist
     51   REAL    , PARAMETER ::  prandtl = 1./3.0
    5252                                         ! constants for w-damping option
    53 !    REAL    , PARAMETER ::  w_alpha = 0.3 ! strength m/s/s
    54     REAL    , PARAMETER ::  w_alpha = 2.0 ! strength m/s/s
    55 !    REAL    , PARAMETER ::  w_beta  = 1.0 ! activation cfl number
    56     REAL    , PARAMETER ::  w_beta  = 0.8 ! activation cfl number
    57 
    58         REAL , PARAMETER ::  pq0=379.90516
    59         REAL , PARAMETER ::  epsq2=0.2
    60 !try both ?
    61 !        REAL , PARAMETER ::  epsq2=0.02
    62         REAL , PARAMETER ::  a2=17.2693882
    63         REAL , PARAMETER ::  a3=273.16
    64         REAL , PARAMETER ::  a4=35.86
    65         REAL , PARAMETER ::  epsq=1.e-12
    66 
     53!   REAL    , PARAMETER ::  w_alpha = 0.3 ! strength m/s/s
     54   REAL    , PARAMETER ::  w_alpha = 2.0 ! strength m/s/s
     55!   REAL    , PARAMETER ::  w_beta  = 1.0 ! activation cfl number
     56   REAL    , PARAMETER ::  w_beta  = 0.8 ! activation cfl number
     57
     58!! in WRFV3
     59!   REAL    , PARAMETER ::  w_alpha = 0.3 ! strength m/s/s
     60!   REAL    , PARAMETER ::  w_beta  = 1.0 ! activation cfl number
     61!!
     62       REAL , PARAMETER ::  pq0=379.90516
     63       REAL , PARAMETER ::  epsq2=0.2
     64!      REAL , PARAMETER ::  epsq2=0.02
     65       REAL , PARAMETER ::  a2=17.2693882
     66       REAL , PARAMETER ::  a3=273.16
     67       REAL , PARAMETER ::  a4=35.86
     68       REAL , PARAMETER ::  epsq=1.e-12
    6769!#if ( NMM_CORE == 1 )
    68         REAL , PARAMETER ::  climit=1.e-20
    69         REAL , PARAMETER ::  cm1=2937.4
    70         REAL , PARAMETER ::  cm2=4.9283
    71         REAL , PARAMETER ::  cm3=23.5518
    72 !        REAL , PARAMETER ::  defc=8.0
    73 !        REAL , PARAMETER ::  defm=32.0
    74         REAL , PARAMETER ::  defc=0.0
    75         REAL , PARAMETER ::  defm=99999.0
    76         REAL , PARAMETER ::  epsfc=1./1.05
    77         REAL , PARAMETER ::  epswet=0.0
    78         REAL , PARAMETER ::  fcdif=1./3.
    79 !        REAL , PARAMETER ::  fcm=0.003
    80         REAL , PARAMETER ::  fcm=0.00003
    81 !        REAL , PARAMETER ::  fcm=0.0
    82        
    83         REAL , PARAMETER ::  p400=40000.0
    84         REAL , PARAMETER ::  phitp=15000.0
    85         REAL , PARAMETER ::  pi2=2.*3.1415926
    86         REAL , PARAMETER ::  plbtm=105000.0
    87         REAL , PARAMETER ::  plomd=64200.0
    88         REAL , PARAMETER ::  pmdhi=35000.0
    89         REAL , PARAMETER ::  q2ini=0.50
    90         REAL , PARAMETER ::  rhcrit_land=0.75
    91         REAL , PARAMETER ::  rhcrit_sea=0.80
    92         REAL , PARAMETER ::  rlag=14.8125
    93         REAL , PARAMETER ::  rlx=0.90
    94         REAL , PARAMETER ::  scq2=50.0
    95         REAL , PARAMETER ::  slopht=0.001
    96         REAL , PARAMETER ::  tlc=2.*0.703972477
    97         REAL , PARAMETER ::  wa=0.15
    98         REAL , PARAMETER ::  wght=0.35
    99         REAL , PARAMETER ::  wpc=0.075
    100         REAL , PARAMETER ::  z0land=0.10
    101 !        REAL , PARAMETER ::  z0max=0.01
    102         REAL , PARAMETER ::  z0max=0.008
    103         REAL , PARAMETER ::  z0sea=0.001
    104         REAL, PARAMETER :: r_v=461.6 ! gas constant for water vapor
     70       REAL , PARAMETER ::  climit=1.e-20
     71       REAL , PARAMETER ::  cm1=2937.4
     72       REAL , PARAMETER ::  cm2=4.9283
     73       REAL , PARAMETER ::  cm3=23.5518
     74!       REAL , PARAMETER ::  defc=8.0
     75!       REAL , PARAMETER ::  defm=32.0
     76       REAL , PARAMETER ::  defc=0.0
     77       REAL , PARAMETER ::  defm=99999.0
     78       REAL , PARAMETER ::  epsfc=1./1.05
     79       REAL , PARAMETER ::  epswet=0.0
     80       REAL , PARAMETER ::  fcdif=1./3.
     81!       REAL , PARAMETER ::  fcm=0.003
     82       REAL , PARAMETER ::  fcm=0.00003
     83!       REAL , PARAMETER ::  fcm=0.0
     84       REAL , PARAMETER ::  p400=40000.0
     85       REAL , PARAMETER ::  phitp=15000.0
     86       REAL , PARAMETER ::  pi2=2.*3.1415926
     87       REAL , PARAMETER ::  plbtm=105000.0
     88       REAL , PARAMETER ::  plomd=64200.0
     89       REAL , PARAMETER ::  pmdhi=35000.0
     90       REAL , PARAMETER ::  q2ini=0.50
     91       REAL , PARAMETER ::  rhcrit_land=0.75
     92       REAL , PARAMETER ::  rhcrit_sea=0.80
     93       REAL , PARAMETER ::  rlag=14.8125
     94       REAL , PARAMETER ::  rlx=0.90
     95       REAL , PARAMETER ::  scq2=50.0
     96       REAL , PARAMETER ::  slopht=0.001
     97       REAL , PARAMETER ::  tlc=2.*0.703972477
     98       REAL , PARAMETER ::  wa=0.15
     99       REAL , PARAMETER ::  wght=0.35
     100       REAL , PARAMETER ::  wpc=0.075
     101       REAL , PARAMETER ::  z0land=0.10
     102!       REAL , PARAMETER ::  z0max=0.01
     103       REAL , PARAMETER ::  z0max=0.008
     104       REAL , PARAMETER ::  z0sea=0.001
     105       REAL, PARAMETER :: r_v=461.6 ! gas constant for water vapor
     106!#endif
     107
     108!!!! needed in WRFV3
     109   !  Earth
     110
     111   !  The value for P2SI *must* be set to 1.0 for Earth
     112   !  Although, now we may not need this declaration here (see above)
     113   !REAL    , PARAMETER :: P2SI         = 1.0
     114
     115   !  Orbital constants:
     116
     117   INTEGER , PARAMETER :: PLANET_YEAR = 365
     118   REAL , PARAMETER :: OBLIQUITY = 23.5
     119   REAL , PARAMETER :: ECCENTRICITY = 0.014
     120   REAL , PARAMETER :: SEMIMAJORAXIS = 1.0 ! In AU
     121   ! Don't know the following values, so we'll fake them for now
     122   REAL , PARAMETER :: zero_date = 0.0   ! Time of perihelion passage
     123   !  Fraction into the year (from perhelion) of the
     124   !  occurrence of the Northern Spring Equinox
     125   REAL , PARAMETER :: EQUINOX_FRACTION= 0.0
     126!!!! needed in WRFV3
     127
     128   !  These are the physical constants planet dependent used within the model.
    105129
    106130     real :: g
     
    119143     REAL :: rovg       
    120144     REAL :: c2     
    121      real :: mwdry     !molecular weight of dry air (g/mole)
    122145     REAL :: EOMEG ! angular rotation rate (rad.s-1) 
    123146
     
    159182    REAL  :: wvolcapa       ! volumetric capacity of soil (new soil model)
    160183    REAL  :: z_scale        ! scale height
     184
    161185 CONTAINS
    162186  SUBROUTINE init_planet_constants
     
    170194   !  These are the physical constants used within the model
    171195   
    172     IF ( planet == "mars" ) then !1=mars
     196    IF ( planet == "mars" ) then
    173197! JM NOTE -- can we name this grav instead?
    174198     g = 3.72  ! acceleration due to gravity (m {s}^-2)
     
    190214     p0           = 610.
    191215     p1000mb      = 610.
    192      mwdry        = 43.49
    193216     reradius     = 1./3397200. ! Rayon de mars (m)  ~3397200 m
    194217     EOMEG        =7.0721E-5 ! angular rotation rate (rad.s-1)
     
    217240#endif
    218241!#endif
    219     ELSE if ( planet == "venus") then !2=venus
     242    ELSE if ( planet == "venus") then
    220243     g            = 8.87
    221244     r_d          = 191.84383904727036
     
    231254     wmugaz       = 43.49
    232255     womeg        = 0.2992549E-06
    233      wdaysec      = 0.1008707E+08
     256     wdaysec      = 0.1008707E08
    234257    Else
    235258     write(*,*) "unknown planet type:", planet
     
    260283    write(*,*) "p0 = ", p0
    261284  END SUBROUTINE init_planet_constants
    262 END MODULE module_model_constants
     285 END MODULE module_model_constants
Note: See TracChangeset for help on using the changeset viewer.