Ignore:
Timestamp:
Mar 10, 2022, 7:23:47 PM (2 years ago)
Author:
fhourdin
Message:

Reecriture des thermiques

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/thermcell_plume.F90

    r3451 r4089  
    2121!   = 29 : an other way to compute the modified buoyancy (to be tested)
    2222!--------------------------------------------------------------------------
    23 USE IOIPSL, ONLY : getin
    24 USE ioipsl_getin_p_mod, ONLY : getin_p
    25 
    26        USE print_control_mod, ONLY: prt_level
     23       USE thermcell_ini_mod, ONLY: prt_level,fact_thermals_ed_dz,iflag_thermals_ed,RLvCP,RETV,RG
     24       USE thermcell_ini_mod, ONLY: fact_epsilon, betalpha, afact, fact_shell
     25       USE thermcell_ini_mod, ONLY: detr_min, entr_min, detr_q_coef, detr_q_power
     26       USE thermcell_ini_mod, ONLY: mix0, thermals_flag_alim
     27
     28
    2729       IMPLICIT NONE
    28 
    29 #include "YOMCST.h"
    30 #include "YOETHF.h"
    31 #include "FCTTRE.h"
    32 #include "thermcell.h"
    3330
    3431      INTEGER itap
     
    10198      real zbetalpha, coefzlmel
    10299      real eps
    103       REAL REPS,RLvCp,DDT0
    104       PARAMETER (DDT0=.01)
    105100      logical Zsat
    106101      LOGICAL active(ngrid),activetmp(ngrid)
    107102      REAL fact_gamma,fact_gamma2,fact_epsilon2
    108103
    109       REAL, SAVE :: fact_epsilon=0.002
    110       REAL, SAVE :: betalpha=0.9
    111       REAL, SAVE :: afact=2./3.
    112       REAL, SAVE :: fact_shell=1.
    113       REAL,SAVE :: detr_min=1.e-5
    114       REAL,SAVE :: entr_min=1.e-5
    115       REAL,SAVE :: detr_q_coef=0.012
    116       REAL,SAVE :: detr_q_power=0.5
    117       REAL,SAVE :: mix0=0.
    118       INTEGER,SAVE :: thermals_flag_alim=0
    119 
    120 !$OMP THREADPRIVATE(fact_epsilon, betalpha, afact, fact_shell)
    121 !$OMP THREADPRIVATE(detr_min, entr_min, detr_q_coef, detr_q_power)
    122 !$OMP THREADPRIVATE( mix0, thermals_flag_alim)
    123 
    124       LOGICAL, SAVE :: first=.true.
    125   !$OMP THREADPRIVATE(first)
    126 
    127104
    128105      REAL c2(ngrid,klev)
     
    132109! Initialisation
    133110
    134       RLvCp = RLVTT/RCPD
    135       IF (first) THEN
    136 
    137      CALL getin_p('thermals_fact_epsilon',fact_epsilon)
    138      CALL getin_p('thermals_betalpha',betalpha)
    139      CALL getin_p('thermals_afact',afact)
    140      CALL getin_p('thermals_fact_shell',fact_shell)
    141      CALL getin_p('thermals_detr_min',detr_min)
    142      CALL getin_p('thermals_entr_min',entr_min)
    143      CALL getin_p('thermals_detr_q_coef',detr_q_coef)
    144      CALL getin_p('thermals_detr_q_power',detr_q_power)
    145      CALL getin_p('thermals_mix0',mix0)
    146      CALL getin_p('thermals_flag_alim',thermals_flag_alim)
    147 
    148 
    149       first=.false.
    150       ENDIF
    151111
    152112      zbetalpha=betalpha/(1.+betalpha)
Note: See TracChangeset for help on using the changeset viewer.