Changeset 5113 for LMDZ6/branches/Amaury_dev/libf/phylmd
- Timestamp:
- Jul 24, 2024, 1:17:08 PM (6 months ago)
- Location:
- LMDZ6/branches/Amaury_dev/libf/phylmd
- Files:
-
- 89 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/bl_for_dms.f90
r5104 r5113 39 39 PARAMETER (vk = 0.35) 40 40 REAL :: beta ! coefficient d'evaporation reelle (/evapotranspiration) 41 ! !entre 0 et 1, mais 1 au-dessus de la mer41 ! entre 0 et 1, mais 1 au-dessus de la mer 42 42 PARAMETER (beta = 1.) 43 43 INTEGER :: i, k -
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/condsurfc_new.f90
r5110 r5113 72 72 CALL exit(1) 73 73 ENDIF 74 ! !print *,'lmt_bcff = ',lmt_bcff75 ! !stop74 !print *,'lmt_bcff = ',lmt_bcff 75 !stop 76 76 77 77 ! BC emissions from non fossil fuel combustion -
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/dustemission_mod.F90
r5112 r5113 1374 1374 1375 1375 SUBROUTINE def_copyncl(kfin) 1376 implicit none1376 IMPLICIT NONE 1377 1377 1378 1378 integer i,n,kfin,ideb,ifin,istep,kfin2 … … 1427 1427 !c--------------------------------------------------------------- 1428 1428 1429 implicit none1429 IMPLICIT NONE 1430 1430 integer i1,i2,nclass,iout,ismin,ismax,k2,ihalf,idiff 1431 1431 real siz(nclass),ds -
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/inscav_spl.f90
r5105 r5113 123 123 beta = MIN(MAX(0.0, -beta), 1.0) 124 124 ELSE !--reevaporation non totale pour aerosols 125 ! !print *,'FRAC USED IN INSCAV_SPL'125 !print *,'FRAC USED IN INSCAV_SPL' 126 126 beta = MIN(MAX(0.0, -beta) * frac, 1.0) 127 127 ENDIF -
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/read_newemissions.f90
r5110 r5113 120 120 ! REAL dayemintime ! time in hours of the other emissions input files resolution 121 121 REAL :: jH_init ! shift in the hour (count as days) respecto to 122 ! !realhour = (pdtphys*i)/3600/24 -days_elapsed122 ! realhour = (pdtphys*i)/3600/24 -days_elapsed 123 123 REAL :: jH_emi, jH_vent, jH_day 124 124 SAVE jH_init, jH_vent, jH_day -
LMDZ6/branches/Amaury_dev/libf/phylmd/Dust/sediment_mod.f90
r5105 r5113 153 153 v_dep_ss(i, k) = v_sed 154 154 sed_flux(i, k) = tr_seri(i, k, id_coss) * v_sed !g/cm3*m/sec 155 ! !sed_ss3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!!156 ! !conc_sed_ss3D(i,k)=sed_flux(i,k)*1.e6 !g/m3*sec !!!!!!!155 !sed_ss3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!! 156 ! conc_sed_ss3D(i,k)=sed_flux(i,k)*1.e6 !g/m3*sec !!!!!!! 157 157 ! 158 158 ENDDO !klon … … 221 221 v_dep_dust(i, k) = v_sed 222 222 sed_flux(i, k) = tr_seri(i, k, id_codu) * v_sed !g/cm3.m/sec 223 ! !sed_dust3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!!223 !sed_dust3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!! 224 224 ! 225 225 ENDDO !klon … … 288 288 v_dep_dustsco(i, k) = v_sed 289 289 sed_flux(i, k) = tr_seri(i, k, id_scdu) * v_sed !g/cm3.m/sec 290 ! !sed_dustsco3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!!290 !sed_dustsco3D(i,k)= -sed_flux(i,k)/zdz(i,k) !g/cm3*sec !!!!!!! 291 291 ! 292 292 ENDDO !klon -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/bulk_flux_m.F90
r5103 r5113 1 1 module bulk_flux_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/config_ocean_skin_m.F90
r5112 r5113 1 1 module config_ocean_skin_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 logical, protected:: jcool ! cool skin calculation … … 31 31 #ifdef IN_LMDZ 32 32 use lmdz_ioipsl_getin_p, only: getin_p 33 use assert_m, only: assert33 use lmdz_assert, only: assert 34 34 #endif 35 35 -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/const.F90
r5103 r5113 1 1 module const 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 real, parameter :: beta = 0.756 / 1023.343 -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/esat_m.F90
r3834 r5113 1 1 module esat_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/fv_m.F90
r3834 r5113 1 1 module fv_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/mom_flux_rain_m.F90
r3834 r5113 1 1 module mom_flux_rain_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/phiw_m.F90
r3834 r5113 1 1 module Phiw_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/sens_heat_rain_m.F90
r4176 r5113 1 1 module sens_heat_rain_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/Ocean_skin/therm_expans_m.F90
r3834 r5113 1 1 module therm_expans_m 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 contains -
LMDZ6/branches/Amaury_dev/libf/phylmd/StratAer/sulfate_aer_mod.F90
r5105 r5113 773 773 ! and Noppel et al. (1990) 774 774 775 implicit none775 IMPLICIT NONE 776 776 real, intent(in) :: T 777 777 real, parameter :: & … … 792 792 ! equilibrium H2SO4 number density over pure H2SO4 (molec/cm3) 793 793 794 implicit none794 IMPLICIT NONE 795 795 real, intent(in) :: T 796 796 real :: presat … … 811 811 ! equilibrium H2O pressure over pure liquid water (Pa) 812 812 813 implicit none813 IMPLICIT NONE 814 814 real, intent(in) :: T 815 815 … … 841 841 !---->Vehkamaeki et al. (2002) 842 842 843 implicit none843 IMPLICIT NONE 844 844 real, intent(in) :: T, so4mfrac 845 845 real, parameter :: & … … 891 891 !---->Vehkamaeki et al. (2002) 892 892 893 implicit none893 IMPLICIT NONE 894 894 real,intent(in) :: T, so4frac 895 895 real :: a,b,so4mfrac,so4m2,so4m3,so4m4,so4m5,so4sig … … 941 941 ! = h2so4 mass fraction*100. 942 942 943 implicit none943 IMPLICIT NONE 944 944 real, intent(in) :: pph2o, T 945 945 … … 1004 1004 ! equilibrium h2so4 number density over H2SO4/H2O solution (molec/cm3) 1005 1005 1006 implicit none1006 IMPLICIT NONE 1007 1007 real, intent(in) :: T, xa ! T(K) xa(H2SO4 mass fraction) 1008 1008 … … 1026 1026 ! partial molar volume of h2so4 in h2so4/h2o solution (cm3/mole) 1027 1027 1028 implicit none1028 IMPLICIT NONE 1029 1029 real, intent(in) :: T, ws 1030 1030 real, dimension(22),parameter :: x=(/ & … … 1049 1049 ! molar volume of pure h2o (cm3/mole) 1050 1050 1051 implicit none1051 IMPLICIT NONE 1052 1052 real, intent(in) :: T 1053 1053 real, parameter :: x1=2.393284E-02,x2=-4.359335E-05,x3=7.961181E-08 -
LMDZ6/branches/Amaury_dev/libf/phylmd/acama_gwd_rando_m.F90
r5112 r5113 4 4 module ACAMA_GWD_rando_m 5 5 6 implicit none6 IMPLICIT NONE 7 7 8 8 contains … … 22 22 ! ONLINE: 23 23 use dimphy, only: klon, klev 24 use assert_m, only: assert24 use lmdz_assert, only: assert 25 25 USE lmdz_ioipsl_getin_p, ONLY: getin_p 26 26 USE lmdz_vertical_layers, ONLY: presnivs -
LMDZ6/branches/Amaury_dev/libf/phylmd/calbeta_clim.F90
r5112 r5113 15 15 USE lmdz_print_control, ONLY: prt_level 16 16 17 implicit none17 IMPLICIT NONE 18 18 integer klon,nt,j,it 19 19 real logbeta(klon),pi -
LMDZ6/branches/Amaury_dev/libf/phylmd/calltherm.F90
r5112 r5113 42 42 #endif 43 43 44 implicit none44 IMPLICIT NONE 45 45 include "clesphys.h" 46 46 include "thermcell_old.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/coare30_flux_cnrm_mod.F90
r5111 r5113 6 6 7 7 module coare30_flux_cnrm_mod 8 implicit none9 private8 IMPLICIT NONE 9 PRIVATE 10 10 public COARE30_FLUX_CNRM 11 11 -
LMDZ6/branches/Amaury_dev/libf/phylmd/coare_cp_mod.F90
r5103 r5113 1 1 module coare_cp_mod 2 implicit none3 private2 IMPLICIT NONE 3 PRIVATE 4 4 public psit_30, psiuo, coare_cp 5 5 … … 7 7 8 8 real function psit_30(zet) 9 implicit none9 IMPLICIT NONE 10 10 real, intent(in) :: zet 11 11 … … 27 27 28 28 real function psiuo(zet) 29 implicit none29 IMPLICIT NONE 30 30 real, intent(in) :: zet 31 31 -
LMDZ6/branches/Amaury_dev/libf/phylmd/conccm.F90
r5105 r5113 259 259 REAL shprme ! intermediate specific humidity pert. 260 260 REAL qsattp ! saturation mixing ratio for 261 ! !thermally perturbed PBL parcels261 ! thermally perturbed PBL parcels 262 262 REAL dz ! local layer depth 263 263 REAL b1 ! bouyancy measure in detrainment lvl -
LMDZ6/branches/Amaury_dev/libf/phylmd/convect3.F90
r5105 r5113 234 234 235 235 nopt = 0 236 ! !NOPT=1 ! sbl236 ! NOPT=1 ! sbl 237 237 238 238 ! *** PERFORM DRY ADIABATIC ADJUSTMENT *** … … 303 303 fv2(i) = (v(i)-v1(i))/delt ! sbl 304 304 305 ! !T1(I)=T(I) ! commente sbl306 ! !R1(I)=RR(I) ! commente sbl305 ! T1(I)=T(I) ! commente sbl 306 ! R1(I)=RR(I) ! commente sbl 307 307 END DO 308 308 END IF … … 1313 1313 ! *** Diagnose the in-cloud mixing ratio *** ! cld 1314 1314 ! *** of condensed water *** ! cld 1315 ! !cld1315 ! cld 1316 1316 DO i = 1, nd ! cld 1317 1317 maa(i) = 0.0 ! cld -
LMDZ6/branches/Amaury_dev/libf/phylmd/create_limit_unstruct_mod.F90
r5111 r5113 179 179 180 180 SUBROUTINE time_interpolation(ndays,field_in,calendar,field_out) 181 USE pchsp_95_m, only: pchsp_95 182 USE pchfe_95_m, only: pchfe_95 183 USE arth_m, only: arth 181 USE lmdz_libmath_pch, only: pchsp_95, pchfe_95 182 USE lmdz_arth, only: arth 184 183 USE dimphy, ONLY: klon 185 184 USE ioipsl, ONLY: ioget_year_len -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv30_routines.F90
r5112 r5113 331 331 icbmax = 2 332 332 DO i = 1, len 333 ! !icbmax=max(icbmax,icb(i))333 ! icbmax=max(icbmax,icb(i)) 334 334 IF (iflag(i)<7) icbmax = max(icbmax, icb(i)) ! sb Jun7th02 335 335 END DO … … 420 420 421 421 ! Re-compute icbsmax (icbsmax2): !convect3 422 ! !convect3422 !convect3 423 423 icbsmax2 = 2 !convect3 424 424 DO i = 1, len !convect3 … … 1277 1277 END DO 1278 1278 1279 ! !if(inb.lt.(nl-1))then1280 ! !do 85 i=inb+1,nl-11281 ! !sig(i)=beta*sig(i)+2.*alpha*buoy(inb)*1282 ! !1 abs(buoy(inb))1283 ! !sig(i)=amax1(sig(i),0.0)1284 ! !w0(i)=beta*w0(i)1285 ! !85 continue1286 ! !end if1287 1288 ! !do 87 i=1,icb1289 ! !sig(i)=beta*sig(i)-2.*alpha*buoy(icb)*buoy(icb)1290 ! !sig(i)=amax1(sig(i),0.0)1291 ! !w0(i)=beta*w0(i)1292 ! !87 continue1279 ! if(inb.lt.(nl-1))then 1280 ! do 85 i=inb+1,nl-1 1281 ! sig(i)=beta*sig(i)+2.*alpha*buoy(inb)* 1282 ! 1 abs(buoy(inb)) 1283 ! sig(i)=amax1(sig(i),0.0) 1284 ! w0(i)=beta*w0(i) 1285 ! 85 continue 1286 ! end if 1287 1288 ! do 87 i=1,icb 1289 ! sig(i)=beta*sig(i)-2.*alpha*buoy(icb)*buoy(icb) 1290 ! sig(i)=amax1(sig(i),0.0) 1291 ! w0(i)=beta*w0(i) 1292 ! 87 continue 1293 1293 1294 1294 ! ------------------------------------------------------------- … … 1373 1373 1374 1374 1375 ! !cape=0.01376 ! !do 98 i=icb+1,inb1377 ! !deltap = min(pbase,ph(i-1))-min(pbase,ph(i))1378 ! !cape=cape+rrd*buoy(i-1)*deltap/p(i-1)1379 ! !dcape=rrd*buoy(i-1)*deltap/p(i-1)1380 ! !dlnp=deltap/p(i-1)1381 ! !cape=amax1(0.0,cape)1382 ! !sigold=sig(i)1383 1384 ! !dtmin=100.01385 ! !do 97 j=icb,i-11386 ! !dtmin=amin1(dtmin,buoy(j))1387 ! !97 continue1388 1389 ! !sig(i)=beta*sig(i)+alpha*dtmin*abs(dtmin)1390 ! !sig(i)=amax1(sig(i),0.0)1391 ! !sig(i)=amin1(sig(i),0.01)1392 ! !fac=amin1(((dtcrit-dtmin)/dtcrit),1.0)1393 ! !w=(1.-beta)*fac*sqrt(cape)+beta*w0(i)1394 ! !amu=0.5*(sig(i)+sigold)*w1395 ! !m(i)=amu*0.007*p(i)*(ph(i)-ph(i+1))/tv(i)1396 ! !w0(i)=w1397 ! !98 continue1398 ! !w0(icb)=0.5*w0(icb+1)1399 ! !m(icb)=0.5*m(icb+1)*(ph(icb)-ph(icb+1))/(ph(icb+1)-ph(icb+2))1400 ! !sig(icb)=sig(icb+1)1401 ! !sig(icb-1)=sig(icb)1375 ! cape=0.0 1376 ! do 98 i=icb+1,inb 1377 ! deltap = min(pbase,ph(i-1))-min(pbase,ph(i)) 1378 ! cape=cape+rrd*buoy(i-1)*deltap/p(i-1) 1379 ! dcape=rrd*buoy(i-1)*deltap/p(i-1) 1380 ! dlnp=deltap/p(i-1) 1381 ! cape=amax1(0.0,cape) 1382 ! sigold=sig(i) 1383 1384 ! dtmin=100.0 1385 ! do 97 j=icb,i-1 1386 ! dtmin=amin1(dtmin,buoy(j)) 1387 ! 97 continue 1388 1389 ! sig(i)=beta*sig(i)+alpha*dtmin*abs(dtmin) 1390 ! sig(i)=amax1(sig(i),0.0) 1391 ! sig(i)=amin1(sig(i),0.01) 1392 ! fac=amin1(((dtcrit-dtmin)/dtcrit),1.0) 1393 ! w=(1.-beta)*fac*sqrt(cape)+beta*w0(i) 1394 ! amu=0.5*(sig(i)+sigold)*w 1395 ! m(i)=amu*0.007*p(i)*(ph(i)-ph(i+1))/tv(i) 1396 ! w0(i)=w 1397 ! 98 continue 1398 ! w0(icb)=0.5*w0(icb+1) 1399 ! m(icb)=0.5*m(icb+1)*(ph(icb)-ph(icb+1))/(ph(icb+1)-ph(icb+2)) 1400 ! sig(icb)=sig(icb+1) 1401 ! sig(icb-1)=sig(icb) 1402 1402 1403 1403 END SUBROUTINE cv30_closure … … 1872 1872 ! enddo 1873 1873 ! enddo 1874 ! !RomP >>>1874 ! RomP >>> 1875 1875 DO i = 1, nd 1876 1876 DO il = 1, ncum … … 1879 1879 END DO 1880 1880 END DO 1881 ! !RomP <<<1881 ! RomP <<< 1882 1882 1883 1883 ! *** check whether ep(inb)=0, if so, skip precipitating *** … … 2289 2289 ! *** NE PAS UTILISER POUR L'INSTANT *** 2290 2290 2291 ! !do il=1,ncum2292 ! !wd(il)=betad*abs(mp(il,icb(il)))*0.01*rrd*t(il,icb(il))2293 ! !: /(sigd*p(il,icb(il)))2294 ! !enddo2291 ! do il=1,ncum 2292 ! wd(il)=betad*abs(mp(il,icb(il)))*0.01*rrd*t(il,icb(il)) 2293 ! : /(sigd*p(il,icb(il))) 2294 ! enddo 2295 2295 2296 2296 … … 2943 2943 ! *** diagnose the in-cloud mixing ratio *** ! cld 2944 2944 ! *** of condensed water *** ! cld 2945 ! !cld2945 ! cld 2946 2946 2947 2947 DO i = 1, nd ! cld … … 3004 3004 END SUBROUTINE cv30_yield 3005 3005 3006 ! !RomP >>>3006 !RomP >>> 3007 3007 SUBROUTINE cv30_tracer(nloc, len, ncum, nd, na, ment, sij, da, phi, phi2, & 3008 3008 d1a, dam, ep, vprecip, elij, clw, epmlmmm, eplamm, icb, inb) … … 3062 3062 DO i = 1, ncum 3063 3063 IF (k>=icb(i) .AND. k<=inb(i) .AND. j<=inb(i)) THEN 3064 ! !jyg epm(i,j,k)=1.-(1.-ep(i,j))*clw(i,j)/elij(i,k,j)3064 !jyg epm(i,j,k)=1.-(1.-ep(i,j))*clw(i,j)/elij(i,k,j) 3065 3065 epm(i, j, k) = 1. - (1. - ep(i, j)) * clw(i, j) / max(elij(i, k, j), 1.E-16) 3066 ! !3066 ! 3067 3067 epm(i, j, k) = max(epm(i, j, k), 0.0) 3068 3068 END IF … … 3248 3248 , epmax_diag) 3249 3249 USE lmdz_abort_physic, ONLY: abort_physic 3250 implicit none3250 IMPLICIT NONE 3251 3251 3252 3252 ! On fait varier epmax en fn de la cape -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv3_routines.F90
r5112 r5113 5131 5131 , pbase, p, ph, tv, buoy, sig, w0,iflag & 5132 5132 , epmax_diag) 5133 implicit none5133 IMPLICIT NONE 5134 5134 5135 5135 ! On fait varier epmax en fn de la cape -
LMDZ6/branches/Amaury_dev/libf/phylmd/cv_routines.F90
r5112 r5113 1632 1632 ! *** diagnose the in-cloud mixing ratio *** ! cld 1633 1633 ! *** of condensed water *** ! cld 1634 ! !cld1634 ! cld 1635 1635 DO ij = 1, ncum ! cld 1636 1636 DO i = 1, nd ! cld -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/lmdz_1dutils.f90
r5112 r5113 1246 1246 ! avec w=omega * dt 1247 1247 !--------------------------------------------------------------- 1248 implicit none1248 IMPLICIT NONE 1249 1249 ! arguments 1250 1250 integer llm … … 1282 1282 ! sans WTG rajouter une advection horizontale 1283 1283 !---------------------------------------------------------------------- 1284 implicit none1284 IMPLICIT NONE 1285 1285 include "YOMCST.h" 1286 1286 ! argument … … 1354 1354 ! sans WTG rajouter une advection horizontale 1355 1355 !---------------------------------------------------------------------- 1356 implicit none1356 IMPLICIT NONE 1357 1357 include "YOMCST.h" 1358 1358 ! argument … … 1429 1429 USE dimphy 1430 1430 1431 implicit none1431 IMPLICIT NONE 1432 1432 1433 1433 ! ======================================================== … … 1477 1477 USE dimphy 1478 1478 1479 implicit none1479 IMPLICIT NONE 1480 1480 1481 1481 ! ======================================================== … … 1510 1510 USE dimphy 1511 1511 1512 implicit none1512 IMPLICIT NONE 1513 1513 1514 1514 ! ======================================================== … … 1599 1599 USE dimphy 1600 1600 1601 implicit none1601 IMPLICIT NONE 1602 1602 1603 1603 ! ======================================================== … … 1664 1664 &, dth_mod_cas, hth_mod_cas, vth_mod_cas, mxcalc) 1665 1665 1666 implicit none1666 IMPLICIT NONE 1667 1667 1668 1668 include "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/lmdz_old_1dconv.f90
r5104 r5113 8 8 & Ts, imp_fcg, ts_fcg, Tp_fcg, Turb_fcg) 9 9 10 implicit none10 IMPLICIT NONE 11 11 12 12 !ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc … … 458 458 &, d_t_adv, d_q_adv) 459 459 use dimphy 460 implicit none460 IMPLICIT NONE 461 461 462 462 INCLUDE "dimensions.h" … … 490 490 491 491 SUBROUTINE copie(klevgcm, playgcm, psolgcm, file_forctl) 492 implicit none492 IMPLICIT NONE 493 493 494 494 !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc … … 703 703 704 704 SUBROUTINE corresbis(psol) 705 implicit none705 IMPLICIT NONE 706 706 707 707 !cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/mod_1D_amma_read.F90
r5105 r5113 57 57 58 58 SUBROUTINE read_1D_cases 59 implicit none59 IMPLICIT NONE 60 60 61 61 INTEGER nid,rid,ierr … … 176 176 177 177 !program reading forcings of the AMMA case study 178 implicit none178 IMPLICIT NONE 179 179 180 180 integer ntime,nlevel … … 348 348 ,vitw_amma,ht_amma,hq_amma,lat_amma,sens_amma & 349 349 ,vitw_prof,ht_prof,hq_prof,lat_prof,sens_prof) 350 implicit none350 IMPLICIT NONE 351 351 352 352 !--------------------------------------------------------------------------------------- -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/mod_1D_cases_read.F90
r5105 r5113 819 819 820 820 821 implicit none821 IMPLICIT NONE 822 822 823 823 !--------------------------------------------------------------------------------------- -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/mod_1D_cases_read2.F90
r5105 r5113 80 80 81 81 SUBROUTINE read_1D_cas 82 implicit none82 IMPLICIT NONE 83 83 84 84 INTEGER nid,rid,ierr … … 189 189 !********************************************************************************************** 190 190 SUBROUTINE read2_1D_cas 191 implicit none191 IMPLICIT NONE 192 192 193 193 INTEGER nid,rid,ierr … … 314 314 !********************************************************************************************** 315 315 SUBROUTINE old_read_SCM_cas 316 implicit none316 IMPLICIT NONE 317 317 318 318 INCLUDE "date_cas.h" … … 535 535 536 536 !program reading forcing of the case study 537 implicit none537 IMPLICIT NONE 538 538 539 539 integer ntime,nlevel … … 650 650 651 651 !program reading forcing of the case study 652 implicit none652 IMPLICIT NONE 653 653 654 654 integer ntime,nlevel … … 819 819 820 820 !program reading forcing of the case study 821 implicit none821 IMPLICIT NONE 822 822 823 823 integer ntime,nlevel,k,t … … 1038 1038 1039 1039 1040 implicit none1040 IMPLICIT NONE 1041 1041 1042 1042 !--------------------------------------------------------------------------------------- … … 1247 1247 1248 1248 1249 implicit none1249 IMPLICIT NONE 1250 1250 1251 1251 !--------------------------------------------------------------------------------------- -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/mod_1D_cases_read_std.F90
r5105 r5113 89 89 !********************************************************************************************** 90 90 SUBROUTINE read_SCM_cas 91 implicit none91 IMPLICIT NONE 92 92 93 93 INCLUDE "date_cas.h" … … 329 329 330 330 !program reading forcing of the case study 331 implicit none331 IMPLICIT NONE 332 332 INCLUDE "compar1d.h" 333 333 … … 658 658 659 659 660 implicit none660 IMPLICIT NONE 661 661 662 662 !--------------------------------------------------------------------------------------- … … 930 930 ,dth_mod_cas,hth_mod_cas,vth_mod_cas,mxcalc) 931 931 932 implicit none932 IMPLICIT NONE 933 933 934 934 INCLUDE "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/old_1DUTILS_read_interp.h
r5105 r5113 3 3 & ,ts_toga,plev_toga,t_toga,q_toga,u_toga,v_toga,w_toga & 4 4 & ,ht_toga,vt_toga,hq_toga,vq_toga) 5 implicit none5 IMPLICIT NONE 6 6 7 7 !------------------------------------------------------------------------- … … 65 65 !------------------------------------------------------------------------- 66 66 SUBROUTINE read_sandu(fich_sandu,nlev_sandu,nt_sandu,ts_sandu) 67 implicit none67 IMPLICIT NONE 68 68 69 69 !------------------------------------------------------------------------- … … 102 102 SUBROUTINE read_astex(fich_astex,nlev_astex,nt_astex,div_astex, & 103 103 & ts_astex,ug_astex,vg_astex,ufa_astex,vfa_astex) 104 implicit none104 IMPLICIT NONE 105 105 106 106 !------------------------------------------------------------------------- … … 150 150 151 151 152 implicit none152 IMPLICIT NONE 153 153 154 154 integer ntime,nlevel … … 495 495 nf90_inq_dimid,nf90_inquire_dimension 496 496 497 implicit none497 IMPLICIT NONE 498 498 integer nid,ttm,llm 499 499 real*8 time(ttm) … … 543 543 & ,omega_mod,o3mmr_mod,mxcalc) 544 544 545 implicit none545 IMPLICIT NONE 546 546 547 547 INCLUDE "dimensions.h" … … 657 657 & ,tke_mod,o3mmr_mod,mxcalc) 658 658 659 implicit none659 IMPLICIT NONE 660 660 661 661 INCLUDE "dimensions.h" … … 776 776 & ,ts_rico,t_rico,q_rico,u_rico,v_rico,w_rico & 777 777 & ,dth_dyn,dqh_dyn) 778 implicit none778 IMPLICIT NONE 779 779 780 780 !------------------------------------------------------------------------- … … 939 939 & ,year_ini_sandu,day_ini_sandu,nt_sandu,dt_sandu & 940 940 & ,nlev_sandu,ts_sandu,ts_prof) 941 implicit none941 IMPLICIT NONE 942 942 943 943 !--------------------------------------------------------------------------------------- … … 1014 1014 SUBROUTINE read_armcu(fich_armcu,nlev_armcu,nt_armcu, & 1015 1015 & sens,flat,adv_theta,rad_theta,adv_qt) 1016 implicit none1016 IMPLICIT NONE 1017 1017 1018 1018 !------------------------------------------------------------------------- … … 1055 1055 & ,ht_mod,vt_mod,hq_mod,vq_mod,mxcalc) 1056 1056 1057 implicit none1057 IMPLICIT NONE 1058 1058 1059 1059 INCLUDE "dimensions.h" … … 1177 1177 & ,dt_mod_cas,ht_mod_cas,vt_mod_cas,dtrad_mod_cas,dq_mod_cas,hq_mod_cas,vq_mod_cas,mxcalc) 1178 1178 1179 implicit none1179 IMPLICIT NONE 1180 1180 1181 1181 INCLUDE "dimensions.h" … … 1336 1336 & ,ht_mod,hq_mod,hu_mod,hv_mod,w_mod,omega_mod,mxcalc) 1337 1337 1338 implicit none1338 IMPLICIT NONE 1339 1339 1340 1340 INCLUDE "dimensions.h" … … 1458 1458 & ,ufa_astex,vfa_astex,div_prof,ts_prof,ug_prof,vg_prof & 1459 1459 & ,ufa_prof,vfa_prof) 1460 implicit none1460 IMPLICIT NONE 1461 1461 1462 1462 !--------------------------------------------------------------------------------------- … … 1550 1550 & ,ts_prof,plev_prof,t_prof,q_prof,u_prof,v_prof,w_prof & 1551 1551 & ,ht_prof,vt_prof,hq_prof,vq_prof) 1552 implicit none1552 IMPLICIT NONE 1553 1553 1554 1554 !--------------------------------------------------------------------------------------- … … 1692 1692 & ,ustar_prof,psurf_prof,ug_prof,vg_prof & 1693 1693 & ,ht_prof,hq_prof,hu_prof,hv_prof,w_prof,omega_prof) 1694 implicit none1694 IMPLICIT NONE 1695 1695 1696 1696 !--------------------------------------------------------------------------------------- … … 1805 1805 & ,ug_gabls4,vg_gabls4,ht_gabls4,hq_gabls4,tg_gabls4 & 1806 1806 & ,ug_prof,vg_prof,ht_prof,hq_prof,tg_prof) 1807 implicit none1807 IMPLICIT NONE 1808 1808 1809 1809 !--------------------------------------------------------------------------------------- … … 1892 1892 & ,nlev_armcu,fs_armcu,fl_armcu,at_armcu,rt_armcu & 1893 1893 & ,aqt_armcu,fs_prof,fl_prof,at_prof,rt_prof,aqt_prof) 1894 implicit none1894 IMPLICIT NONE 1895 1895 1896 1896 !--------------------------------------------------------------------------------------- … … 1972 1972 & wfls,dqtdxls,dqtdyls,dqtdtls, & 1973 1973 & thlpcar,tracer,nt1,nt2) 1974 implicit none1974 IMPLICIT NONE 1975 1975 1976 1976 integer nlev_max,kmax,kmax2,ntrac … … 2045 2045 & thlprof,qprof,uprof,vprof,wprof,omega,o3mmr) 2046 2046 !====================================================================== 2047 implicit none2047 IMPLICIT NONE 2048 2048 2049 2049 integer nlev_max,kmax … … 2077 2077 & thlprof,qvprof,qlprof,qtprof,uprof,vprof,wprof,tkeprof,o3mmr) 2078 2078 !====================================================================== 2079 implicit none2079 IMPLICIT NONE 2080 2080 2081 2081 integer nlev_max,kmax … … 2111 2111 & vprof,thetaprof,tprof,qvprof,rvprof,aprof,bprof) 2112 2112 !====================================================================== 2113 implicit none2113 IMPLICIT NONE 2114 2114 2115 2115 integer nlev_max,kmax … … 2172 2172 use netcdf, ONLY: nf90_open,nf90_nowrite,nf90_noerr,nf90_strerror,nf90_inq_varid,nf90_get_var,& 2173 2173 nf90_inq_dimid,nf90_inquire_dimension 2174 implicit none2174 IMPLICIT NONE 2175 2175 2176 2176 integer ntime,nlevel … … 2383 2383 nf90_inq_dimid,nf90_inquire_dimension 2384 2384 2385 implicit none2385 IMPLICIT NONE 2386 2386 2387 2387 INCLUDE "YOMCST.h" … … 2717 2717 nf90_inq_dimid,nf90_inquire_dimension 2718 2718 2719 implicit none2719 IMPLICIT NONE 2720 2720 2721 2721 integer ntime,nlevel,nsol -
LMDZ6/branches/Amaury_dev/libf/phylmd/dyn1d/replay1d.F90
r5103 r5113 10 10 11 11 12 implicit none12 IMPLICIT NONE 13 13 INCLUDE "dimensions.h" 14 14 -
LMDZ6/branches/Amaury_dev/libf/phylmd/flott_gwd_rando_m.F90
r5112 r5113 3 3 module FLOTT_GWD_rando_m 4 4 5 implicit none5 IMPLICIT NONE 6 6 7 7 contains … … 19 19 !ONLINE: 20 20 use dimphy, only: klon, klev 21 use assert_m, only: assert21 use lmdz_assert, only: assert 22 22 USE lmdz_ioipsl_getin_p, ONLY: getin_p 23 23 USE lmdz_vertical_layers, ONLY: presnivs -
LMDZ6/branches/Amaury_dev/libf/phylmd/fonte_neige_mod.F90
r5111 r5113 16 16 ! run_off_ter and run_off_lic are the runoff at the compressed grid knon for 17 17 ! land and land-ice respectively 18 ! Note: run_off_lic is used in mod_landice and therfore not private18 ! Note: run_off_lic is used in mod_landice and therfore not PRIVATE 19 19 REAL, ALLOCATABLE, DIMENSION(:), PRIVATE :: run_off_ter 20 20 !$OMP THREADPRIVATE(run_off_ter) -
LMDZ6/branches/Amaury_dev/libf/phylmd/global_mean.F90
r5110 r5113 10 10 use lmdz_phys_mpi_data, only: is_mpi_root 11 11 USE ioipsl 12 implicit none12 IMPLICIT NONE 13 13 14 14 real,dimension(klon),intent(in) :: field -
LMDZ6/branches/Amaury_dev/libf/phylmd/grid_index.F90
r5112 r5113 7 7 USE dimphy, ONLY: klon 8 8 USE lmdz_geometry, ONLY: latitude_deg, longitude_deg 9 implicit none 9 IMPLICIT NONE 10 10 real, intent(in) :: lon_deg,lat_deg 11 11 integer :: grid_index -
LMDZ6/branches/Amaury_dev/libf/phylmd/grid_noro_m.F90
r5112 r5113 7 7 8 8 USE lmdz_print_control, ONLY: lunout 9 USE assert_eq_m, ONLY: assert_eq9 USE lmdz_assert_eq, ONLY: assert_eq 10 10 PRIVATE 11 11 PUBLIC :: grid_noro, grid_noro0, read_noro -
LMDZ6/branches/Amaury_dev/libf/phylmd/ini_undefSTD.F90
r5105 r5113 23 23 24 24 ! nout=1 !var. journaliere "day" moyenne sur tous les pas de temps 25 ! !de la physique25 ! de la physique 26 26 ! nout=2 !var. mensuelle "mth" moyennee sur tous les pas de temps 27 ! !de la physique27 ! de la physique 28 28 ! nout=3 !var. mensuelle "NMC" moyennee toutes les 6heures 29 29 -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/inlandsis.f90
r5105 r5113 336 336 337 337 data Z0mBS0 / 0.5e-6/ ! MINimum Snow Roughness Length 338 ! !for Momentum if Blowing Snow339 ! !Gallee et al. 2001 BLM 99 (19)338 ! for Momentum if Blowing Snow 339 ! Gallee et al. 2001 BLM 99 (19) 340 340 data Z0m_S0/ 0.00005/ ! MINimum Snow Roughness Length 341 ! !MegaDunes included341 ! MegaDunes included 342 342 data Z0m_S1/ 0.030 / ! MAXimum Snow Roughness Length 343 ! !(Sastrugis)343 ! (Sastrugis) 344 344 ! #GL data Z0_GIM/ 0.0013/ ! Ice Min Z0 = 0.0013 m (Broeke) 345 ! !Old Ice Z0 = 0.0500 m (Bruce)346 ! !0.0500 m (Smeets)347 ! !0.1200 m (Broeke)345 ! Old Ice Z0 = 0.0500 m (Bruce) 346 ! 0.0500 m (Smeets) 347 ! 0.1200 m (Broeke) 348 348 data Z0_ICE/ 0.0010/ ! Sea-Ice Z0 = 0.0010 m (Andreas) 349 ! !(Ice Station Weddel -- ISW)349 ! (Ice Station Weddel -- ISW) 350 350 ! for aerolian erosion 351 351 data SblPom/ 1.27/ ! Lower Boundary Height Parameter … … 436 436 437 437 rCd10n = 1. / 26.5 ! Vt / u*t = 26.5 438 ! !Budd et al. 1965, Antarct. Res. Series Fig.13439 ! !ratio developped during assumed neutral conditions438 ! Budd et al. 1965, Antarct. Res. Series Fig.13 439 ! ratio developped during assumed neutral conditions 440 440 441 441 … … 554 554 ! sss__G = 0.27417 * gravit 555 555 556 ! !______________ _____557 ! !Newton-Raphson (! Iteration, BEGIN)558 ! !~~~~~~~~~~~~~~ ~~~~~556 ! ______________ _____ 557 ! Newton-Raphson (! Iteration, BEGIN) 558 ! ~~~~~~~~~~~~~~ ~~~~~ 559 559 ! DO iit=1,nit 560 560 ! sss__K = gravit * r_Turb * A_Turb *za__SV(ikl) … … 580 580 ! us__SV(ikl)= max(us__SV(ikl),epsi ) 581 581 ! rCDmSV(ikl)= us__SV(ikl)/VVa_OK 582 ! !#AE sss__F = vonkar /rCDmSV(ikl)582 ! #AE sss__F = vonkar /rCDmSV(ikl) 583 583 ! ENDDO 584 584 585 ! !______________ ___586 ! !Newton-Raphson (! Iteration, END )587 ! !~~~~~~~~~~~~~~ ~~~585 ! ______________ ___ 586 ! Newton-Raphson (! Iteration, END ) 587 ! ~~~~~~~~~~~~~~ ~~~ 588 588 589 589 ! us_127 = exp( SblPom *log(us__SV(ikl))) 590 590 ! us_227 = us_127 * us__SV(ikl) 591 591 592 ! !Momentum Turbulent Scale u*: 0-Limit in case of no Blow. Snow593 ! !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~592 ! Momentum Turbulent Scale u*: 0-Limit in case of no Blow. Snow 593 ! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 594 594 ! dusuth = us__SV(ikl) - usthSV(ikl) ! u* - uth* 595 595 ! signus = max(sign(unun,dusuth),zero) ! 1 <=> u* - uth* > 0 … … 664 664 if (is_ok_density_kotlyakov) then 665 665 tt_tmp = TaT_SV(ikl)-TfSnow 666 ! !vv_tmp = VV10SV(ikl)666 !vv_tmp = VV10SV(ikl) 667 667 vv_tmp=VV__SV(ikl) ! Etienne: use wind speed at first model level instead of 10m wind 668 668 ! + ... [ A compromise between … … 1004 1004 1005 1005 e_pRad = 2.5 * coszSV(ikl) ! exponential argument, 1006 ! !V/nIR radiation partitioning,1007 ! !DR97, 2, eqn (2.53) & (2.54)1006 ! V/nIR radiation partitioning, 1007 ! DR97, 2, eqn (2.53) & (2.54) 1008 1008 e1pRad = 1.-exp(-e_pRad) ! exponential, V/nIR Rad. Part. 1009 1009 exdRad= 1. … … 1186 1186 1187 1187 TBr_sv(ikl) =sqrt(sqrt(IRu_SV(ikl)/StefBo)) ! Brightness 1188 ! !Temperature1188 ! Temperature 1189 1189 uts_SV(ikl) = (HSv_sv(ikl) +HSs_sv(ikl)) & ! u*T* 1190 1190 /(rhT_SV(ikl) *cp) ! … … 1318 1318 ! + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 1319 1319 A_Fact = 1.0000 ! Andreas et al., 2004, p.4 1320 ! !ams.confex.com/ams/pdfpapers/68601.pdf1320 ! ams.confex.com/ams/pdfpapers/68601.pdf 1321 1321 1322 1322 ! Parameterization of z0 dependance on Temperature (C. Amory, 2017) … … 1341 1341 Z0_obs = exp(coefa*TaT_SV(ikl) + coefb) 1342 1342 else if (TaT_SV(ikl)>=ta2 .and. TaT_SV(ikl)<ta3) then 1343 ! !if st > 0, melting induce smooth surface1343 ! if st > 0, melting induce smooth surface 1344 1344 Z0_obs = exp(coefc*TaT_SV(ikl) + coefd) 1345 1345 else -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_bsn.f90
r5105 r5113 50 50 ! + ======= 51 51 52 ! !DO isn = nsno,2,-152 !DO isn = nsno,2,-1 53 53 DO ikl = 1,knonv 54 54 … … 70 70 /max(epsi,ro__SV(ikl,isn)) 71 71 72 ! !Densification of the uppermost snow layer if erosion:72 ! Densification of the uppermost snow layer if erosion: 73 73 if((dzweqo-dzweqn)>0 .and. & 74 74 dzsnSV(ikl,isn)>0 .and. & 75 75 ro__SV(ikl,max(1,isnoSV(ikl)))<roBdSV) then 76 76 77 ! !characteristic time scale for drifting snow compaction set to 24h78 ! !linear densification rate [kg/m3/s] over 24h77 !characteristic time scale for drifting snow compaction set to 24h 78 !linear densification rate [kg/m3/s] over 24h 79 79 densif = (450. - frsno) / (3600*24) 80 80 81 ! !Attenuation of compaction rate from 450 to 500 kg/m381 !Attenuation of compaction rate from 450 to 500 kg/m3 82 82 Fac = 1-((ro__SV(ikl,max(1,isnoSV(ikl))) & 83 83 -roBdSV)/(500.-roBdSV)) … … 103 103 104 104 END DO 105 ! !END DO105 !END DO 106 106 107 107 -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_qsn.f90
r5105 r5113 73 73 ! #vm real EqSn01(knonv) ! Snow Energy, after Phase Change 74 74 ! #vm real EqSn02(knonv) ! Snow Energy, after Phase Change 75 ! !.AND. Last Melting75 ! .AND. Last Melting 76 76 ! #e1 real EqSn_1(knonv) ! Snow Energy, after Phase Change 77 ! !.AND. Mass Redistr.77 ! .AND. Mass Redistr. 78 78 ! Snow/Ice (Mass) Budget 79 79 ! ~~~~~~~~~~~~~~~~~~~~~~ … … 160 160 data dz_Min/2.5e-3/ ! Minim. Snow Layer Thickness 161 161 data SGDmax/0.003/ ! Maxim. Snow Grain Diameter [m] 162 ! !(Rowe et al. 1995, JGR p.16268)162 ! (Rowe et al. 1995, JGR p.16268) 163 163 164 164 ! +--Energy Budget (IN) … … 206 206 noSnow(ikl) = 0 ! Nb of Layers Updater 207 207 ispiSV(ikl) = 0 ! Pore Hole Close OFF Index 208 ! !(assumed to be the Top of209 ! !the surimposed Ice Layer)208 ! (assumed to be the Top of 209 ! the surimposed Ice Layer) 210 210 zn5_SV(ikl) = 0. 211 211 rusnSV0(ikl) = 0. … … 493 493 494 494 if(isnoSV(ikl)<=1 .OR. opt_runoff_ac) rusnew = 0. 495 ! !if(ivgtSV(ikl)>=1) rusnew = 0.495 !if(ivgtSV(ikl)>=1) rusnew = 0. 496 496 497 497 ! #EU rusnew = 0. -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_sno_albedo.f90
r5105 r5113 253 253 254 254 dalbeW =(0.64 - csegal )*0.0625 ! Warren 1982, RevGeo, fig.12b 255 ! !0.0625 = 5% * 1/0.8, p.81256 ! !0.64 = cos(50)255 ! 0.0625 = 5% * 1/0.8, p.81 256 ! 0.64 = cos(50) 257 257 dalbed = dalbeW * min(1,isnoSV(ikl)) 258 258 !------------------------------------------------------------------------- … … 276 276 albSn6(4:6)=albSn2 277 277 278 ! !snow albedo corection if wetsnow278 !snow albedo corection if wetsnow 279 279 ! #GL albSn1 = albSn1*max(0.9,(1.-1.5*eta_SV(ikl,isn))) 280 280 ! #GL albSn2 = albSn2*max(0.9,(1.-1.5*eta_SV(ikl,isn))) … … 410 410 ! +--Integrated Snow/Ice/Soil Albedo: Clouds Correction! Greuell & all., 1994 411 411 ! + --------------------------------------------------! Glob.&t Planet.Change 412 ! !(9):91-114412 ! (9):91-114 413 413 alb1sv(ikl) = alb1sv(ikl) + 0.05 *(cld_SV(ikl)-0.5)*SIcenH & 414 414 + dalbed * (1.-cld_SV(ikl)) … … 460 460 !AO_CK 20/02/2020 461 461 462 ! !No check if coupling update since MAR and NEMO albedo are too different462 ! No check if coupling update since MAR and NEMO albedo are too different 463 463 ! and since MAR albedo is computed on properties that are not in NEMO 464 ! !prescription for each time step with NEMO values464 ! prescription for each time step with NEMO values 465 465 466 466 ! #AO if (LSmask(ikl) .eq. 0 .and. coupling_ao .eq. .TRUE.) then … … 511 511 DO ikl=1,knonv 512 512 sEX_sv(ikl,isn) = 1.0 513 ! !sEX_sv(ikl,isn) = 0.95 ! if MAR is too warm in summer513 !sEX_sv(ikl,isn) = 0.95 ! if MAR is too warm in summer 514 514 END DO 515 515 END DO -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_ts2.f90
r5105 r5113 265 265 IRs__D(ig) = dIRsdT(ig)* TsisSV(ig, isl) * 0.75 !: 266 266 END DO 267 ! !hj267 !hj 268 268 !!----------------------------------------------------------------------- 269 269 !! 3) … … 370 370 zx_qs = r2es * FOEEW(Tsf_SV(ig), zdelta) / ps__SV(ig) 371 371 zx_qs = MIN(0.5, zx_qs) 372 ! !write(*,*)'zcor',retv*zx_qs372 !write(*,*)'zcor',retv*zx_qs 373 373 zcor = 1. / (1. - retv * zx_qs) 374 374 zx_qs = zx_qs * zcor -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_tso.f90
r5105 r5113 372 372 ! + ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 373 373 374 ! !EV!isl= min(isnoSV(1)+1,nsno)374 !EV!isl= min(isnoSV(1)+1,nsno) 375 375 376 376 DO ikl=1,knonv … … 426 426 ! sp = (pst_SV(ikl) + ptopSV) * 10. 427 427 428 ! !sp=ps__SV(ikl)429 ! !Etienne: in the formula herebelow sp should be in hPa, not430 ! !in Pa so I divide by 100.428 !sp=ps__SV(ikl) 429 ! Etienne: in the formula herebelow sp should be in hPa, not 430 ! in Pa so I divide by 100. 431 431 sp=ps__SV(ikl)/100. 432 432 psat_ice = 6.1070 * exp(6150. *(1./273.16 - & … … 476 476 ! ! by Atm.Conten 477 477 ! #??. *max(0,sign(1.,qsatsg(ikl)-QaT_SV(ikl)))) ! NO Limitation 478 ! !of Downw.Flux478 ! of Downw.Flux 479 479 END DO ! 480 480 DO itEuBk=1,2 ! … … 522 522 ist__w= 1-ist__s ! 1 if H2O 523 523 d__eta = eta_SV(ikl,isl)-etaNEW(ikl) ! 524 ! !latent heat flux computation524 ! latent heat flux computation 525 525 HL___D(ikl)=( ist__s *ro_Wat *dz_dSV(0) & ! Soil Contrib. 526 526 *(etaNEW(ikl) -etaBAK(ikl)) / dt__SV & ! … … 623 623 ! #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!!626 ! !It is an error compensation but does not work over tundra625 !XF 18/11/2018 to avoid ST reaching 70°C!! 626 !It is an error compensation but does not work over tundra 627 627 628 628 endif -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/sisvat_zsn.f90
r5105 r5113 140 140 DO ikl=1,knonv 141 141 DO isn=1,isnoSV(ikl)-3 ! no agregation of 3 first snowlayers 142 ! !XF 04/07/2019142 ! XF 04/07/2019 143 143 144 144 isno_n = isnoSV(ikl)-isn+1 ! Snow Normal.Profile … … 526 526 DO ikl=1,knonv 527 527 DO isn=1,isnoSV(ikl)-3 ! no agregation of 3 first snowlayers 528 ! !XF 04/07/2019528 ! XF 04/07/2019 529 529 530 530 isno_n = isnoSV(ikl)-isn+1 ! Snow Normal.Profile -
LMDZ6/branches/Amaury_dev/libf/phylmd/inlandsis/surf_inlandsis_mod.F90
r5110 r5113 783 783 min_period = 1800. ! en secondes 784 784 dalph_soil = 2. ! rapport entre les epaisseurs de 2 couches succ. 785 ! !$OMP MASTER785 !$OMP MASTER 786 786 ! IF (is_mpi_root) THEN 787 787 ! OPEN(99,file='soil.def',status='old',form='formatted',iostat=ierr) … … 795 795 ! END IF 796 796 ! ENDIF 797 ! !$OMP END MASTER797 !$OMP END MASTER 798 798 ! CALL bcast(min_period) 799 799 ! CALL bcast(dalph_soil) -
LMDZ6/branches/Amaury_dev/libf/phylmd/iophy.F90
r5112 r5113 4 4 MODULE iophy 5 5 6 ! abd REAL, private,allocatable,DIMENSION(:),save :: io_lat7 ! abd REAL, private,allocatable,DIMENSION(:),save :: io_lon6 ! abd REAL,PRIVATE,allocatable,DIMENSION(:),save :: io_lat 7 ! abd REAL,PRIVATE,allocatable,DIMENSION(:),save :: io_lon 8 8 REAL,ALLOCATABLE,DIMENSION(:),SAVE :: io_lat 9 9 REAL,ALLOCATABLE,DIMENSION(:),SAVE :: io_lon -
LMDZ6/branches/Amaury_dev/libf/phylmd/iotd_ecrit.F90
r5103 r5113 24 24 USE netcdf, ONLY: nf90_put_var,nf90_inq_varid,nf90_enddef,nf90_redef,nf90_sync,nf90_noerr,& 25 25 nf90_float,nf90_def_var 26 implicit none26 IMPLICIT NONE 27 27 28 28 ! Commons -
LMDZ6/branches/Amaury_dev/libf/phylmd/isccp_cloud_types.F90
r5105 r5113 38 38 39 39 INTEGER seed(npoints) ! seed value for random number generator 40 ! !( see Numerical Recipes Chapter 7)41 ! !It is recommended that the seed is set42 ! !to a different value for each model43 ! !gridbox it is called on, as it is44 ! !possible that the choice of the samec45 ! !seed value every time may introduce some46 ! !statistical bias in the results, particularly47 ! !for low values of NCOL.40 ! ( see Numerical Recipes Chapter 7) 41 ! It is recommended that the seed is set 42 ! to a different value for each model 43 ! gridbox it is called on, as it is 44 ! possible that the choice of the samec 45 ! seed value every time may introduce some 46 ! statistical bias in the results, particularly 47 ! for low values of NCOL. 48 48 49 49 REAL pfull(npoints, nlev) ! pressure of full model levels (Pascals) 50 ! !pfull(npoints,1) is top level of model51 ! !pfull(npoints,nlev) is bottom level of model50 ! pfull(npoints,1) is top level of model 51 ! pfull(npoints,nlev) is bottom level of model 52 52 53 53 REAL phalf(npoints, nlev+1) ! pressure of half model levels (Pascals) 54 ! !phalf(npoints,1) is top of model55 ! !phalf(npoints,nlev+1) is the surface pressure54 ! phalf(npoints,1) is top of model 55 ! phalf(npoints,nlev+1) is the surface pressure 56 56 57 57 REAL qv(npoints, nlev) ! water vapor specific humidity (kg vapor/ kg air) 58 ! !on full model levels58 ! on full model levels 59 59 60 60 REAL cc(npoints, nlev) ! input cloud cover in each model level (fraction) 61 ! !NOTE: This is the HORIZONTAL area of each62 ! !grid box covered by clouds61 ! NOTE: This is the HORIZONTAL area of each 62 ! grid box covered by clouds 63 63 64 64 REAL conv(npoints, nlev) ! input convective cloud cover in each model level (fraction) 65 ! !NOTE: This is the HORIZONTAL area of each66 ! !grid box covered by convective clouds65 ! NOTE: This is the HORIZONTAL area of each 66 ! grid box covered by convective clouds 67 67 68 68 REAL dtau_s(npoints, nlev) ! mean 0.67 micron optical depth of stratiform 69 ! !clouds in each model level70 ! !NOTE: this the cloud optical depth of only the71 ! !cloudy part of the grid box, it is not weighted72 ! !with the 0 cloud optical depth of the clear73 ! !part of the grid box69 ! clouds in each model level 70 ! NOTE: this the cloud optical depth of only the 71 ! cloudy part of the grid box, it is not weighted 72 ! with the 0 cloud optical depth of the clear 73 ! part of the grid box 74 74 75 75 REAL dtau_c(npoints, nlev) ! mean 0.67 micron optical depth of convective 76 ! !clouds in each77 ! !model level. Same note applies as in dtau_s.76 ! clouds in each 77 ! model level. Same note applies as in dtau_s. 78 78 79 79 INTEGER overlap ! overlap type … … 85 85 86 86 INTEGER top_height ! 1 = adjust top height using both a computed 87 ! !infrared brightness temperature and the visible88 ! !optical depth to adjust cloud top pressure. Note89 ! !that this calculation is most appropriate to compare90 ! !to ISCCP data during sunlit hours.91 ! !2 = do not adjust top height, that is cloud top92 ! !pressure is the actual cloud top pressure93 ! !in the model94 ! !3 = adjust top height using only the computed95 ! !infrared brightness temperature. Note that this96 ! !calculation is most appropriate to compare to ISCCP97 ! !IR only algortihm (i.e. you can compare to nighttime98 ! !ISCCP data with this option)87 ! infrared brightness temperature and the visible 88 ! optical depth to adjust cloud top pressure. Note 89 ! that this calculation is most appropriate to compare 90 ! to ISCCP data during sunlit hours. 91 ! 2 = do not adjust top height, that is cloud top 92 ! pressure is the actual cloud top pressure 93 ! in the model 94 ! 3 = adjust top height using only the computed 95 ! infrared brightness temperature. Note that this 96 ! calculation is most appropriate to compare to ISCCP 97 ! IR only algortihm (i.e. you can compare to nighttime 98 ! ISCCP data with this option) 99 99 100 100 REAL tautab(0:255) ! ISCCP table for converting count value to 101 ! !optical thickness101 ! optical thickness 102 102 103 103 INTEGER invtau(-20:45000) ! ISCCP table for converting optical thickness 104 ! !to count value104 ! to count value 105 105 106 106 ! The following input variables are used only if top_height = 1 or … … 111 111 REAL at(npoints, nlev) ! temperature in each model level (K) 112 112 REAL dem_s(npoints, nlev) ! 10.5 micron longwave emissivity of stratiform 113 ! !clouds in each114 ! !model level. Same note applies as in dtau_s.113 ! clouds in each 114 ! model level. Same note applies as in dtau_s. 115 115 REAL dem_c(npoints, nlev) ! 10.5 micron longwave emissivity of convective 116 ! !clouds in each117 ! !model level. Same note applies as in dtau_s.116 ! clouds in each 117 ! model level. Same note applies as in dtau_s. 118 118 ! IM reg.dyn BEG 119 119 REAL t1, t2 … … 133 133 134 134 REAL fq_isccp(npoints, 7, 7) ! the fraction of the model grid box covered by 135 ! !each of the 49 ISCCP D level cloud types135 ! each of the 49 ISCCP D level cloud types 136 136 137 137 REAL totalcldarea(npoints) ! the fraction of model grid box columns 138 ! !with cloud somewhere in them. This should139 ! !equal the sum over all entries of fq_isccp140 141 142 ! !The following three means are averages over the cloudy areas only. If138 ! with cloud somewhere in them. This should 139 ! equal the sum over all entries of fq_isccp 140 141 142 ! The following three means are averages over the cloudy areas only. If 143 143 ! no 144 ! !clouds are in grid box all three quantities should equal zero.144 ! clouds are in grid box all three quantities should equal zero. 145 145 146 146 REAL meanptop(npoints) ! mean cloud top pressure (mb) - linear averaging 147 ! !in cloud top pressure.147 ! in cloud top pressure. 148 148 149 149 REAL meantaucld(npoints) ! mean optical thickness 150 ! !linear averaging in albedo performed.150 ! linear averaging in albedo performed. 151 151 152 152 REAL boxtau(npoints, ncol) ! optical thickness in each column … … 162 162 163 163 REAL frac_out(npoints, ncol, nlev) ! boxes gridbox divided up into 164 ! !Equivalent of BOX in original version, but165 ! !indexed by column then row, rather than166 ! !by row then column164 ! Equivalent of BOX in original version, but 165 ! indexed by column then row, rather than 166 ! by row then column 167 167 168 168 REAL tca(npoints, 0:nlev) ! total cloud cover in each model level (fraction) 169 ! !with extra layer of zeroes on top170 ! !in this version this just contains the values input171 ! !from cc but with an extra level169 ! with extra layer of zeroes on top 170 ! in this version this just contains the values input 171 ! from cc but with an extra level 172 172 REAL cca(npoints, nlev) ! convective cloud cover in each model level (fraction) 173 ! !from conv173 ! from conv 174 174 175 175 REAL threshold(npoints, ncol) ! pointer to position in gridbox … … 180 180 181 181 REAL threshold_min(npoints, ncol) ! minimum value to define range in with new threshold 182 ! !is chosen182 ! is chosen 183 183 184 184 REAL dem(npoints, ncol), bb(npoints) ! working variables for 10.5 micron longwave 185 ! !emissivity in part of186 ! !gridbox under consideration185 ! emissivity in part of 186 ! gridbox under consideration 187 187 188 188 REAL ran(npoints) ! vector of random numbers … … 203 203 INTEGER levmatch(npoints, ncol) 204 204 205 ! !variables needed for water vapor continuum absorption205 !variables needed for water vapor continuum absorption 206 206 REAL fluxtop_clrsky(npoints), trans_layers_above_clrsky(npoints) 207 207 REAL taumin(npoints) … … 226 226 REAL boxarea 227 227 INTEGER debug ! set to non-zero value to print out inputs 228 ! !with step debug228 ! with step debug 229 229 INTEGER debugcol ! set to non-zero value to print out column 230 ! !decomposition with step debugcol230 ! decomposition with step debugcol 231 231 232 232 INTEGER index1(npoints), num1, jj … … 1410 1410 ! end if 1411 1411 1412 ! !determine cloud top pressure category1412 !determine cloud top pressure category 1413 1413 ! if ( ptop(j,ibox) .gt. 0. 1414 1414 ! & .and.ptop(j,ibox) .lt. 180.) then … … 1442 1442 ! iw(j) = int((w(j)-wmin)/pas_w) +1 1443 1443 ! pctj(itau(j),ipres(j),iw(j))=.FALSE. 1444 ! !update frequencies W5001444 !update frequencies W500 1445 1445 ! if (pct_ocean(j)) then 1446 1446 ! if (ipres(j) .gt. 0.and.itau(j) .gt. 0) then … … 1537 1537 ! do j=1,npoints,debugcol 1538 1538 1539 ! !produce character output1539 !produce character output 1540 1540 ! do ilev=1,nlev 1541 1541 ! do ibox=1,ncol -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_atke_exchange_coeff.F90
r5111 r5113 1 1 module lmdz_atke_exchange_coeff 2 2 3 implicit none 3 IMPLICIT NONE 4 4 5 5 contains … … 59 59 !!------------------------------------------------------------------------------------------------------------- 60 60 61 implicit none 61 IMPLICIT NONE 62 62 63 63 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_atke_turbulence_ini.F90
r5112 r5113 1 1 MODULE lmdz_atke_turbulence_ini 2 2 3 implicit none3 IMPLICIT NONE 4 4 5 5 ! declaration of constants and parameters -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_blowing_snow_ini.F90
r5112 r5113 1 1 module lmdz_blowing_snow_ini 2 2 3 implicit none 3 IMPLICIT NONE 4 4 5 5 real, save, protected :: RCPD, RV, RLSTT, RLVTT, RLMLT, RVTMP2, RTT,RD,RG, RPI -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_blowing_snow_sublim_sedim.F90
r5105 r5113 15 15 USE lmdz_lscp_tools, ONLY: calc_qsat_ecmwf 16 16 17 implicit none 17 IMPLICIT NONE 18 18 19 19 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_call_atke.F90
r5103 r5113 3 3 USE lmdz_atke_exchange_coeff, ONLY: atke_compute_km_kh 4 4 5 implicit none 5 IMPLICIT NONE 6 6 7 7 … … 18 18 USE phys_local_var_mod, ONLY: tke_shear, tke_buoy, tke_trans 19 19 20 implicit none 20 IMPLICIT NONE 21 21 22 22 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_call_blowing_snow.F90
r5103 r5113 7 7 8 8 use lmdz_blowing_snow_sublim_sedim, ONLY: blowing_snow_sublim_sedim 9 implicit none 9 IMPLICIT NONE 10 10 11 11 !INPUT -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_cloud_optics_prop.F90
r5105 r5113 509 509 ! --calculation of cloud properties with cloud overlap 510 510 ! choix de l'hypothese de recouvrement nuageuse via radopt.h (IM, 19.07.2016) 511 ! !novlp=1: max-random512 ! !novlp=2: maximum513 ! !novlp=3: random511 !novlp=1: max-random 512 !novlp=2: maximum 513 !novlp=3: random 514 514 515 515 … … 659 659 ENDDO ! loop over i 660 660 661 ! !Convective and Stratiform Cloud Droplet Effective Radius (REFFCLWC661 ! Convective and Stratiform Cloud Droplet Effective Radius (REFFCLWC 662 662 ! REFFCLWS) 663 663 DO i = 1, klon -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_cloudth_ini.F90
r5112 r5113 13 13 14 14 use lmdz_ioipsl_getin_p, ONLY: getin_p 15 implicit none 15 IMPLICIT NONE 16 16 integer, intent(in) :: iflag_cloudth_vert_in,iflag_ratqs_in 17 17 -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_lscp_tools.F90
r5112 r5113 499 499 END IF ! Enough TKE 500 500 501 END IF ! !MPC temperature501 END IF ! MPC temperature 502 502 503 503 END IF ! cldfra -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_ratqs_main.F90
r5105 r5113 18 18 USE lmdz_ratqs_multi, ONLY: ratqs_inter, ratqs_oro, ratqs_hetero, ratqs_tke 19 19 20 implicit none 20 IMPLICIT NONE 21 21 22 22 !======================================================================== -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_ratqs_multi.F90
r5103 r5113 34 34 USE lmdz_thermcell_dq, ONLY: thermcell_dq 35 35 36 implicit none 36 IMPLICIT NONE 37 37 38 38 !======================================================================== -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_dq.F90
r5112 r5113 7 7 USE lmdz_abort_physic, ONLY: abort_physic 8 8 9 implicit none9 IMPLICIT NONE 10 10 11 11 !======================================================================= … … 161 161 USE lmdz_print_control, ONLY: prt_level 162 162 USE lmdz_abort_physic, ONLY: abort_physic 163 implicit none163 IMPLICIT NONE 164 164 165 165 !======================================================================= -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_dtke.F90
r5112 r5113 5 5 rg,pplev,tke) 6 6 USE lmdz_print_control, ONLY: prt_level 7 implicit none7 IMPLICIT NONE 8 8 9 9 !======================================================================= -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_dv2.F90
r5112 r5113 6 6 ,u,v,du,dv,ua,va,lev_out) 7 7 USE lmdz_print_control, ONLY: prt_level,lunout 8 implicit none8 IMPLICIT NONE 9 9 10 10 !======================================================================= -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_main.F90
r5111 r5113 868 868 therm_tke_max) ! out 869 869 USE lmdz_thermcell_ini, ONLY: prt_level 870 implicit none870 IMPLICIT NONE 871 871 872 872 !======================================================================= -
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_qsat.F90
r5103 r5113 3 3 4 4 SUBROUTINE thermcell_qsat(klon,active,pplev,ztemp,zqta,zqsat) 5 implicit none 5 IMPLICIT NONE 6 6 7 7 INCLUDE "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/o3_chem_m.F90
r5110 r5113 4 4 IMPLICIT none 5 5 6 privateo3_prod6 PRIVATE o3_prod 7 7 8 8 contains … … 17 17 ! Index "(i, :)" is for longitude "rlon(i)", latitude "rlat(i)". 18 18 19 use assert_m, only: assert19 use lmdz_assert, only: assert 20 20 use dimphy, only: klon 21 21 use regr_pr_comb_coefoz_m, only: c_Mob, a4_mass, a2, r_het_interm … … 116 116 117 117 use regr_pr_comb_coefoz_m, only: a6_mass 118 use assert_m, only: assert118 use lmdz_assert, only: assert 119 119 use dimphy, only: klon 120 120 use lmdz_grid_phy, only: nbp_lev -
LMDZ6/branches/Amaury_dev/libf/phylmd/output_physiqex_mod.F90
r5112 r5113 19 19 20 20 21 implicit none 21 IMPLICIT NONE 22 22 logical, intent(in) :: debut 23 23 real, intent(in) :: pdtphys,zjulian -
LMDZ6/branches/Amaury_dev/libf/phylmd/ozonecm_m.F90
r5103 r5113 22 22 23 23 USE dimphy, only: klon, klev 24 use assert_m, only: assert24 use lmdz_assert, only: assert 25 25 26 26 REAL, INTENT (IN) :: rlat(:) ! (klon) -
LMDZ6/branches/Amaury_dev/libf/phylmd/phyaqua_mod.F90
r5112 r5113 601 601 ierr = nf90_put_att(nid, nf90_global, 'title', & 602 602 'Fichier conditions aux limites') 603 ! !ierr = nf90_def_dim (nid, "points_physiques", klon, ndim)603 ! ierr = nf90_def_dim (nid, "points_physiques", klon, ndim) 604 604 ierr = nf90_def_dim(nid, 'points_physiques', klon_glo, ndim) 605 605 ierr = nf90_def_dim(nid, 'time', nf90_unlimited, ntim) -
LMDZ6/branches/Amaury_dev/libf/phylmd/physiq_mod.F90
r5112 r5113 23 23 USE add_phys_tend_mod, ONLY: add_pbl_tend, add_phys_tend, diag_phys_tend, prt_enerbil, & 24 24 fl_ebil, fl_cor_ebil 25 USE assert_m, ONLY: assert25 USE lmdz_assert, ONLY: assert 26 26 USE change_srf_frac_mod 27 27 USE conf_phys_m, ONLY: conf_phys … … 600 600 601 601 ! REAL,allocatable,save :: run_off_lic_0(:) 602 ! !$OMP THREADPRIVATE(run_off_lic_0)602 !$OMP THREADPRIVATE(run_off_lic_0) 603 603 !ym SAVE run_off_lic_0 604 604 !KE43 -
LMDZ6/branches/Amaury_dev/libf/phylmd/press_coefoz_m.F90
r5110 r5113 2 2 module press_coefoz_m 3 3 4 implicit none4 IMPLICIT NONE 5 5 6 6 real, allocatable, save:: plev(:) -
LMDZ6/branches/Amaury_dev/libf/phylmd/radlwsw_m.F90
r5112 r5113 48 48 ! Modules necessaires 49 49 USE DIMPHY 50 USE assert_m, ONLY: assert50 USE lmdz_assert, ONLY: assert 51 51 USE infotrac_phy, ONLY: type_trac 52 52 USE lmdz_write_field_phy -
LMDZ6/branches/Amaury_dev/libf/phylmd/readaerosolstrato.F90
r5112 r5113 18 18 USE lmdz_xios 19 19 USE lmdz_abort_physic, ONLY: abort_physic 20 implicit none20 IMPLICIT NONE 21 21 22 22 include "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_horiz_time_climoz_m.F90
r5112 r5113 57 57 ! Attribute "missing_value" or "_FillValue" must be present in input file. 58 58 !------------------------------------------------------------------------------- 59 USE assert_m, ONLY: assert59 USE lmdz_assert, ONLY: assert 60 60 USE cal_tools_m, ONLY: year_len, mid_month 61 61 !! USE control_mod, ONLY: anneeref -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_lat_time_coefoz_m.F90
r5112 r5113 4 4 ! Author: Lionel GUEZ 5 5 6 implicit none7 8 private6 IMPLICIT NONE 7 8 PRIVATE 9 9 public regr_lat_time_coefoz 10 10 … … 241 241 242 242 use lmdz_grid_phy, ONLY: nbp_lat 243 use assert_eq_m, only: assert_eq243 use lmdz_assert_eq, only: assert_eq 244 244 245 245 use netcdf95, only: nf95_create, nf95_def_dim, nf95_def_var, & -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_pr_comb_coefoz_m.F90
r5110 r5113 2 2 module regr_pr_comb_coefoz_m 3 3 4 implicit none4 IMPLICIT NONE 5 5 6 6 ! The five module variables declared here are on the partial … … 73 73 use netcdf95, only: nf95_open, nf95_close 74 74 use netcdf, only: nf90_nowrite 75 use assert_m, only: assert75 use lmdz_assert, only: assert 76 76 use dimphy, only: klon 77 77 use lmdz_phys_mpi_data, only: is_mpi_root -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_pr_int_m.F90
r5110 r5113 4 4 ! Author: Lionel GUEZ 5 5 6 implicit none6 IMPLICIT NONE 7 7 8 8 contains … … 26 26 use dimphy, only: klon 27 27 use netcdf95, only: nf95_inq_varid, nf95_get_var 28 use assert_m, only: assert28 use lmdz_assert, only: assert 29 29 use regr_lint_m, only: regr_lint 30 30 use lmdz_phys_mpi_data, only: is_mpi_root -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_pr_o3_m.F90
r5110 r5113 2 2 module regr_pr_o3_m 3 3 4 implicit none4 IMPLICIT NONE 5 5 6 6 contains … … 27 27 use netcdf95, only: nf95_open, nf95_close, nf95_inq_varid, nf95_get_var 28 28 use netcdf, only: nf90_nowrite 29 use assert_m, only: assert29 use lmdz_assert, only: assert 30 30 use regr_conserv_m, only: regr_conserv 31 31 use press_coefoz_m, only: press_in_edg -
LMDZ6/branches/Amaury_dev/libf/phylmd/regr_pr_time_av_m.F90
r5112 r5113 116 116 nf95_inq_dimid, nf95_inquire_dimension, nf95_get_var 117 117 USE netcdf, ONLY: nf90_inq_varid, nf90_noerr 118 USE assert_m, ONLY: assert119 USE assert_eq_m, ONLY: assert_eq118 USE lmdz_assert, ONLY: assert 119 USE lmdz_assert_eq, ONLY: assert_eq 120 120 !! USE comvert_mod, ONLY: scaleheight 121 121 USE interpolation, ONLY: locate -
LMDZ6/branches/Amaury_dev/libf/phylmd/simu_airs.F90
r5112 r5113 4 4 USE lmdz_abort_physic, ONLY: abort_physic 5 5 6 implicit none6 IMPLICIT NONE 7 7 8 8 REAL, PARAMETER :: tau_thresh = 0.05 ! seuil nuages detectables -
LMDZ6/branches/Amaury_dev/libf/phylmd/stratosphere_mask.F90
r5112 r5113 111 111 ! reference: Reichler, T., M. Dameris, and R. Sausen (GRL, 10.1029/2003GL018240, 2003) 112 112 113 implicit none 113 IMPLICIT NONE 114 114 115 115 include "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/tilft43.F90
r5105 r5113 13 13 14 14 ! -- sb: 15 ! !CPD=1005.716 ! !CPV=1870.017 ! !CL=4190.018 ! !RV=461.519 ! !RD=287.0420 ! !LV0=2.501E621 ! !G=9.822 ! !ROWL=1000.015 ! CPD=1005.7 16 ! CPV=1870.0 17 ! CL=4190.0 18 ! RV=461.5 19 ! RD=287.04 20 ! LV0=2.501E6 21 ! G=9.8 22 ! ROWL=1000.0 23 23 ! ajouts: 24 24 include "YOMCST.h" -
LMDZ6/branches/Amaury_dev/libf/phylmd/tropopause_m.F90
r5112 r5113 12 12 13 13 !------------------------------------------------------------------------------- 14 USE assert_m, ONLY: assert15 USE assert_eq_m, ONLY: assert_eq14 USE lmdz_assert, ONLY: assert 15 USE lmdz_assert_eq, ONLY: assert_eq 16 16 USE dimphy, ONLY: klon, klev 17 17 USE lmdz_geometry, ONLY: latitude_deg, longitude_deg -
LMDZ6/branches/Amaury_dev/libf/phylmd/undefSTD.F90
r5105 r5113 22 22 23 23 ! nout=1 !var. journaliere "day" moyenne sur tous les pas de temps 24 ! !de la physique24 ! de la physique 25 25 ! nout=2 !var. mensuelle "mth" moyennee sur tous les pas de temps 26 ! !de la physique26 ! de la physique 27 27 ! nout=3 !var. mensuelle "NMC" moyennee toutes les ecrit_hf 28 28 -
LMDZ6/branches/Amaury_dev/libf/phylmd/vdif_kcay.F90
r5105 r5113 598 598 ! PRINT*,'Q2q20 ',(q2(1,ilev),ilev=1,10) 599 599 ! PRINT*,'Q2km0 ',(km(1,ilev),ilev=1,10) 600 ! !C'est quoi ca qu'etait dans l'original???600 ! C'est quoi ca qu'etait dans l'original??? 601 601 ! do igrid=1,ngrid 602 602 ! q2(igrid,1)=10. -
LMDZ6/branches/Amaury_dev/libf/phylmd/yamada_ini_mod.F90
r5112 r5113 4 4 ! peut on passer une fonction du module au code. 5 5 6 implicit none 6 IMPLICIT NONE 7 7 8 8 LOGICAL :: new_yamada4
Note: See TracChangeset
for help on using the changeset viewer.