Changeset 4065


Ignore:
Timestamp:
Jan 26, 2022, 4:00:14 PM (2 years ago)
Author:
Laurent Fairhead
Message:

Corrections to r4059/r4062 so that phylmdiso compiles
LF

Location:
LMDZ6/trunk/libf/phylmdiso
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmdiso/phys_local_var_mod.F90

    r4040 r4065  
    1616      REAL, SAVE, ALLOCATABLE :: u_seri(:,:), v_seri(:,:)
    1717      !$OMP THREADPRIVATE(u_seri, v_seri)
    18       REAL, SAVE, ALLOCATABLE :: l_mixmin(:,:,:),l_mix(:,:,:),tke_dissip(:,:,:), wprime(:,:,:)
     18      REAL, SAVE, ALLOCATABLE :: rneb_seri(:,:)
     19      !$OMP THREADPRIVATE(rneb_seri)
     20      REAL, SAVE, ALLOCATABLE :: d_rneb_dyn(:,:)
     21      !$OMP THREADPRIVATE(d_rneb_dyn)
     22      REAL, SAVE, ALLOCATABLE :: l_mixmin(:,:,:),l_mix(:,:,:),tke_dissip(:,:,:),wprime(:,:,:)
    1923      !$OMP THREADPRIVATE(l_mixmin, l_mix, tke_dissip,wprime)
    2024      REAL, SAVE, ALLOCATABLE :: tr_seri(:,:,:)
     
    602606!$OMP THREADPRIVATE(zn2mout)
    603607
     608      REAL, SAVE, ALLOCATABLE :: qclr(:,:)
     609      !$OMP THREADPRIVATE(qclr)
     610      REAL, SAVE, ALLOCATABLE :: qcld(:,:)
     611      !$OMP THREADPRIVATE(qcld)
     612      REAL, SAVE, ALLOCATABLE :: qss(:,:)
     613      !$OMP THREADPRIVATE(qss)
     614      REAL, SAVE, ALLOCATABLE :: qvc(:,:)
     615      !$OMP THREADPRIVATE(qvc)
     616      REAL, SAVE, ALLOCATABLE :: rnebclr(:,:)
     617      !$OMP THREADPRIVATE(rnebclr)
     618      REAL, SAVE, ALLOCATABLE :: rnebss(:,:)
     619      !$OMP THREADPRIVATE(rnebss)
     620      REAL, SAVE, ALLOCATABLE :: gamma_ss(:,:)
     621      !$OMP THREADPRIVATE(gamma_ss)
     622      REAL, SAVE, ALLOCATABLE :: N1_ss(:,:)
     623      !$OMP THREADPRIVATE(N1_ss)
     624      REAL, SAVE, ALLOCATABLE :: N2_ss(:,:)
     625      !$OMP THREADPRIVATE(N2_ss)
     626      REAL, SAVE, ALLOCATABLE :: drneb_sub(:,:)
     627      !$OMP THREADPRIVATE(drneb_sub)
     628      REAL, SAVE, ALLOCATABLE :: drneb_con(:,:)
     629      !$OMP THREADPRIVATE(drneb_con)
     630      REAL, SAVE, ALLOCATABLE :: drneb_tur(:,:)
     631      !$OMP THREADPRIVATE(drneb_tur)
     632      REAL, SAVE, ALLOCATABLE :: drneb_avi(:,:)
     633      !$OMP THREADPRIVATE(drneb_avi)
     634      REAL, SAVE, ALLOCATABLE :: zqsatl(:,:)
     635      !$OMP THREADPRIVATE(zqsatl)
     636      REAL, SAVE, ALLOCATABLE :: zqsats(:,:)
     637      !$OMP THREADPRIVATE(zqsats)
     638      REAL, SAVE, ALLOCATABLE :: Tcontr(:,:)
     639      !$OMP THREADPRIVATE(Tcontr)
     640      REAL, SAVE, ALLOCATABLE :: qcontr(:,:)
     641      !$OMP THREADPRIVATE(qcontr)
     642      REAL, SAVE, ALLOCATABLE :: qcontr2(:,:)
     643      !$OMP THREADPRIVATE(qcontr2)
     644      REAL, SAVE, ALLOCATABLE :: fcontrN(:,:)
     645      !$OMP THREADPRIVATE(fcontrN)
     646      REAL, SAVE, ALLOCATABLE :: fcontrP(:,:)
     647      !$OMP THREADPRIVATE(fcontrP)
     648
    604649#ifdef CPP_StratAer
    605650!
     
    10371082
    10381083      ALLOCATE(zn2mout(klon,6))
     1084
     1085! Supersaturation
     1086      ALLOCATE(rneb_seri(klon,klev))
     1087      ALLOCATE(d_rneb_dyn(klon,klev))
     1088      ALLOCATE(qclr(klon,klev), qcld(klon,klev), qss(klon,klev), qvc(klon,klev))
     1089      ALLOCATE(rnebclr(klon,klev), rnebss(klon,klev), gamma_ss(klon,klev))
     1090      ALLOCATE(N1_ss(klon,klev), N2_ss(klon,klev))
     1091      ALLOCATE(drneb_sub(klon,klev), drneb_con(klon,klev), drneb_tur(klon,klev), drneb_avi(klon,klev))
     1092      ALLOCATE(zqsatl(klon,klev), zqsats(klon,klev))
     1093      ALLOCATE(Tcontr(klon,klev), qcontr(klon,klev), qcontr2(klon,klev), fcontrN(klon,klev), fcontrP(klon,klev))
    10391094
    10401095#ifdef CPP_StratAer
     
    13901445      DEALLOCATE(zn2mout)
    13911446
     1447! Supersaturation
     1448      DEALLOCATE(rneb_seri)
     1449      DEALLOCATE(d_rneb_dyn)
     1450      DEALLOCATE(qclr, qcld, qss, qvc)
     1451      DEALLOCATE(rnebclr, rnebss, gamma_ss)
     1452      DEALLOCATE(N1_ss, N2_ss)
     1453      DEALLOCATE(drneb_sub, drneb_con, drneb_tur, drneb_avi)
     1454      DEALLOCATE(zqsatl, zqsats)
     1455      DEALLOCATE(Tcontr, qcontr, qcontr2, fcontrN, fcontrP)
     1456
    13921457#ifdef CPP_StratAer
    13931458! variables for strat. aerosol CK
  • LMDZ6/trunk/libf/phylmdiso/phys_output_ctrlout_mod.F90

    r3940 r4065  
    19401940    'albslw3', 'Surface albedo LW3', '-', (/ ('', i=1, 10) /))
    19411941
     1942!--aviation & supersaturation
     1943  TYPE(ctrl_out), SAVE :: o_oclr = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1944    'oclr', 'Clear sky total water', 'kg/kg', (/ ('', i=1, 10) /))
     1945  TYPE(ctrl_out), SAVE :: o_ocld = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1946    'ocld', 'Cloudy sky total water', 'kg/kg', (/ ('', i=1, 10) /))
     1947  TYPE(ctrl_out), SAVE :: o_oss = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1948    'oss', 'ISSR total water', 'kg/kg', (/ ('', i=1, 10) /))
     1949  TYPE(ctrl_out), SAVE :: o_ovc = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1950    'ovc', 'In-cloup vapor', 'kg/kg', (/ ('', i=1, 10) /))
     1951  TYPE(ctrl_out), SAVE :: o_rnebclr = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1952    'rnebclr', 'Clear sky fraction', '-', (/ ('', i=1, 10) /))
     1953  TYPE(ctrl_out), SAVE :: o_rnebss = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1954    'rnebss', 'ISSR fraction', '-', (/ ('', i=1, 10) /))
     1955  TYPE(ctrl_out), SAVE :: o_rnebseri = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1956    'rnebseri', 'Cloud fraction', '-', (/ ('', i=1, 10) /))
     1957  TYPE(ctrl_out), SAVE :: o_gammass = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1958    'gammass', 'Gamma supersaturation', '', (/ ('', i=1, 10) /))
     1959  TYPE(ctrl_out), SAVE :: o_N1_ss = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1960    'N1ss', 'N1', '', (/ ('', i=1, 10) /))
     1961  TYPE(ctrl_out), SAVE :: o_N2_ss = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1962    'N2ss', 'N2', '', (/ ('', i=1, 10) /))
     1963  TYPE(ctrl_out), SAVE :: o_drnebsub = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1964    'drnebsub', 'Cloud fraction change because of sublimation', 's-1', (/ ('', i=1, 10) /))
     1965  TYPE(ctrl_out), SAVE :: o_drnebcon = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1966    'drnebcon', 'Cloud fraction change because of condensation', 's-1', (/ ('', i=1, 10) /))
     1967  TYPE(ctrl_out), SAVE :: o_drnebtur = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1968    'drnebtur', 'Cloud fraction change because of turbulence', 's-1', (/ ('', i=1, 10) /))
     1969  TYPE(ctrl_out), SAVE :: o_drnebavi = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1970    'drnebavi', 'Cloud fraction change because of aviation', 's-1', (/ ('', i=1, 10) /))
     1971  TYPE(ctrl_out), SAVE :: o_qsatl = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1972    'qsatl', 'Saturation with respect to liquid water', '', (/ ('', i=1, 10) /))
     1973  TYPE(ctrl_out), SAVE :: o_qsats = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1974    'qsats', 'Saturation with respect to solid water', '', (/ ('', i=1, 10) /))
     1975  TYPE(ctrl_out), SAVE :: o_flight_m = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1976    'flightm', 'Flown meters', 'm/s/mesh', (/ ('', i=1, 10) /))
     1977  TYPE(ctrl_out), SAVE :: o_flight_h2o = ctrl_out((/ 1, 1, 1, 1, 10, 10, 11, 11, 11, 11/), &
     1978    'flighth2o', 'H2O flight emission', 'kg H2O/s/mesh', (/ ('', i=1, 10) /))
     1979  TYPE(ctrl_out), SAVE :: o_Tcontr = ctrl_out((/ 1, 1, 1, 1, 11, 11, 11, 11, 11, 11/),&
     1980    'Tcontr', 'Temperature threshold for contrail formation', 'K', (/ ('',i=1,10) /))
     1981  TYPE(ctrl_out), SAVE :: o_qcontr = ctrl_out((/ 1, 1, 1, 1, 11, 11, 11, 11, 11, 11/),&
     1982    'qcontr', 'Specific humidity threshold for contrail formation','Pa', (/ ('', i=1, 10) /))
     1983  TYPE(ctrl_out), SAVE :: o_qcontr2 = ctrl_out((/ 1, 1, 1, 1, 11, 11, 11, 11, 11, 11/),&
     1984    'qcontr2', 'Specific humidity threshold for contrail formation','kg/kg', (/ ('', i=1, 10) /))
     1985  TYPE(ctrl_out), SAVE :: o_fcontrN = ctrl_out((/ 2, 2, 2, 2, 2, 2, 11, 11, 11, 11/),&
     1986    'fcontrN', 'Fraction with non-persistent contrail in clear-sky', '-', (/ ('', i=1,10)/))
     1987  TYPE(ctrl_out), SAVE :: o_fcontrP = ctrl_out((/ 2, 2, 2, 2, 2, 2, 11, 11, 11, 11/),&
     1988    'fcontrP', 'Fraction with persistent contrail in ISSR', '-', (/ ('', i=1,10)/))
     1989
    19421990!!!!!!!!!!!!! Sorties niveaux standards de pression NMC
    19431991  TYPE(ctrl_out), SAVE :: o_tnondef = ctrl_out((/ 11, 11, 11, 11, 11, 11, 5, 5, 5, 11/), &
  • LMDZ6/trunk/libf/phylmdiso/physiq_mod.F90

    r4061 r4065  
    7373    USE tracinca_mod, ONLY: config_inca
    7474    USE tropopause_m,     ONLY: dyn_tropopause
     75    USE ice_sursat_mod,  ONLY: flight_init, airplane
    7576    USE vampir
    7677    USE VERTICAL_LAYERS_MOD, ONLY: aps,bps, ap, bp
     
    167168       ! [Variables internes non sauvegardees de la physique]
    168169       ! Variables locales pour effectuer les appels en serie
    169        t_seri,q_seri,ql_seri,qs_seri,u_seri,v_seri,tr_seri, &
     170       t_seri,q_seri,ql_seri,qs_seri,u_seri,v_seri,tr_seri,rneb_seri, &
    170171       ! Dynamic tendencies (diagnostics)
    171172       d_t_dyn,d_q_dyn,d_ql_dyn,d_qs_dyn,d_u_dyn,d_v_dyn,d_tr_dyn,d_rneb_dyn, &
     
    514515    INTEGER isol          ! indice de traceurs pour eau glace
    515516    PARAMETER (isol=3)
     517    INTEGER irneb         ! indice de traceurs pour fraction nuageuse LS (optional)
     518    PARAMETER (irneb=4)   
    516519    !
    517520    !
     
    13931396       ENDIF
    13941397
    1395        IF ((iflag_ice_sursat.GT.0).AND.(iflag_ice_thermo.EQ.0)) THEN
    1396           WRITE (lunout, *) ' iflag_ice_sursat=1 requires iflag_ice_thermo=1 as well'
     1398       IF (ok_ice_sursat.AND.(iflag_ice_thermo.EQ.0)) THEN
     1399          WRITE (lunout, *) ' ok_ice_sursat=y requires iflag_ice_thermo=1 as well'
    13971400          abort_message='see above'
    13981401          CALL abort_physic(modname,abort_message,1)
    13991402       ENDIF
    14001403
    1401        IF ((iflag_ice_sursat.GT.0).AND.(nqo.NE.4)) THEN
    1402           WRITE (lunout, *) ' iflag_ice_sursat=1 requires 4 H2O tracers ', &
     1404       IF (ok_ice_sursat.AND.(nqo.NE.4)) THEN
     1405          WRITE (lunout, *) ' ok_ice_sursat=y requires 4 H2O tracers ', &
    14031406               '(H2Ov, H2Ol, H2Oi, rnebi) but nqo=', nqo, '. Might as well stop here.'
    14041407          abort_message='see above'
     
    24032406          ELSE IF (nqo.eq.3) THEN
    24042407             qs_seri(i,k) = qx(i,k,isol)
     2408          ELSE IF (nqo.eq.4) THEN
     2409             qs_seri(i,k) = qx(i,k,isol)
     2410             rneb_seri(i,k) = qx(i,k,irneb)
    24052411          ENDIF
    24062412       ENDDO
     
    46204626    IF (ok_new_lscp) THEN
    46214627
    4622     CALL lscp(phys_tstep,missing_value,paprs,pplay, &
     4628    CALL lscp(phys_tstep,missing_val,paprs,pplay, &
    46234629         t_seri, q_seri,ptconv,ratqs, &
    46244630         d_t_lsc, d_q_lsc, d_ql_lsc, d_qi_lsc, rneb, rneb_seri, &
     
    46284634         prfl, psfl, rhcl,  &
    46294635         zqasc, fraca,ztv,zpspsk,ztla,zthl,iflag_cld_th, &
    4630          iflag_ice_thermo, iflag_ice_sursat)
     4636         iflag_ice_thermo, ok_ice_sursat)
    46314637
    46324638    ELSE
Note: See TracChangeset for help on using the changeset viewer.