Changeset 5140 for LMDZ6/branches/Amaury_dev/libf
- Timestamp:
- Jul 29, 2024, 10:57:23 AM (3 months ago)
- Location:
- LMDZ6/branches/Amaury_dev/libf
- Files:
-
- 2 deleted
- 30 edited
- 6 moved
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/control_mod.F90
r5101 r5140 1 2 ! $Id $3 4 1 MODULE control_mod 5 6 ! LF 01/20107 ! Remplacement du fichier et common control8 9 2 IMPLICIT NONE 10 3 -
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/diverg.f90
r5136 r5140 19 19 ! div est un argument de sortie pour le s-prog 20 20 ! 21 ! 22 ! --------------------------------------------------------------------- 23 ! 24 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ . 25 ! 26 ! --------------------------------------------------------------------- 21 27 22 INCLUDE "dimensions.h" 28 23 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/diverg_gam.f90
r5136 r5140 20 20 ! div est un argument de sortie pour le s-prog 21 21 ! 22 !23 ! ---------------------------------------------------------------------24 !25 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ .26 !27 ! ---------------------------------------------------------------------28 22 INCLUDE "dimensions.h" 29 23 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/divergf.f90
r5136 r5140 19 19 ! x et y sont des arguments d'entree pour le s-prog 20 20 ! div est un argument de sortie pour le s-prog 21 ! 22 ! 23 ! --------------------------------------------------------------------- 24 ! 25 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ . 26 ! 27 ! --------------------------------------------------------------------- 21 28 22 INCLUDE "dimensions.h" 29 23 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/interpre.f90
r5136 r5140 40 40 41 41 ! CALCUL DE LA PRESSION DE SURFACE 42 ! Les coefficients ap et bp sont passés en common43 42 ! Calcul de la pression au sol en mb optimisée pour 44 43 ! la vectorialisation -
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/lmdz_comdissnew.f90
r5134 r5140 15 15 16 16 REAL tetagdiv, tetagrot, tetatemp, coefdis 17 ! ... Les parametres de ce commoncomdissnew sont lues par defrun_new17 ! ... Les parametres de ce lmdz_comdissnew sont lues par defrun_new 18 18 ! sur le fichier run.def .... 19 19 END MODULE lmdz_comdissnew -
LMDZ6/branches/Amaury_dev/libf/dyn3dmem/diverg_gam_loc.f90
r5136 r5140 17 17 ! x et y sont des arguments d'entree pour le s-prog 18 18 ! div est un argument de sortie pour le s-prog 19 ! 20 ! 21 ! --------------------------------------------------------------------- 22 ! 23 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ . 24 ! 25 ! --------------------------------------------------------------------- 19 26 20 INCLUDE "dimensions.h" 27 21 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/dyn3dmem/diverg_p.f90
r5136 r5140 17 17 ! div est un argument de sortie pour le s-prog 18 18 ! 19 ! 20 ! --------------------------------------------------------------------- 21 ! 22 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ . 23 ! 24 ! --------------------------------------------------------------------- 19 25 20 INCLUDE "dimensions.h" 26 21 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/dyn3dmem/divergf_loc.f90
r5136 r5140 18 18 ! div est un argument de sortie pour le s-prog 19 19 ! 20 !21 ! ---------------------------------------------------------------------22 !23 ! ATTENTION : pendant ce s-pg , ne pas toucher au COMMON/scratch/ .24 !25 ! ---------------------------------------------------------------------26 20 INCLUDE "dimensions.h" 27 21 INCLUDE "paramet.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/add_phys_tend_mod.F90
r5137 r5140 43 43 !$OMP THREADPRIVATE(firstcall,turb_fcg_gcssold,dtime_frcg) 44 44 INTEGER abortphy 45 ! COMMON /turb_forcing/dtime_frcg, hthturb_gcssold, hqturb_gcssold, &46 ! turb_fcg_gcssold47 45 48 46 ! Arguments : -
LMDZ6/branches/Amaury_dev/libf/phylmd/concvl.F90
r5137 r5140 35 35 USE lmdz_print_control, ONLY: prt_level, lunout 36 36 USE lmdz_clesphys 37 USE lmdz_conema3 37 38 38 39 IMPLICIT NONE … … 227 228 include "YOETHF.h" 228 229 include "FCTTRE.h" 229 !jyg<230 include "conema3.h"231 !>jyg232 230 233 231 IF (first) THEN -
LMDZ6/branches/Amaury_dev/libf/phylmd/conf_phys_m.F90
r5139 r5140 41 41 USE lmdz_nuage_params 42 42 USE lmdz_compbl, ONLY: iflag_pbl, iflag_pbl_split, iflag_order2_sollw, ifl_pbltree 43 44 INCLUDE "conema3.h" 43 USE lmdz_comsoil, ONLY: inertie_sol, inertie_sno, inertie_sic, inertie_lic, iflag_sic, iflag_inertie 44 USE lmdz_conema3 45 45 46 INCLUDE "YOMCST.h" 46 47 INCLUDE "YOMCST2.h" 47 48 48 49 !IM : on inclut/initialise les taux de CH4, N2O, CFC11 et CFC12 49 INCLUDE "comsoil.h"50 50 INCLUDE "YOEGWD.h" 51 51 -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv30_routines.F90
r5117 r5140 4 4 5 5 SUBROUTINE cv30_param(nd, delt) 6 USE lmdz_conema3 6 7 IMPLICIT NONE 7 8 … … 30 31 31 32 include "cv30param.h" 32 include "conema3.h"33 33 34 34 INTEGER nd … … 831 831 ep, sigp, buoy) 832 832 ! epmax_cape: ajout arguments 833 USE lmdz_conema3 834 833 835 IMPLICIT NONE 834 836 … … 853 855 include "cvthermo.h" 854 856 include "cv30param.h" 855 include "conema3.h"856 857 857 858 ! inputs: … … 1802 1803 mp, rp, up, vp, trap, wt, water, evap, b & ! RomP-jyg 1803 1804 , wdtraina, wdtrainm) ! 26/08/10 RomP-jyg 1805 USE lmdz_cvflag 1806 1804 1807 IMPLICIT NONE 1805 1808 1806 1809 include "cvthermo.h" 1807 1810 include "cv30param.h" 1808 include "cvflag.h"1809 1811 1810 1812 ! inputs: … … 2163 2165 tvp, iflag, precip, vprecip, ft, fr, fu, fv, ftra, upwd, dnwd, dnwd0, ma, & 2164 2166 mike, tls, tps, qcondc, wd) 2167 USE lmdz_conema3 2168 USE lmdz_cvflag 2169 2165 2170 IMPLICIT NONE 2166 2171 2167 2172 include "cvthermo.h" 2168 2173 include "cv30param.h" 2169 include "cvflag.h"2170 include "conema3.h"2171 2174 2172 2175 ! inputs: … … 3247 3250 , epmax_diag) 3248 3251 USE lmdz_abort_physic, ONLY: abort_physic 3252 USE lmdz_conema3 3253 3249 3254 IMPLICIT NONE 3250 3255 … … 3256 3261 INCLUDE "cvthermo.h" 3257 3262 INCLUDE "cv30param.h" 3258 INCLUDE "conema3.h"3259 3263 3260 3264 ! inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3_routines.F90
r5139 r5140 9 9 USE lmdz_ioipsl_getin_p, ONLY: getin_p 10 10 USE lmdz_phys_para 11 USE lmdz_conema3 12 USE lmdz_cvflag 13 11 14 IMPLICIT NONE 12 15 … … 35 38 36 39 include "cv3param.h" 37 include "cvflag.h"38 include "conema3.h"39 40 40 41 INTEGER, INTENT(IN) :: nd … … 182 183 183 184 SUBROUTINE cv3_incrcount(len, nd, delt, sig) 185 USE lmdz_cvflag 184 186 185 187 IMPLICIT NONE … … 190 192 191 193 include "cv3param.h" 192 include "cvflag.h"193 194 194 195 !inputs: … … 1136 1137 frac_a, frac_s, qpreca, qta) 1137 1138 USE lmdz_print_control, ONLY: prt_level 1139 USE lmdz_conema3 1140 USE lmdz_cvflag 1141 1138 1142 IMPLICIT NONE 1139 1143 … … 1158 1162 include "cvthermo.h" 1159 1163 include "cv3param.h" 1160 include "conema3.h"1161 include "cvflag.h"1162 1164 include "YOMCST2.h" 1163 1165 … … 2287 2289 unk, vnk, hp, tv, tvp, ep, clw, m, sig, & 2288 2290 ment, qent, uent, vent, nent, sij, elij, ments, qents, traent) 2291 USE lmdz_cvflag 2292 2289 2293 IMPLICIT NONE 2290 2294 … … 2296 2300 include "cvthermo.h" 2297 2301 include "cv3param.h" 2298 include "cvflag.h"2299 2302 2300 2303 !inputs: … … 2711 2714 USE lmdz_print_control, ONLY: prt_level, lunout 2712 2715 USE lmdz_nuage_params 2716 USE lmdz_cvflag 2713 2717 2714 2718 IMPLICIT NONE … … 2717 2721 include "cvthermo.h" 2718 2722 include "cv3param.h" 2719 include "cvflag.h"2720 2723 2721 2724 !inputs: … … 3453 3456 USE lmdz_print_control, ONLY: lunout, prt_level 3454 3457 USE add_phys_tend_mod, ONLY: fl_cor_ebil 3458 USE lmdz_conema3 3459 USE lmdz_cvflag 3455 3460 3456 3461 IMPLICIT NONE … … 3458 3463 include "cvthermo.h" 3459 3464 include "cv3param.h" 3460 include "cvflag.h"3461 include "conema3.h"3462 3465 3463 3466 !inputs: … … 5132 5135 , pbase, p, ph, tv, buoy, sig, w0,iflag & 5133 5136 , epmax_diag) 5137 USE lmdz_conema3 5138 USE lmdz_cvflag 5139 5134 5140 IMPLICIT NONE 5135 5141 … … 5141 5147 include "cvthermo.h" 5142 5148 include "cv3param.h" 5143 include "conema3.h"5144 include "cvflag.h"5145 5149 5146 5150 ! inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3p1_closure.F90
r5117 r5140 21 21 USE lmdz_print_control, ONLY: prt_level, lunout 22 22 USE lmdz_abort_physic, ONLY: abort_physic 23 USE lmdz_conema3 24 23 25 IMPLICIT NONE 24 26 … … 27 29 include "YOMCST2.h" 28 30 include "YOMCST.h" 29 include "conema3.h"30 31 31 32 ! input: -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3p2_closure.F90
r5117 r5140 20 20 USE lmdz_print_control, ONLY: prt_level, lunout 21 21 USE lmdz_abort_physic, ONLY: abort_physic 22 USE lmdz_conema3 23 USE lmdz_cvflag 24 22 25 IMPLICIT NONE 23 26 24 27 include "cvthermo.h" 25 28 include "cv3param.h" 26 include "cvflag.h"27 29 include "YOMCST2.h" 28 30 include "YOMCST.h" 29 include "conema3.h"30 31 31 32 ! input: -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3p_mixing.F90
r5117 r5140 16 16 USE lmdz_ioipsl_getin_p, ONLY: getin_p 17 17 USE add_phys_tend_mod, ONLY: fl_cor_ebil 18 USE lmdz_cvflag 18 19 19 20 IMPLICIT NONE … … 22 23 include "cv3param.h" 23 24 include "YOMCST2.h" 24 include "cvflag.h"25 25 26 26 !inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv_driver.F90
r5112 r5140 683 683 684 684 USE lmdz_ioipsl_getin_p, ONLY: getin_p 685 USE lmdz_cvflag 685 686 686 687 IMPLICIT NONE … … 689 690 ! iflag_ice_thermo >=1 690 691 INTEGER iflag_ice_thermo 691 692 include "cvflag.h"693 692 694 693 ! -- si .TRUE., on rend la gravite plus explicite et eventuellement -
LMDZ6/branches/Amaury_dev/libf/phylmd/cvltr.F90
r5117 r5140 13 13 USE dimphy 14 14 USE infotrac_phy, ONLY: nbtr 15 USE lmdz_conema3 16 15 17 IMPLICIT NONE 16 18 !===================================================================== … … 22 24 include "YOMCST.h" 23 25 include "YOECUMF.h" 24 include "conema3.h"25 26 26 27 ! Entree -
LMDZ6/branches/Amaury_dev/libf/phylmd/cvltr_scav.F90
r5117 r5140 14 14 USE dimphy 15 15 USE infotrac_phy, ONLY: nbtr 16 USE lmdz_conema3 17 16 18 IMPLICIT NONE 17 19 !===================================================================== … … 23 25 include "YOMCST.h" 24 26 include "YOECUMF.h" 25 include "conema3.h"26 27 include "chem.h" 27 28 -
LMDZ6/branches/Amaury_dev/libf/phylmd/cvltr_spl.F90
r5117 r5140 14 14 USE dimphy 15 15 USE infotrac_phy, ONLY: nbtr 16 USE lmdz_conema3 17 16 18 IMPLICIT NONE 17 19 !===================================================================== … … 23 25 include "YOMCST.h" 24 26 include "YOECUMF.h" 25 include "conema3.h"26 27 include "chem.h" 27 28 -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_ts2.f90
r5116 r5140 66 66 USE VARphy 67 67 USE indice_sol_mod 68 USE lmdz_comsoil, ONLY: inertie_sol, inertie_sno, inertie_sic, inertie_lic, iflag_sic, iflag_inertie 68 69 69 70 IMPLICIT NONE … … 77 78 INCLUDE "FCTTRE.h" 78 79 ! INCLUDE "indicesol.h" 79 INCLUDE "comsoil.h"80 80 ! include "LMDZphy.inc" 81 81 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_comsoil.f90
r5139 r5140 1 ! Replaces comsoil.h 1 2 2 ! $Header$ 3 MODULE lmdz_comsoil 4 IMPLICIT NONE; PRIVATE 5 PUBLIC inertie_sol, inertie_sno, inertie_sic, inertie_lic, iflag_sic, iflag_inertie 3 6 4 common /comsoil/inertie_sol,inertie_sno,inertie_sic,inertie_lic, & 5 iflag_sic,iflag_inertie 6 REAL inertie_sol,inertie_sno,inertie_sic,inertie_lic 7 INTEGER iflag_sic,iflag_inertie 8 !$OMP THREADPRIVATE(/comsoil/) 7 REAL inertie_sol, inertie_sno, inertie_sic, inertie_lic 8 INTEGER iflag_sic, iflag_inertie 9 !$OMP THREADPRIVATE(inertie_sol,inertie_sno,inertie_sic,inertie_lic, iflag_sic,iflag_inertie) 10 END MODULE lmdz_comsoil -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_conema3.f90
r5139 r5140 1 2 ! $Header$ 3 !-- Modified by : Filiberti M-A 06/2005 4 5 REAL epmax ! 0.993 6 REAL coef_epmax_cape ! 0.993 7 !jyg< 8 REAL cvl_comp_threshold ! 0. 9 !>jyg 10 LOGICAL ok_adj_ema ! F 11 INTEGER iflag_clw ! 0 12 INTEGER iflag_cvl_sigd 13 REAL cvl_sig2feed ! 0.97 14 15 !jyg< 16 !! common/comconema1/epmax,coef_epmax_cape,ok_adj_ema,iflag_clw,sig1feed,sig2feed 17 !! common/comconema2/iflag_cvl_sigd 18 common/comconema1/epmax,coef_epmax_cape, cvl_comp_threshold, cvl_sig2feed 19 common/comconema2/iflag_cvl_sigd, iflag_clw, ok_adj_ema 20 !>jyg 21 22 ! common/comconema/epmax,coef_epmax_cape,ok_adj_ema,iflag_clw 23 !$OMP THREADPRIVATE(/comconema1/) 24 !$OMP THREADPRIVATE(/comconema2/) 25 1 ! Replaces conema3.h 2 3 MODULE lmdz_conema3 4 IMPLICIT NONE; PRIVATE 5 PUBLIC epmax, coef_epmax_cape, cvl_comp_threshold, cvl_sig2feed 6 PUBLIC iflag_cvl_sigd, iflag_clw, ok_adj_ema 7 PUBLIC conema3 8 9 REAL epmax ! 0.993 10 REAL coef_epmax_cape ! 0.993 11 REAL cvl_comp_threshold ! 0. 12 LOGICAL ok_adj_ema ! F 13 INTEGER iflag_clw ! 0 14 INTEGER iflag_cvl_sigd 15 REAL cvl_sig2feed ! 0.97 16 17 !$OMP THREADPRIVATE(epmax,coef_epmax_cape, cvl_comp_threshold, cvl_sig2feed) 18 !$OMP THREADPRIVATE(iflag_cvl_sigd, iflag_clw, ok_adj_ema) 19 20 CONTAINS 21 22 SUBROUTINE conema3(dtime, paprs, pplay, t, q, u, v, tra, ntra, work1, work2, & 23 d_t, d_q, d_u, d_v, d_tra, rain, snow, kbas, ktop, upwd, dnwd, dnwdbis, & 24 bas, top, ma, cape, tvp, rflag, pbase, bbase, dtvpdt1, dtvpdq1, dplcldt, & 25 dplcldr, qcond_incld) 26 27 USE dimphy 28 USE infotrac_phy, ONLY: nbtr 29 IMPLICIT NONE 30 ! ====================================================================== 31 ! Auteur(s): Z.X. Li (LMD/CNRS) date: 19930818 32 ! Objet: schema de convection de Emanuel (1991) interface 33 ! Mai 1998: Interface modifiee pour implementation dans LMDZ 34 ! ====================================================================== 35 ! Arguments: 36 ! dtime---input-R-pas d'integration (s) 37 ! paprs---input-R-pression inter-couches (Pa) 38 ! pplay---input-R-pression au milieu des couches (Pa) 39 ! t-------input-R-temperature (K) 40 ! q-------input-R-humidite specifique (kg/kg) 41 ! u-------input-R-vitesse du vent zonal (m/s) 42 ! v-------input-R-vitesse duvent meridien (m/s) 43 ! tra-----input-R-tableau de rapport de melange des traceurs 44 ! work*: input et output: deux variables de travail, 45 ! on peut les mettre a 0 au debut 46 47 ! d_t-----output-R-increment de la temperature 48 ! d_q-----output-R-increment de la vapeur d'eau 49 ! d_u-----output-R-increment de la vitesse zonale 50 ! d_v-----output-R-increment de la vitesse meridienne 51 ! d_tra---output-R-increment du contenu en traceurs 52 ! rain----output-R-la pluie (mm/s) 53 ! snow----output-R-la neige (mm/s) 54 ! kbas----output-R-bas du nuage (integer) 55 ! ktop----output-R-haut du nuage (integer) 56 ! upwd----output-R-saturated updraft mass flux (kg/m**2/s) 57 ! dnwd----output-R-saturated downdraft mass flux (kg/m**2/s) 58 ! dnwdbis-output-R-unsaturated downdraft mass flux (kg/m**2/s) 59 ! bas-----output-R-bas du nuage (real) 60 ! top-----output-R-haut du nuage (real) 61 ! Ma------output-R-flux ascendant non dilue (kg/m**2/s) 62 ! cape----output-R-CAPE 63 ! tvp-----output-R-virtual temperature of the lifted parcel 64 ! rflag---output-R-flag sur le fonctionnement de convect 65 ! pbase---output-R-pression a la base du nuage (Pa) 66 ! bbase---output-R-buoyancy a la base du nuage (K) 67 ! dtvpdt1-output-R-derivative of parcel virtual temp wrt T1 68 ! dtvpdq1-output-R-derivative of parcel virtual temp wrt Q1 69 ! dplcldt-output-R-derivative of the PCP pressure wrt T1 70 ! dplcldr-output-R-derivative of the PCP pressure wrt Q1 71 ! ====================================================================== 72 73 INTEGER i, l, m, itra 74 INTEGER ntra ! if no tracer transport 75 ! is needed, set ntra = 1 (or 0) 76 REAL dtime 77 78 REAL d_t2(klon, klev), d_q2(klon, klev) ! sbl 79 REAL d_u2(klon, klev), d_v2(klon, klev) ! sbl 80 REAL em_d_t2(klev), em_d_q2(klev) ! sbl 81 REAL em_d_u2(klev), em_d_v2(klev) ! sbl 82 83 REAL paprs(klon, klev + 1), pplay(klon, klev) 84 REAL t(klon, klev), q(klon, klev), d_t(klon, klev), d_q(klon, klev) 85 REAL u(klon, klev), v(klon, klev), tra(klon, klev, ntra) 86 REAL d_u(klon, klev), d_v(klon, klev), d_tra(klon, klev, ntra) 87 REAL work1(klon, klev), work2(klon, klev) 88 REAL upwd(klon, klev), dnwd(klon, klev), dnwdbis(klon, klev) 89 REAL rain(klon) 90 REAL snow(klon) 91 REAL cape(klon), tvp(klon, klev), rflag(klon) 92 REAL pbase(klon), bbase(klon) 93 REAL dtvpdt1(klon, klev), dtvpdq1(klon, klev) 94 REAL dplcldt(klon), dplcldr(klon) 95 INTEGER kbas(klon), ktop(klon) 96 97 REAL wd(klon) 98 REAL qcond_incld(klon, klev) 99 100 LOGICAL, SAVE :: first = .TRUE. 101 !$OMP THREADPRIVATE(first) 102 103 ! ym REAL em_t(klev) 104 REAL, ALLOCATABLE, SAVE :: em_t(:) 105 !$OMP THREADPRIVATE(em_t) 106 ! ym REAL em_q(klev) 107 REAL, ALLOCATABLE, SAVE :: em_q(:) 108 !$OMP THREADPRIVATE(em_q) 109 ! ym REAL em_qs(klev) 110 REAL, ALLOCATABLE, SAVE :: em_qs(:) 111 !$OMP THREADPRIVATE(em_qs) 112 ! ym REAL em_u(klev), em_v(klev), em_tra(klev,nbtr) 113 REAL, ALLOCATABLE, SAVE :: em_u(:), em_v(:), em_tra(:, :) 114 !$OMP THREADPRIVATE(em_u,em_v,em_tra) 115 ! ym REAL em_ph(klev+1), em_p(klev) 116 REAL, ALLOCATABLE, SAVE :: em_ph(:), em_p(:) 117 !$OMP THREADPRIVATE(em_ph,em_p) 118 ! ym REAL em_work1(klev), em_work2(klev) 119 REAL, ALLOCATABLE, SAVE :: em_work1(:), em_work2(:) 120 !$OMP THREADPRIVATE(em_work1,em_work2) 121 ! ym REAL em_precip, em_d_t(klev), em_d_q(klev) 122 REAL, SAVE :: em_precip 123 !$OMP THREADPRIVATE(em_precip) 124 REAL, ALLOCATABLE, SAVE :: em_d_t(:), em_d_q(:) 125 !$OMP THREADPRIVATE(em_d_t,em_d_q) 126 ! ym REAL em_d_u(klev), em_d_v(klev), em_d_tra(klev,nbtr) 127 REAL, ALLOCATABLE, SAVE :: em_d_u(:), em_d_v(:), em_d_tra(:, :) 128 !$OMP THREADPRIVATE(em_d_u,em_d_v,em_d_tra) 129 ! ym REAL em_upwd(klev), em_dnwd(klev), em_dnwdbis(klev) 130 REAL, ALLOCATABLE, SAVE :: em_upwd(:), em_dnwd(:), em_dnwdbis(:) 131 !$OMP THREADPRIVATE(em_upwd,em_dnwd,em_dnwdbis) 132 REAL em_dtvpdt1(klev), em_dtvpdq1(klev) 133 REAL em_dplcldt, em_dplcldr 134 ! ym SAVE em_t,em_q, em_qs, em_ph, em_p, em_work1, em_work2 135 ! ym SAVE em_u,em_v, em_tra 136 ! ym SAVE em_d_u,em_d_v, em_d_tra 137 ! ym SAVE em_precip, em_d_t, em_d_q, em_upwd, em_dnwd, em_dnwdbis 138 139 INTEGER em_bas, em_top 140 SAVE em_bas, em_top 141 !$OMP THREADPRIVATE(em_bas,em_top) 142 REAL em_wd 143 REAL em_qcond(klev) 144 REAL em_qcondc(klev) 145 146 REAL zx_t, zx_qs, zdelta, zcor 147 INTEGER iflag 148 REAL sigsum 149 ! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 150 ! VARIABLES A SORTIR 151 ! ccccccccccccccccccccccccccccccccccccccccccccccccc 152 153 ! ym REAL emmip(klev) !variation de flux ascnon dilue i et i+1 154 REAL, ALLOCATABLE, SAVE :: emmip(:) 155 !$OMP THREADPRIVATE(emmip) 156 ! ym SAVE emmip 157 ! ym real emMke(klev) 158 REAL, ALLOCATABLE, SAVE :: emmke(:) 159 !$OMP THREADPRIVATE(emMke) 160 ! ym save emMke 161 REAL top 162 REAL bas 163 ! ym real emMa(klev) 164 REAL, ALLOCATABLE, SAVE :: emma(:) 165 !$OMP THREADPRIVATE(emMa) 166 ! ym save emMa 167 REAL ma(klon, klev) 168 REAL ment(klev, klev) 169 REAL qent(klev, klev) 170 REAL tps(klev), tls(klev) 171 REAL sij(klev, klev) 172 REAL em_cape, em_tvp(klev) 173 REAL em_pbase, em_bbase 174 INTEGER iw, j, k, ix, iy 175 176 ! -- sb: pour schema nuages: 177 178 INTEGER iflagcon 179 INTEGER em_ifc(klev) 180 181 REAL em_pradj 182 REAL em_cldf(klev), em_cldq(klev) 183 REAL em_ftadj(klev), em_fradj(klev) 184 185 INTEGER ifc(klon, klev) 186 REAL pradj(klon) 187 REAL cldf(klon, klev), cldq(klon, klev) 188 REAL ftadj(klon, klev), fqadj(klon, klev) 189 190 ! sb -- 191 192 ! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 193 194 include "YOMCST.h" 195 include "YOETHF.h" 196 include "FCTTRE.h" 197 198 IF (first) THEN 199 200 ALLOCATE (em_t(klev)) 201 ALLOCATE (em_q(klev)) 202 ALLOCATE (em_qs(klev)) 203 ALLOCATE (em_u(klev), em_v(klev), em_tra(klev, nbtr)) 204 ALLOCATE (em_ph(klev + 1), em_p(klev)) 205 ALLOCATE (em_work1(klev), em_work2(klev)) 206 ALLOCATE (em_d_t(klev), em_d_q(klev)) 207 ALLOCATE (em_d_u(klev), em_d_v(klev), em_d_tra(klev, nbtr)) 208 ALLOCATE (em_upwd(klev), em_dnwd(klev), em_dnwdbis(klev)) 209 ALLOCATE (emmip(klev)) 210 ALLOCATE (emmke(klev)) 211 ALLOCATE (emma(klev)) 212 213 first = .FALSE. 214 END IF 215 216 qcond_incld(:, :) = 0. 217 218 ! @$$ PRINT*,'debut conema' 219 220 DO i = 1, klon 221 DO l = 1, klev + 1 222 em_ph(l) = paprs(i, l) / 100.0 223 END DO 224 225 DO l = 1, klev 226 em_p(l) = pplay(i, l) / 100.0 227 em_t(l) = t(i, l) 228 em_q(l) = q(i, l) 229 em_u(l) = u(i, l) 230 em_v(l) = v(i, l) 231 DO itra = 1, ntra 232 em_tra(l, itra) = tra(i, l, itra) 233 END DO 234 ! @$$ PRINT*,'em_t',em_t 235 ! @$$ PRINT*,'em_q',em_q 236 ! @$$ PRINT*,'em_qs',em_qs 237 ! @$$ PRINT*,'em_u',em_u 238 ! @$$ PRINT*,'em_v',em_v 239 ! @$$ PRINT*,'em_tra',em_tra 240 ! @$$ PRINT*,'em_p',em_p 241 242 zx_t = em_t(l) 243 zdelta = max(0., sign(1., rtt - zx_t)) 244 zx_qs = r2es * foeew(zx_t, zdelta) / em_p(l) / 100.0 245 zx_qs = min(0.5, zx_qs) 246 ! @$$ PRINT*,'zx_qs',zx_qs 247 zcor = 1. / (1. - retv * zx_qs) 248 zx_qs = zx_qs * zcor 249 em_qs(l) = zx_qs 250 ! @$$ PRINT*,'em_qs',em_qs 251 252 em_work1(l) = work1(i, l) 253 em_work2(l) = work2(i, l) 254 emmke(l) = 0 255 ! emMa(l)=0 256 ! Ma(i,l)=0 257 258 em_dtvpdt1(l) = 0. 259 em_dtvpdq1(l) = 0. 260 dtvpdt1(i, l) = 0. 261 dtvpdq1(i, l) = 0. 262 END DO 263 264 em_dplcldt = 0. 265 em_dplcldr = 0. 266 rain(i) = 0.0 267 snow(i) = 0.0 268 kbas(i) = 1 269 ktop(i) = 1 270 ! ajout SB: 271 bas = 1 272 top = 1 273 274 275 ! sb3d WRITE(*,1792) (em_work1(m),m=1,klev) 276 1792 FORMAT ('sig avant convect ', /, 10(1X, E13.5)) 277 278 ! sb d WRITE(*,1793) (em_work2(m),m=1,klev) 279 1793 FORMAT ('w avant convect ', /, 10(1X, E13.5)) 280 281 ! @$$ PRINT*,'avant convect' 282 ! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 283 284 285 ! PRINT*,'avant convect i=',i 286 CALL convect3(dtime, epmax, ok_adj_ema, em_t, em_q, em_qs, em_u, em_v, & 287 em_tra, em_p, em_ph, klev, klev + 1, klev - 1, ntra, dtime, iflag, em_d_t, & 288 em_d_q, em_d_u, em_d_v, em_d_tra, em_precip, em_bas, em_top, em_upwd, & 289 em_dnwd, em_dnwdbis, em_work1, em_work2, emmip, emmke, emma, ment, & 290 qent, tps, tls, sij, em_cape, em_tvp, em_pbase, em_bbase, em_dtvpdt1, & 291 em_dtvpdq1, em_dplcldt, em_dplcldr, & ! sbl 292 em_d_t2, em_d_q2, em_d_u2, em_d_v2, em_wd, em_qcond, em_qcondc) !sbl 293 ! PRINT*,'apres convect ' 294 295 ! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 296 297 ! -- sb: Appel schema statistique de nuages couple a la convection 298 ! (Bony et Emanuel 2001): 299 300 ! -- creer cvthermo.h qui contiendra les cstes thermo de LMDZ: 301 302 iflagcon = 3 303 ! CALL cv_thermo(iflagcon) 304 305 ! -- appel schema de nuages: 306 307 ! CALL CLOUDS_SUB_LS(klev,em_q,em_qs,em_t 308 ! i ,em_p,em_ph,dtime,em_qcondc 309 ! o ,em_cldf,em_cldq,em_pradj,em_ftadj,em_fradj,em_ifc) 310 311 DO k = 1, klev 312 cldf(i, k) = em_cldf(k) ! cloud fraction (0-1) 313 cldq(i, k) = em_cldq(k) ! in-cloud water content (kg/kg) 314 ftadj(i, k) = em_ftadj(k) ! (dT/dt)_{LS adj} (K/s) 315 fqadj(i, k) = em_fradj(k) ! (dq/dt)_{LS adj} (kg/kg/s) 316 ifc(i, k) = em_ifc(k) ! flag convergence clouds_gno (1 ou 2) 317 END DO 318 pradj(i) = em_pradj ! precip from LS supersat adj (mm/day) 319 320 ! sb -- 321 322 ! SB: 323 IF (iflag/=1 .AND. iflag/=4) THEN 324 em_cape = 0. 325 DO l = 1, klev 326 em_upwd(l) = 0. 327 em_dnwd(l) = 0. 328 em_dnwdbis(l) = 0. 329 emma(l) = 0. 330 em_tvp(l) = 0. 331 END DO 332 END IF 333 ! fin SB 334 335 ! If sig has been set to zero, then set Ma to zero 336 337 sigsum = 0. 338 DO k = 1, klev 339 sigsum = sigsum + em_work1(k) 340 END DO 341 IF (sigsum==0.0) THEN 342 DO k = 1, klev 343 emma(k) = 0. 344 END DO 345 END IF 346 347 ! sb3d PRINT*,'i, iflag=',i,iflag 348 349 ! cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 350 351 ! SORTIE DES ICB ET INB 352 ! en fait inb et icb correspondent au niveau ou se trouve 353 ! le nuage,le numero d'interface 354 ! ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc 355 356 ! modif SB: 357 IF (iflag==1 .OR. iflag==4) THEN 358 top = em_top 359 bas = em_bas 360 kbas(i) = em_bas 361 ktop(i) = em_top 362 END IF 363 364 pbase(i) = em_pbase 365 bbase(i) = em_bbase 366 rain(i) = em_precip / 86400.0 367 snow(i) = 0.0 368 cape(i) = em_cape 369 wd(i) = em_wd 370 rflag(i) = real(iflag) 371 ! SB kbas(i) = em_bas 372 ! SB ktop(i) = em_top 373 dplcldt(i) = em_dplcldt 374 dplcldr(i) = em_dplcldr 375 DO l = 1, klev 376 d_t2(i, l) = dtime * em_d_t2(l) 377 d_q2(i, l) = dtime * em_d_q2(l) 378 d_u2(i, l) = dtime * em_d_u2(l) 379 d_v2(i, l) = dtime * em_d_v2(l) 380 381 d_t(i, l) = dtime * em_d_t(l) 382 d_q(i, l) = dtime * em_d_q(l) 383 d_u(i, l) = dtime * em_d_u(l) 384 d_v(i, l) = dtime * em_d_v(l) 385 DO itra = 1, ntra 386 d_tra(i, l, itra) = dtime * em_d_tra(l, itra) 387 END DO 388 upwd(i, l) = em_upwd(l) 389 dnwd(i, l) = em_dnwd(l) 390 dnwdbis(i, l) = em_dnwdbis(l) 391 work1(i, l) = em_work1(l) 392 work2(i, l) = em_work2(l) 393 ma(i, l) = emma(l) 394 tvp(i, l) = em_tvp(l) 395 dtvpdt1(i, l) = em_dtvpdt1(l) 396 dtvpdq1(i, l) = em_dtvpdq1(l) 397 398 IF (iflag_clw==0) THEN 399 qcond_incld(i, l) = em_qcondc(l) 400 ELSE IF (iflag_clw==1) THEN 401 qcond_incld(i, l) = em_qcond(l) 402 END IF 403 END DO 404 END DO 405 406 ! On calcule une eau liquide diagnostique en fonction de la 407 ! precip. 408 IF (iflag_clw==2) THEN 409 DO l = 1, klev 410 DO i = 1, klon 411 IF (ktop(i) - kbas(i)>0 .AND. l>=kbas(i) .AND. l<=ktop(i)) THEN 412 qcond_incld(i, l) = rain(i) * 8.E4 & ! s *(pplay(i,l 413 ! )-paprs(i,ktop(i)+1)) 414 / (pplay(i, kbas(i)) - pplay(i, ktop(i))) 415 ! s **2 416 ELSE 417 qcond_incld(i, l) = 0. 418 END IF 419 END DO 420 PRINT *, 'l=', l, ', qcond_incld=', qcond_incld(1, l) 421 END DO 422 END IF 423 424 END SUBROUTINE conema3 425 END MODULE lmdz_conema3 426 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_cvflag.f90
r5139 r5140 1 ! Replaces cvflag.h 1 2 2 ! $Header$ 3 MODULE lmdz_cvflag 4 IMPLICIT NONE; PRIVATE 5 PUBLIC icvflag_Tpa, cvflag_grav, cvflag_ice, ok_optim_yield, ok_entrain, ok_homo_tend, & 6 ok_convstop, ok_intermittent, cvflag_prec_eject, qsat_depends_on_qt, adiab_ascent_mass_flux_depends_on_ejectliq, keepbug_ice_frac 3 7 4 5 6 7 8 9 10 11 12 13 14 15 8 LOGICAL cvflag_grav 9 LOGICAL cvflag_ice 10 LOGICAL ok_optim_yield 11 LOGICAL ok_entrain 12 LOGICAL ok_homo_tend 13 LOGICAL ok_convstop 14 LOGICAL ok_intermittent 15 LOGICAL cvflag_prec_eject 16 LOGICAL qsat_depends_on_qt 17 LOGICAL adiab_ascent_mass_flux_depends_on_ejectliq 18 LOGICAL keepbug_ice_frac 19 INTEGER icvflag_Tpa 16 20 17 COMMON /cvflag/ icvflag_Tpa, & 18 cvflag_grav, cvflag_ice, & 19 ok_optim_yield, & 20 ok_entrain, & 21 ok_homo_tend, & 22 ok_convstop, ok_intermittent, & 23 cvflag_prec_eject, & 24 qsat_depends_on_qt, & 25 adiab_ascent_mass_flux_depends_on_ejectliq, & 26 keepbug_ice_frac 27 !$OMP THREADPRIVATE(/cvflag/) 21 !$OMP THREADPRIVATE(icvflag_Tpa, cvflag_grav, cvflag_ice, ok_optim_yield, ok_entrain, ok_homo_tend, & 22 !$OMP ok_convstop, ok_intermittent, cvflag_prec_eject, qsat_depends_on_qt, adiab_ascent_mass_flux_depends_on_ejectliq, keepbug_ice_frac) 23 END MODULE lmdz_cvflag -
LMDZ6/branches/Amaury_dev/libf/phylmd/physiq_mod.F90
r5139 r5140 354 354 USE lmdz_nuage_params 355 355 USE lmdz_compbl, ONLY: iflag_pbl, iflag_pbl_split, iflag_order2_sollw, ifl_pbltree 356 USE lmdz_conema3 356 357 357 358 IMPLICIT NONE … … 820 821 EXTERNAL ajsec ! ajustement sec 821 822 EXTERNAL conlmd ! convection (schema LMD) 822 EXTERNAL conema3 ! convect4.3823 823 EXTERNAL hgardfou ! verifier les temperatures 824 824 EXTERNAL nuage ! calculer les proprietes radiatives … … 1156 1156 include "YOETHF.h" 1157 1157 include "FCTTRE.h" 1158 !IM 100106 BEG : pouvoir sortir les ctes de la physique1159 include "conema3.h"1160 !IM 100106 END : pouvoir sortir les ctes de la physique1161 1158 1162 1159 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -
LMDZ6/branches/Amaury_dev/libf/phylmd/soil.F90
r5112 r5140 9 9 USE lmdz_print_control, ONLY: lunout 10 10 USE lmdz_abort_physic, ONLY: abort_physic 11 USE lmdz_comsoil, ONLY: inertie_sol, inertie_sno, inertie_sic, inertie_lic, iflag_sic, iflag_inertie 11 12 12 13 IMPLICIT NONE … … 62 63 INCLUDE "YOMCST.h" 63 64 INCLUDE "dimsoil.h" 64 INCLUDE "comsoil.h"65 65 !----------------------------------------------------------------------- 66 66 ! Arguments … … 194 194 195 195 ! La relation entre l'inertie thermique du sol et qsol change d'apres 196 ! iflag_inertie, defini dans physiq.def, et appele via comsoil.h196 ! iflag_inertie, defini dans physiq.def, et appele via lmdz_comsoil 197 197 198 198 DO ig = 1, knon -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/concvl.F90
r5137 r5140 64 64 USE lmdz_print_control, ONLY: prt_level, lunout 65 65 USE lmdz_clesphys 66 USE lmdz_conema3 66 67 67 68 IMPLICIT NONE … … 298 299 include "YOETHF.h" 299 300 include "FCTTRE.h" 300 !jyg<301 include "conema3.h"302 !>jyg303 301 304 302 IF (first) THEN -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/cv30_routines.F90
r5132 r5140 5 5 6 6 SUBROUTINE cv30_param(nd, delt) 7 USE lmdz_conema3 8 7 9 IMPLICIT NONE 8 10 … … 31 33 32 34 include "cv30param.h" 33 include "conema3.h"34 35 35 36 INTEGER nd … … 1134 1135 ! epmax_cape: ajout arguments 1135 1136 USE lmdz_abort_physic, ONLY: abort_physic 1137 USE lmdz_conema3 1136 1138 #ifdef ISO 1137 1139 USE infotrac_phy, ONLY: ntraciso=>ntiso … … 1174 1176 include "cvthermo.h" 1175 1177 include "cv30param.h" 1176 include "conema3.h"1177 1178 1178 1179 ! inputs: … … 2668 2669 #endif 2669 2670 #endif 2671 USE lmdz_cvflag 2670 2672 2671 2673 IMPLICIT NONE … … 2674 2676 include "cvthermo.h" 2675 2677 include "cv30param.h" 2676 include "cvflag.h"2677 2678 2678 2679 ! inputs: … … 3377 3378 #endif 3378 3379 ) 3380 USE lmdz_conema3 3379 3381 #ifdef ISO 3380 3382 USE infotrac_phy, ONLY: ntraciso=>ntiso, niso, nzone, itZonIso … … 3399 3401 #endif 3400 3402 #endif 3403 USE lmdz_cvflag 3401 3404 3402 3405 IMPLICIT NONE … … 3404 3407 include "cvthermo.h" 3405 3408 include "cv30param.h" 3406 include "cvflag.h"3407 include "conema3.h"3408 3409 3409 3410 ! inputs: … … 6336 6337 ,epmax_diag) 6337 6338 USE lmdz_abort_physic, ONLY: abort_physic 6339 USE lmdz_conema3 6340 6338 6341 IMPLICIT NONE 6339 6342 … … 6345 6348 include "cvthermo.h" 6346 6349 include "cv30param.h" 6347 include "conema3.h"6348 6350 6349 6351 ! inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/cv3_routines.F90
r5139 r5140 9 9 USE lmdz_ioipsl_getin_p, ONLY: getin_p 10 10 USE lmdz_phys_para 11 USE lmdz_conema3 12 USE lmdz_cvflag 11 13 12 14 IMPLICIT NONE … … 36 38 37 39 include "cv3param.h" 38 include "cvflag.h"39 include "conema3.h"40 40 41 41 INTEGER, INTENT(IN) :: nd … … 183 183 184 184 SUBROUTINE cv3_incrcount(len, nd, delt, sig) 185 USE lmdz_cvflag 185 186 186 187 IMPLICIT NONE … … 191 192 192 193 include "cv3param.h" 193 include "cvflag.h"194 194 195 195 !inputs: … … 1467 1467 USE lmdz_print_control, ONLY: prt_level 1468 1468 USE lmdz_abort_physic, ONLY: abort_physic 1469 USE lmdz_conema3 1469 1470 #ifdef ISO 1470 1471 USE infotrac_phy, ONLY: ntraciso=>ntiso … … 1485 1486 #endif 1486 1487 #endif 1488 USE lmdz_cvflag 1487 1489 IMPLICIT NONE 1488 1490 … … 1507 1509 include "cvthermo.h" 1508 1510 include "cv3param.h" 1509 include "conema3.h"1510 include "cvflag.h"1511 1511 include "YOMCST2.h" 1512 1512 … … 2783 2783 #endif 2784 2784 #endif 2785 USE lmdz_cvflag 2785 2786 IMPLICIT NONE 2786 2787 … … 2792 2793 include "cvthermo.h" 2793 2794 include "cv3param.h" 2794 include "cvflag.h"2795 2795 2796 2796 !inputs: … … 3611 3611 #endif 3612 3612 #endif 3613 USE lmdz_cvflag 3613 3614 IMPLICIT NONE 3614 3615 … … 3616 3617 include "cvthermo.h" 3617 3618 include "cv3param.h" 3618 include "cvflag.h"3619 3619 3620 3620 !inputs: … … 4695 4695 USE lmdz_print_control, ONLY: lunout, prt_level 4696 4696 USE add_phys_tend_mod, ONLY: fl_cor_ebil 4697 USE lmdz_conema3 4697 4698 4698 4699 #ifdef ISO … … 4716 4717 #endif 4717 4718 #endif 4719 USE lmdz_cvflag 4718 4720 IMPLICIT NONE 4719 4721 4720 4722 include "cvthermo.h" 4721 4723 include "cv3param.h" 4722 include "cvflag.h"4723 include "conema3.h"4724 4724 4725 4725 !inputs: … … 7594 7594 , pbase, p, ph, tv, buoy, sig, w0,iflag & 7595 7595 , epmax_diag) 7596 7597 USE lmdz_conema3 7598 USE lmdz_cvflag 7599 7596 7600 IMPLICIT NONE 7601 7597 7602 7598 7603 ! On fait varier epmax en fn de la cape … … 7603 7608 include "cvthermo.h" 7604 7609 include "cv3param.h" 7605 include "conema3.h"7606 include "cvflag.h"7607 7610 7608 7611 ! inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/cv3p_mixing.F90
r5117 r5140 39 39 #endif 40 40 #endif 41 USE lmdz_cvflag 41 42 IMPLICIT NONE 42 43 … … 44 45 include "cv3param.h" 45 46 include "YOMCST2.h" 46 include "cvflag.h"47 47 48 48 !inputs: -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/cv_driver.F90
r5117 r5140 1230 1230 1231 1231 USE lmdz_ioipsl_getin_p, ONLY: getin_p 1232 USE lmdz_cvflag 1232 1233 1233 1234 IMPLICIT NONE … … 1236 1237 ! iflag_ice_thermo >=1 1237 1238 INTEGER iflag_ice_thermo 1238 1239 include "cvflag.h"1240 1239 1241 1240 ! -- si .TRUE., on rend la gravite plus explicite et eventuellement -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/lmdz_comsoil.f90
r5139 r5140 1 link ../phylmd/ comsoil.h1 link ../phylmd/lmdz_comsoil.f90 -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/lmdz_conema3.f90
r5139 r5140 1 link ../phylmd/ conema3.h1 link ../phylmd/lmdz_conema3.f90 -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/lmdz_cvflag.f90
r5139 r5140 1 link ../phylmd/ cvflag.h1 link ../phylmd/lmdz_cvflag.f90 -
LMDZ6/branches/Amaury_dev/libf/phylmdiso/physiq_mod.F90
r5139 r5140 422 422 USE lmdz_nuage_params 423 423 USE lmdz_compbl, ONLY: iflag_pbl, iflag_pbl_split, iflag_order2_sollw, ifl_pbltree 424 USE lmdz_conema3 424 425 425 426 IMPLICIT NONE … … 912 913 EXTERNAL ajsec ! ajustement sec 913 914 EXTERNAL conlmd ! convection (schema LMD) 914 EXTERNAL conema3 ! convect4.3915 915 EXTERNAL hgardfou ! verifier les temperatures 916 916 EXTERNAL nuage ! calculer les proprietes radiatives … … 1270 1270 include "YOETHF.h" 1271 1271 include "FCTTRE.h" 1272 !IM 100106 BEG : pouvoir sortir les ctes de la physique1273 include "conema3.h"1274 !IM 100106 END : pouvoir sortir les ctes de la physique1275 1272 1276 1273 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Note: See TracChangeset
for help on using the changeset viewer.