Ignore:
Timestamp:
Apr 18, 2012, 10:17:12 AM (13 years ago)
Author:
tnavarro
Message:

New scheme for the clouds, no more sub-timestep. Clouds sedimentation is done with the dust one in callsedim.F like it was before. Added latent heat for sublimating ground ice. Bugs corrected. THIS VERSION OF THE WATER CYCLE SHOULD NOT BE USED WITH THERMALS DUE TO NEGATIVE TRACERS ISSUES.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/phymars/growthrate.F

    r530 r626  
    1       subroutine growthrate(timestep,temp,pmid,ph2o,psat,
    2      &                      seq,rcrystal,growth)
     1      subroutine growthrate(temp,pmid,psat,seq,rcrystal,coeff1,coeff2)
    32
    43      IMPLICIT NONE
     
    109c     Authors: F. Montmessin
    1110c       Adapted for the LMD/GCM by J.-B. Madeleine (October 2011)
     11c       Use of resistances in the analytical function
     12c            instead of growth rate - T. Navarro (2012)
    1213c     
    1314c=======================================================================
     
    2728c   ----------
    2829
    29       REAL timestep
     30c     Input
    3031      REAL temp     ! temperature in the middle of the layer (K)
    3132      REAL pmid     ! pressure in the middle of the layer (K)
    32       REAL*8 ph2o   ! water vapor partial pressure (Pa)
    3333      REAL*8 psat   ! water vapor saturation pressure (Pa)
     34      REAL*8 seq    ! Equilibrium saturation ratio
    3435      REAL rcrystal ! crystal radius before condensation (m)
    35       REAL*8 seq    ! Equilibrium saturation ratio
    36       REAL*8 growth
     36
     37c     Output
     38      REAL coeff1,coeff2     ! coefficients for the analytical relation between time and radius
     39
    3740
    3841c   local:
     
    4346      REAL*8 afactor,Dv,lambda       ! Intermediate computations for growth rate
    4447      REAL*8 Rk,Rd
     48     
     49     
    4550
    4651c-----------------------------------------------------------------------
     
    7378     &   ( pi * pmid * (molco2+molh2o)*(molco2+molh2o)
    7479     &        * sqrt(1.+mh2o/mco2) )
    75 
     80     
    7681      knudsen = temp / pmid * afactor / rcrystal
    7782      lambda  = (1.333+0.71/knudsen) / (1.+1./knudsen)
    78       Dv      = Dv / (1. + lambda * knudsen)
     83     
     84c      Dv is not corrected. Instead, we use below coefficients coeff1, coeff2
     85c      Dv      = Dv / (1. + lambda * knudsen)
    7986
    8087c     - Compute Rk
     
    8289c     - Compute Rd
    8390      Rd = rgp * temp *rho_ice / (Dv*psat*mh2o)
    84 
     91     
     92     
     93      coeff1 = real(Rk + Rd*(1. + lambda * knudsen))
     94      coeff2 = real(Rk + Rd*(1. - lambda * knudsen))
     95     
     96c Below are growth rate used for other schemes
    8597c     - Compute growth=rdr/dt, then r(t+1)= sqrt(r(t)**2.+2.*growth*dt)
    86       growth = 1. / (seq*Rk+Rd)
    87 c       growth = (ph2o/psat-seq) / (seq*Rk+Rd)
     98c      growth = 1. / (seq*Rk+Rd)
     99c      growth = (ph2o/psat-seq) / (seq*Rk+Rd)
    88100c      rf   = sqrt( max( r**2.+2.*growth*timestep , 0. ) )
    89101c      dr   = rf-r
Note: See TracChangeset for help on using the changeset viewer.