Changeset 5093 for LMDZ6/branches/Amaury_dev/libf/phylmd
- Timestamp:
- Jul 21, 2024, 1:07:18 PM (4 months ago)
- Location:
- LMDZ6/branches/Amaury_dev/libf/phylmd
- Files:
-
- 29 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/phylmd/add_wake_tend.F90
r5081 r5093 1 1 SUBROUTINE add_wake_tend(zddeltat, zddeltaq, zds, zdas, zddensw, zddensaw, zoccur, text, abortphy) 2 2 !=================================================================== 3 ! Ajoute les tendances li �es aux diverses parametrisations physiques aux3 ! Ajoute les tendances liées aux diverses parametrisations physiques aux 4 4 ! variables d'etat des poches froides. 5 5 !=================================================================== -
LMDZ6/branches/Amaury_dev/libf/phylmd/calcul_fluxs_mod.F90
r5082 r5093 55 55 ! dflux_s derivee du flux de chaleur sensible / Ts 56 56 ! dflux_l derivee du flux de chaleur latente / Ts 57 ! sens_prec_liq flux sensible li �aux echanges de precipitations liquides57 ! sens_prec_liq flux sensible lié aux echanges de precipitations liquides 58 58 ! sens_prec_sol precipitations solides 59 ! lat_prec_liq flux latent li �aux echanges de precipitations liquides59 ! lat_prec_liq flux latent lié aux echanges de precipitations liquides 60 60 ! lat_prec_sol precipitations solides 61 61 -
LMDZ6/branches/Amaury_dev/libf/phylmd/cosp/cosp_output_write_mod.F90
r5082 r5093 457 457 458 458 ! ug On récupère le type écrit de la structure: 459 ! Assez moche, �|refaire si meilleure méthode...459 ! Assez moche, à refaire si meilleure méthode... 460 460 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 461 461 typeecrit = 'once' … … 559 559 560 560 ! ug On récupère le type écrit de la structure: 561 ! Assez moche, �|refaire si meilleure méthode...561 ! Assez moche, à refaire si meilleure méthode... 562 562 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 563 563 typeecrit = 'once' -
LMDZ6/branches/Amaury_dev/libf/phylmd/cosp/lidar_simulator.F90
r5087 r5093 690 690 ! Lum_norm=f(tetaS,tau_cloud) derived from adding-doubling calculations 691 691 ! valid ONLY ABOVE OCEAN (albedo_sfce=5%) 692 ! valid only in one viewing direction (theta_v=30 �, phi_s-phi_v=320�)692 ! valid only in one viewing direction (theta_v=30°, phi_s-phi_v=320°) 693 693 ! based on adding-doubling radiative transfer computation 694 694 ! for tau values (0 to 100) and for tetas values (0 to 80) -
LMDZ6/branches/Amaury_dev/libf/phylmd/cosp2/cosp_output_write_mod.F90
r5082 r5093 474 474 475 475 ! ug On récupère le type écrit de la structure: 476 ! Assez moche, �|refaire si meilleure méthode...476 ! Assez moche, à refaire si meilleure méthode... 477 477 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 478 478 typeecrit = 'once' … … 576 576 577 577 ! ug On récupère le type écrit de la structure: 578 ! Assez moche, �|refaire si meilleure méthode...578 ! Assez moche, à refaire si meilleure méthode... 579 579 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 580 580 typeecrit = 'once' -
LMDZ6/branches/Amaury_dev/libf/phylmd/cosp2/parasol.F90
r5082 r5093 81 81 ! Lum_norm=f(PARASOL_SZA,tau_cloud) derived from adding-doubling calculations 82 82 ! valid ONLY ABOVE OCEAN (albedo_sfce=5%) 83 ! valid only in one viewing direction (theta_v=30 �, phi_s-phi_v=320�)83 ! valid only in one viewing direction (theta_v=30°, phi_s-phi_v=320°) 84 84 ! based on adding-doubling radiative transfer computation 85 85 ! for PARASOL_TAU values (0 to 100) and for PARASOL_SZA values (0 to 80) -
LMDZ6/branches/Amaury_dev/libf/phylmd/cospv2/lmdz_cosp_output_write_mod.F90
r5082 r5093 670 670 671 671 ! ug On récupère le type écrit de la structure: 672 ! Assez moche, �|refaire si meilleure méthode...672 ! Assez moche, à refaire si meilleure méthode... 673 673 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 674 674 typeecrit = 'once' … … 766 766 767 767 ! ug On récupère le type écrit de la structure: 768 ! Assez moche, �|refaire si meilleure méthode...768 ! Assez moche, à refaire si meilleure méthode... 769 769 IF (INDEX(var%cosp_typeecrit(iff), "once") > 0) THEN 770 770 typeecrit = 'once' -
LMDZ6/branches/Amaury_dev/libf/phylmd/cospv2/parasol.F90
r5082 r5093 81 81 ! Lum_norm=f(PARASOL_SZA,tau_cloud) derived from adding-doubling calculations 82 82 ! valid ONLY ABOVE OCEAN (albedo_sfce=5%) 83 ! valid only in one viewing direction (theta_v=30 �, phi_s-phi_v=320�)83 ! valid only in one viewing direction (theta_v=30°, phi_s-phi_v=320°) 84 84 ! based on adding-doubling radiative transfer computation 85 85 ! for PARASOL_TAU values (0 to 100) and for PARASOL_SZA values (0 to 80) -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv30_routines.F90
r5086 r5093 3082 3082 3083 3083 ! fraction deau condensee dans les melanges convertie en precip : epm 3084 ! et eau condens �e pr�cipit�e dans masse d'air satur�: l_m*dM_m/dzdz.dzdz3084 ! et eau condensée précipitée dans masse d'air saturé : l_m*dM_m/dzdz.dzdz 3085 3085 DO j = 1, nam1 3086 3086 DO k = 1, j - 1 … … 3277 3277 3278 3278 ! On fait varier epmax en fn de la cape 3279 ! Il faut donc recalculer ep, et hp qui a d �j� �t� calcul�et3280 ! qui en d �pend3281 ! Toutes les autres variables fn de ep sont calcul �es plus bas.3279 ! Il faut donc recalculer ep, et hp qui a déjà été calculé et 3280 ! qui en dépend 3281 ! Toutes les autres variables fn de ep sont calculées plus bas. 3282 3282 3283 3283 INCLUDE "cvthermo.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3_routines.F90
r5086 r5093 1101 1101 1102 1102 !JAM-------------------------------------------------------------------- 1103 ! Calcul de la quantit �d'eau sous forme de glace1103 ! Calcul de la quantité d'eau sous forme de glace 1104 1104 ! -------------------------------------------------------------------- 1105 1105 INTEGER nl, len … … 3072 3072 !!---end jyg--- 3073 3073 3074 ! --------retour �la formulation originale d'Emanuel.3074 ! --------retour à la formulation originale d'Emanuel. 3075 3075 IF (cvflag_ice) THEN 3076 3076 … … 3082 3082 3083 3083 !JAM Attention: evap=sigt*E 3084 ! Modification: evap devient l' �vaporation en milieu de couche3085 ! car n �cessaire dans cv3_yield3086 ! Du coup, il faut modifier pas mal d' �quations...3084 ! Modification: evap devient l'évaporation en milieu de couche 3085 ! car nécessaire dans cv3_yield 3086 ! Du coup, il faut modifier pas mal d'équations... 3087 3087 ! et l'expression de afac qui devient afac1 3088 3088 ! revap=sqrt((prec(i+1)+prec(i))/2) … … 3103 3103 !JYG Dans sa formulation originale, Emanuel calcule l'evaporation par: 3104 3104 ! c evap(il,i)=sigt*afac*revap 3105 ! ce qui n'est pas correct. Dans cv_routines, la formulation a �t�modifiee.3105 ! ce qui n'est pas correct. Dans cv_routines, la formulation a été modifiee. 3106 3106 ! Ici,l'evaporation evap est simplement calculee par l'equation de 3107 3107 ! conservation. … … 4902 4902 ENDDO ! k 4903 4903 4904 ! 14/01/15 AJ delta n'a rien � faire l�...4904 ! 14/01/15 AJ delta n'a rien à faire là... 4905 4905 DO il = 1, ncum ! cld 4906 4906 !! IF (wa(il,i)>0.0 .AND. iflag(il)<=1) & ! cld … … 4918 4918 4919 4919 ! IM cf. FH 4920 ! 14/01/15 AJ ne correspond pas � ce qui a �t� cod� par JYG et SB4920 ! 14/01/15 AJ ne correspond pas à ce qui a été codé par JYG et SB 4921 4921 4922 4922 IF (iflag_clw==0) THEN ! cld … … 4991 4991 4992 4992 ! fraction deau condensee dans les melanges convertie en precip : epm 4993 ! et eau condens �e pr�cipit�e dans masse d'air satur�: l_m*dM_m/dzdz.dzdz4993 ! et eau condensée précipitée dans masse d'air saturé : l_m*dM_m/dzdz.dzdz 4994 4994 DO j = 1, nl 4995 4995 DO k = 1, nl … … 5141 5141 5142 5142 ! On fait varier epmax en fn de la cape 5143 ! Il faut donc recalculer ep, et hp qui a d �j� �t� calcul�et5144 ! qui en d �pend5145 ! Toutes les autres variables fn de ep sont calcul �es plus bas.5143 ! Il faut donc recalculer ep, et hp qui a déjà été calculé et 5144 ! qui en dépend 5145 ! Toutes les autres variables fn de ep sont calculées plus bas. 5146 5146 5147 5147 include "cvthermo.h" … … 5178 5178 5179 5179 ! il faut calculer la cape: on fait un calcule simple car tant qu'on ne 5180 ! connait pas ep, on ne connait pas les m �langes, ddfts etc... qui sont5180 ! connait pas ep, on ne connait pas les mélanges, ddfts etc... qui sont 5181 5181 ! necessaires au calcul de la cape dans la nouvelle physique 5182 5182 -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv_driver.F90
r3492 r5093 568 568 ,cape,ep,hp,icb,inb,clw,nk,t,h,lv & 569 569 ,epmax_diag) 570 ! on écrase ep et recalcule hp570 ! on écrase ep et recalcule hp 571 571 END IF 572 572 … … 699 699 ! si icvflag_Tpa=0, alors la fraction de glace dans l'ascendance adiabatique est 700 700 ! fonction de la temperature de l'environnement et la temperature de l'ascendance est 701 ! calculee en deux itérations, une en supposant qu'il n'y a pas de glace et l'autre 701 ! calculee en deux itérations, une en supposant qu'il n'y a pas de glace et l'autre 702 702 ! en ajoutant la glace (ancien schéma d'Arnaud Jam). 703 703 ! si icvflag_Tpa=1, alors la fraction de glace dans l'ascendance adiabatique est -
LMDZ6/branches/Amaury_dev/libf/phylmd/cvltr.F90
r5082 r5093 49 49 REAL,DIMENSION(klon,klev,klev),INTENT(IN) :: sij ! fraction dair de lenv 50 50 REAL,DIMENSION(klon,klev),INTENT(IN) :: wght_cvfd ! weights of the layers feeding convection 51 REAL,DIMENSION(klon,klev,klev),INTENT(IN) :: elij ! contenu en eau condens �e sp�cifique/conc deau condens�e massique51 REAL,DIMENSION(klon,klev,klev),INTENT(IN) :: elij ! contenu en eau condensée spécifique/conc deau condensée massique 52 52 REAL,DIMENSION(klon,klev,klev),INTENT(IN) :: epmlmMm ! eau condensee precipitee dans mel masse dair sat 53 53 REAL,DIMENSION(klon,klev),INTENT(IN) :: eplaMm ! eau condensee precipitee dans aa masse dair sat 54 54 55 REAL,DIMENSION(klon,klev),INTENT(IN) :: clw ! contenu en eau condens �e dans lasc adiab55 REAL,DIMENSION(klon,klev),INTENT(IN) :: clw ! contenu en eau condensée dans lasc adiab 56 56 REAL,DIMENSION(klon),INTENT(IN) :: sigd 57 57 INTEGER,DIMENSION(klon),INTENT(IN) :: icb,inb … … 80 80 81 81 ! RomP ! les variables sont nettoyees des valeurs aberrantes 82 REAL,DIMENSION(klon,klev) :: Pa, Pm ! pluie AA et m �langes, var temporaire82 REAL,DIMENSION(klon,klev) :: Pa, Pm ! pluie AA et mélanges, var temporaire 83 83 REAL,DIMENSION(klon,klev) :: pmflxs,pmflxr ! pmflxrIN,pmflxsIN sans valeur aberante 84 84 REAL,DIMENSION(klon,klev) :: mp ! flux de masse … … 155 155 ! On prend la moyenne des precip entre le niveau i+1 et i 156 156 ! I=3/4* (P(1+1)+P(i))/2 / (sigd*r*rho_l) 157 ! 1000kg/m3= densit �de l'eau157 ! 1000kg/m3= densité de l'eau 158 158 ! 0.75e-3 = 3/4 /1000 159 ! Par la suite, I est tout le temps multipli �par sig_d pour avoir l'impaction sur la surface de la maille160 ! on le n �glige ici pour simplifier le code159 ! Par la suite, I est tout le temps multiplié par sig_d pour avoir l'impaction sur la surface de la maille 160 ! on le néglige ici pour simplifier le code 161 161 do j=1,klev-1 162 162 do i=1,klon … … 201 201 END DO 202 202 203 ! suppression des valeurs tr �s faibles (~1e-320)203 ! suppression des valeurs très faibles (~1e-320) 204 204 ! multiplication de levaporation pour lavoir par unite de temps 205 205 ! et par unite de surface de la maille … … 468 468 kappa(i,j)=1. 469 469 if(j==1) then 470 qDi(i,j,it)=qDi(i,j+1,it) !orig tr(i,j,it) ! mp(1)=0 donc tout vient de la couche sup �rieure470 qDi(i,j,it)=qDi(i,j+1,it) !orig tr(i,j,it) ! mp(1)=0 donc tout vient de la couche supérieure 471 471 elseif(mp(i,j+1)>mp(i,j).and.mp(i,j+1)>1.e-10) then 472 472 qDi(i,j,it)=qDi(i,j+1,it) -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/mod_1D_amma_read.F90
r5088 r5093 389 389 endif 390 390 if (annee_ref==2006 .and. day1<day_ini_amma) then 391 print*,'AMMA a d �but�le 10 juillet 2006',day1,day_ini_amma391 print*,'AMMA a débuté le 10 juillet 2006',day1,day_ini_amma 392 392 print*,'Changer dayref dans run.def' 393 393 stop -
LMDZ6/branches/Amaury_dev/libf/phylmd/hbtm_mod.F90
r3774 r5093 181 181 ! ++ r4 = 35.86 7.66 Kelvin 182 182 ! ++ q_sat = eps*e_sat/(p-(1-eps)*e_sat) 183 ! ++ deriv �:183 ! ++ derivé : 184 184 ! ++ ========= 185 185 ! ++ r3*(Tf-r4)*q_sat(T,p) -
LMDZ6/branches/Amaury_dev/libf/phylmd/init_be.F90
r5082 r5093 62 62 WRITE(*,*)'PASSAGE init_be ...' 63 63 64 ! la source est maintenant d �finie independemment de la valeur de klev.64 ! la source est maintenant définie independemment de la valeur de klev. 65 65 !!! Source actuellement definie pour klev = 19 et klev >= 39 66 66 !! IF (klev /= 19 .AND. klev<39) CALL abort_physic("init_be","Source du be7 necessite klev=19 ou klev>=39",1) -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_tso.F
r3900 r5093 623 623 c #EU TsisSV(ikl,isl) = max(TaT_SV(ikl)-15.,TsisSV(ikl,isl)) 624 624 625 !XF 18/11/2018 to avoid ST reaching 70 �C!!625 !XF 18/11/2018 to avoid ST reaching 70°C!! 626 626 !It is an error compensation but does not work over tundra 627 627 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_alp.F90
r5087 r5093 29 29 ! Nicolas Rochetin et Jean-Yves Grandpeix 30 30 ! pour la fermeture stochastique. 2012 31 ! Fr �d�ric Hourdin :31 ! Frédéric Hourdin : 32 32 ! netoyage informatique. 2022 33 33 ! … … 81 81 INTEGER ig,k,l 82 82 integer nsrf 83 real rhobarz0(ngrid) ! Densit �au LCL83 real rhobarz0(ngrid) ! Densité au LCL 84 84 logical ok_lcl(ngrid) ! Existence du LCL des thermiques 85 85 integer klcl(ngrid) ! Niveau du LCL 86 86 real interp(ngrid) ! Coef d'interpolation pour le LCL 87 87 !--Triggering 88 real, parameter :: su_cst=4e4 ! Surface unite: celle d'un updraft �l�mentaire88 real, parameter :: su_cst=4e4 ! Surface unite: celle d'un updraft élémentaire 89 89 real, parameter :: hcoef=1 ! Coefficient directeur pour le calcul de s2 90 real, parameter :: hmincoef=0.3 ! Coefficient directeur pour l'ordonn �e � l'origine pour le calcul de s291 real, parameter :: eps1=0.3 ! Fraction de surface occup �e par la population 1 : eps1=n1*s1/(fraca0*Sd)92 real, dimension(ngrid) :: hmin ! Ordonn �e �l'origine pour le calcul de s290 real, parameter :: hmincoef=0.3 ! Coefficient directeur pour l'ordonnée à l'origine pour le calcul de s2 91 real, parameter :: eps1=0.3 ! Fraction de surface occupée par la population 1 : eps1=n1*s1/(fraca0*Sd) 92 real, dimension(ngrid) :: hmin ! Ordonnée à l'origine pour le calcul de s2 93 93 real, dimension(ngrid) :: zmax_moy ! Hauteur moyenne des thermiques : zmax_moy = zlcl + 0.33 (zmax-zlcl) 94 94 real, parameter :: zmax_moy_coef=0.33 … … 100 100 real, dimension(ngrid,nlay) :: pbl_tke_max ! Profil de TKE moyenne 101 101 real, dimension(ngrid) :: pbl_tke_max0 ! TKE moyenne au LCL 102 real, dimension(ngrid,nlay) :: w_ls ! Vitesse verticale grande �chelle (m/s)103 real, parameter :: coef_m=1. ! On consid �re un rendement pour alp_bl_fluct_m104 real, parameter :: coef_tke=1. ! On consid �re un rendement pour alp_bl_fluct_tke102 real, dimension(ngrid,nlay) :: w_ls ! Vitesse verticale grande échelle (m/s) 103 real, parameter :: coef_m=1. ! On considère un rendement pour alp_bl_fluct_m 104 real, parameter :: coef_tke=1. ! On considère un rendement pour alp_bl_fluct_tke 105 105 real :: zdp 106 106 real, dimension(ngrid) :: alp_int,dp_int … … 171 171 !!jyg fin 172 172 173 !------------Calcul des propri �t�s du thermique au LCL173 !------------Calcul des propriétés du thermique au LCL 174 174 IF ( (iflag_trig_bl>=1) .or. (iflag_clos_bl>=1) ) THEN 175 175 … … 198 198 enddo 199 199 200 !-----Calcul de la TKE transport �e par les thermiques : therm_tke_max200 !-----Calcul de la TKE transportée par les thermiques : therm_tke_max 201 201 call thermcell_tke_transport(ngrid,nlay,ptimestep,fm0,entr0, & ! in 202 202 rg,pplev,therm_tke_max) ! out 203 203 ! print *,' thermcell_tke_transport -> ' !!jyg 204 204 205 !-----Calcul des profils verticaux de TKE hors thermiques : env_tke_max, et de la vitesse verticale grande �chelle : W_ls205 !-----Calcul des profils verticaux de TKE hors thermiques : env_tke_max, et de la vitesse verticale grande échelle : W_ls 206 206 do l=1,nlay 207 207 do ig=1,ngrid 208 pbl_tke_max(ig,l)=fraca(ig,l)*therm_tke_max(ig,l)+(1.-fraca(ig,l))*env_tke_max(ig,l) ! Recalcul de TKE moyenne apr �s transport de TKE_TH209 env_tke_max(ig,l)=(pbl_tke_max(ig,l)-fraca(ig,l)*therm_tke_max(ig,l))/(1.-fraca(ig,l)) ! Recalcul de TKE dans l'environnement apr �s transport de TKE_TH210 w_ls(ig,l)=-1.*omega(ig,l)/(RG*rhobarz(ig,l)) ! Vitesse verticale de grande �chelle208 pbl_tke_max(ig,l)=fraca(ig,l)*therm_tke_max(ig,l)+(1.-fraca(ig,l))*env_tke_max(ig,l) ! Recalcul de TKE moyenne après transport de TKE_TH 209 env_tke_max(ig,l)=(pbl_tke_max(ig,l)-fraca(ig,l)*therm_tke_max(ig,l))/(1.-fraca(ig,l)) ! Recalcul de TKE dans l'environnement après transport de TKE_TH 210 w_ls(ig,l)=-1.*omega(ig,l)/(RG*rhobarz(ig,l)) ! Vitesse verticale de grande échelle 211 211 enddo 212 212 enddo … … 253 253 254 254 255 !-----Epaisseur du nuage (depth) et d �termination de la queue du spectre de panaches (n2,s2) et du panache le plus gros (s_max)255 !-----Epaisseur du nuage (depth) et détermination de la queue du spectre de panaches (n2,s2) et du panache le plus gros (s_max) 256 256 do ig=1,ngrid 257 257 zmax_moy(ig)=zlcl(ig)+zmax_moy_coef*(zmax(ig)-zlcl(ig)) … … 328 328 enddo 329 329 330 !-----S �curit�ALP infinie330 !-----Sécurité ALP infinie 331 331 do ig=1,ngrid 332 332 if (fraca0(ig)>0.98) alp_bl_stat(ig)=2. -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_dry.F90
r5087 r5093 90 90 ! 1. le flux de masse en haut f_star(ig,l+1) 91 91 ! 2. la temperature potentielle virtuelle dans la couche ztva(ig,l) 92 ! 3. la vitesse au carr �en haut zw2(ig,l+1)92 ! 3. la vitesse au carré en haut zw2(ig,l+1) 93 93 !------------------------------------------------------------------------ 94 94 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_dv2.F90
r5087 r5093 113 113 zf2=1. 114 114 115 ! la premi �re fois on multiplie le coefficient de freinage115 ! la première fois on multiplie le coefficient de freinage 116 116 ! par le module du vent dans la couche en dessous. 117 117 ! Mais pourquoi donc ??? -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_flux2.F90
r5087 r5093 174 174 ! FH Version en cours de test; 175 175 ! par rapport a thermcell_flux, on fait une grande boucle sur "l" 176 ! et on modifie le flux avec tous les contr �les appliques d'affilee176 ! et on modifie le flux avec tous les contrôles appliques d'affilee 177 177 ! pour la meme couche 178 178 ! Momentanement, on duplique le calcule du flux pour pouvoir comparer -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_height.F90
r5087 r5093 39 39 enddo 40 40 41 ! On traite le cas particulier qu'il faudrait �viter ou le thermique41 ! On traite le cas particulier qu'il faudrait éviter ou le thermique 42 42 ! atteind le haut du modele ... 43 43 do ig=1,ngrid -
LMDZ6/branches/Amaury_dev/libf/phylmd/o3_chem_m.F90
r5086 r5093 24 24 25 25 integer, intent(in):: julien ! jour julien, 1 <= julien <= 360 26 real, intent(in):: gmtime ! heure de la journ �e en fraction de jour26 real, intent(in):: gmtime ! heure de la journée en fraction de jour 27 27 real, intent(in):: t_seri(:, :) ! (klon, nbp_lev) temperature, in K 28 28 … … 59 59 real earth_long 60 60 ! (longitude vraie de la Terre dans son orbite solaire, par 61 ! rapport au point vernal (21 mars), en degr �s)61 ! rapport au point vernal (21 mars), en degrés) 62 62 63 63 real pmu0(klon) ! mean of cosine of solar zenith angle during "pdtphys" -
LMDZ6/branches/Amaury_dev/libf/phylmd/phyaqua_mod.F90
r5090 r5093 942 942 if (type_profil==20) then 943 943 print*,'Profile SST 20' 944 ! Méthode 13 "Qmax2K" plateau réel �| l'Equateur augmenté +2K944 ! Méthode 13 "Qmax2K" plateau réel é| l'Equateur augmenté +2K 945 945 946 946 do j=1,klon … … 951 951 if (type_profil==21) then 952 952 print*,'Profile SST 21' 953 ! Méthode 13 "Qmax2K" plateau réel �| l'Equateur augmenté +2K953 ! Méthode 13 "Qmax2K" plateau réel é| l'Equateur augmenté +2K 954 954 do j=1,klon 955 955 phy_sst(j,i)=252.+55.*(1-sin(rlatd(j))**2) -
LMDZ6/branches/Amaury_dev/libf/phylmd/phys_output_var_mod.F90
r5087 r5093 164 164 165 165 REAL, SAVE, ALLOCATABLE:: tkt(:) ! (klon) 166 ! �paisseur (m) de la couche de diffusion thermique (microlayer)166 ! épaisseur (m) de la couche de diffusion thermique (microlayer) 167 167 ! cool skin thickness 168 168 169 169 REAL, SAVE, ALLOCATABLE:: tks(:) ! (klon) 170 ! �paisseur (m) de la couche de diffusion de masse (microlayer)170 ! épaisseur (m) de la couche de diffusion de masse (microlayer) 171 171 172 172 REAL, SAVE, ALLOCATABLE:: taur(:) ! (klon) momentum flux due to rain, in Pa -
LMDZ6/branches/Amaury_dev/libf/phylmd/plevel.F90
r5088 r5093 74 74 ! ===================================================================== 75 75 IF (lnew) THEN 76 ! on r �nitialise les r�ndicages et les poids76 ! on rénitialise les réndicages et les poids 77 77 ! ===================================================================== 78 78 … … 108 108 109 109 ! ... Modif . P. Le Van ( 20/01/98) .... 110 ! Modif Fr ��ic Hourdin (3/01/02)110 ! Modif Frédéric Hourdin (3/01/02) 111 111 112 112 aist(i) = log(pgcm(i,lb(i))/pres)/log(pgcm(i,lb(i))/pgcm(i,lt(i))) -
LMDZ6/branches/Amaury_dev/libf/phylmd/qsatseaw_1D.F90
r4722 r5093 48 48 !! Zeng, X., Zhao, M., and Dickinson, R. E., 1998 : Intercomparaison of bulk 49 49 !! aerodynamic algorithm for the computation of sea surface fluxes using 50 !! TOGA COARE and TAO data. Journal of Climate, vol 11, n �10, pp 2628--264450 !! TOGA COARE and TAO data. Journal of Climate, vol 11, n°10, pp 2628--2644 51 51 !! 52 52 !! -
LMDZ6/branches/Amaury_dev/libf/phylmd/slab_heat_transp_mod.F90
r5082 r5093 409 409 ELSE 410 410 alpha(:)=alpham 411 ! Tsurf-Tdeep ~ 10 �in the Tropics411 ! Tsurf-Tdeep ~ 10° in the Tropics 412 412 ENDIF 413 413 -
LMDZ6/branches/Amaury_dev/libf/phylmd/surf_land_orchidee_mod.F90
r5082 r5093 254 254 IF ( .NOT. ALLOCATED(albedo_keep)) THEN 255 255 !ym ALLOCATE(albedo_keep(klon)) 256 !ym bizarre que non allou �en knon precedement256 !ym bizarre que non alloué en knon precedement 257 257 ALLOCATE(albedo_keep(knon)) 258 258 ALLOCATE(zlev(knon)) -
LMDZ6/branches/Amaury_dev/libf/phylmd/surf_ocean_mod.F90
r5087 r5093 142 142 143 143 REAL, intent(out):: tkt(:) ! (knon) 144 ! �paisseur (m) de la couche de diffusion thermique (microlayer)144 ! épaisseur (m) de la couche de diffusion thermique (microlayer) 145 145 ! cool skin thickness 146 146 147 147 REAL, intent(out):: tks(:) ! (knon) 148 ! �paisseur (m) de la couche de diffusion de masse (microlayer)148 ! épaisseur (m) de la couche de diffusion de masse (microlayer) 149 149 150 150 REAL, intent(out):: taur(:) ! (knon)
Note: See TracChangeset
for help on using the changeset viewer.