Ignore:
Timestamp:
Jan 27, 2016, 10:42:32 AM (8 years ago)
Author:
idelkadi
Message:

Mise a jour du simulateur COSP (passage de la version v3.2 a la version v1.4) :

  • mise a jour des sources pour ISCCP, CALIPSO et PARASOL
  • prise en compte des changements de phases pour les nuages (Calipso)
  • rajout de plusieurs diagnostiques (fraction nuageuse en fonction de la temperature, ...)

http://lmdz.lmd.jussieu.fr/Members/aidelkadi/cosp

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/cosp/radar_simulator_types.F90

    r1907 r2428  
    33! Collection of common variables and types
    44! Part of QuickBeam v1.03 by John Haynes
    5 ! http://reef.atmos.colostate.edu/haynes/radarsim
     5! Updated by Roj Marchand June 2010
    66
    77  integer, parameter ::       &
    8   maxhclass = 20             ,& ! max number of hydrometeor classes
    9   nd = 85                    ,& ! number of discrete particles 
    10   nRe_types = 250               ! number or Re size bins allowed in N and Z_scaled look up table
     8  maxhclass = 20         ,& ! max number of hydrometeor classes
     9  nRe_types = 550       ! max number or Re size bins allowed in N and Z_scaled look up table
    1110
     11  ! These variables define discrete diameters used to represent the DSDs.
     12  integer, parameter ::       &
     13  nd = 85               ! number of discrete particles used in construction DSDs
    1214  real*8, parameter ::        &
    1315  dmin = 0.1                 ,& ! min size of discrete particle
    14   dmax = 10000.                 ! max size of discrete particle
     16  dmax = 10000.                 ! max size of discrete particle
    1517   
    16   integer, parameter :: &
     18  integer, parameter :: &   ! These parameters used to define temperature intervals in mie LUTs
    1719  mt_nfreq = 5              , &
    18   mt_ntt = 39               , & ! num temperatures in table
    19   mt_nf = 14                , & ! number of ice fractions in table 
    20   mt_nd = 85                   ! num discrete mode-p drop sizes in table
     20  mt_ntt = 39               , & ! num temperatures in table
     21  mt_nf = 14            , & ! number of ice fractions in table 
     22  mt_nd = 85                    ! num discrete mode-p drop sizes in table
     23
     24  integer, parameter :: &   ! These parameters used to defines Re intervals in scale LUTs
     25  Re_BIN_LENGTH=10, &       
     26  Re_MAX_BIN=250
     27
     28  integer, parameter :: &   ! These parameters used to define Temperature invervals in scale LUTs
     29  cnt_liq = 19, &       ! liquid temperature count
     30  cnt_ice = 20          ! ice temperature count
    2131
    2232
     
    2434 
    2535  type class_param
     36 
     37    ! variables used to store hydrometeor "default" properties
    2638    real*8,  dimension(maxhclass) :: p1,p2,p3,dmin,dmax,apm,bpm,rho
    2739    integer, dimension(maxhclass) :: dtype,col,cp,phase
    28     logical, dimension(maxhclass,nRe_types) :: scaled
    29     logical, dimension(maxhclass,mt_ntt,nRe_types) :: z_flag
     40 
     41    ! Radar properties
     42    real*8  :: freq,k2
     43    integer :: nhclass      ! number of hydrometeor classes in use
     44    integer :: use_gas_abs, do_ray
     45   
     46    ! defines location of radar relative to hgt_matrix.   
     47    logical :: radar_at_layer_one       ! if true radar is assume to be at the edge
     48                                        ! of the first layer, if the first layer is the
     49                                        ! surface than a ground-based radar.   If the
     50                                        ! first layer is the top-of-atmosphere, then
     51                                        ! a space borne radar.
     52   
     53    ! variables used to store Z scale factors
     54    character*240 :: scale_LUT_file_name
     55    logical :: load_scale_LUTs, update_scale_LUTs
     56    logical, dimension(maxhclass,nRe_types) :: N_scale_flag
     57    logical, dimension(maxhclass,mt_ntt,nRe_types) :: Z_scale_flag,Z_scale_added_flag
    3058    real*8,  dimension(maxhclass,mt_ntt,nRe_types) :: Ze_scaled,Zr_scaled,kr_scaled
    3159    real*8,  dimension(maxhclass,nd,nRe_types) :: fc, rho_eff
    32     integer, dimension(maxhclass,nd,nRe_types) :: ifc
    33     integer, dimension(maxhclass) :: idd
     60
     61    ! used to determine Re index
     62    real*8  :: step_list(Re_MAX_BIN),base_list(Re_MAX_BIN)
     63 
     64    ! used to determine temperature index
     65    real*8 :: &
     66        mt_ttl(cnt_liq), &  ! liquid temperatures (K)
     67        mt_tti(cnt_ice)     ! ice temperatures (K)
     68
     69    real*8 :: D(nd) ! set of discrete diameters used to represent DSDs
     70
    3471  end type class_param
    35 
    36 ! ----- mie table structure -----
    3772 
    38   type mie
    39     real*8 :: freq(mt_nfreq), tt(mt_ntt), f(mt_nf), D(mt_nd)
    40     real*8, dimension(mt_nd,mt_ntt,mt_nf,mt_nfreq) :: qext, qbsca
    41     integer :: phase(mt_ntt)
    42   end type mie
    43 
    44   real*8, dimension(:), save, allocatable :: &
    45     mt_ttl, &                   ! liquid temperatures (C)
    46     mt_tti, &                   ! ice temperatures (C)
    47     mt_qext, mt_qbsca           ! extincion/backscatter efficiency
    48 !$OMP THREADPRIVATE(mt_ttl,mt_tti,mt_qext, mt_qbsca)
    49 
    50   integer*4,save :: &
    51     cnt_liq, &                  ! liquid temperature count
    52     cnt_ice                     ! ice temperature count
    53 !$OMP THREADPRIVATE(cnt_liq,cnt_ice)
    54 
     73   
    5574  end module radar_simulator_types
Note: See TracChangeset for help on using the changeset viewer.