Ignore:
Timestamp:
Apr 2, 2025, 4:04:40 PM (3 months ago)
Author:
aborella
Message:

Multiple changes:

  • tracers which were ratios are now absolute quantities. This is needed because when the ratio

is not defined, some aberrations may occur

  • added a new tracer for total specific humidity in contrails
  • rework of the mixing process for cirrus clouds (and contrails)
  • changed the numerical integration of ice crystals' sublimation
  • subroutines do not take real inputs anymore (at least klon tables)
  • added more radiative diagnostics for contrails
File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified LMDZ6/branches/contrails/libf/phylmd/phyetat0_mod.f90

    r5536 r5601  
    2323       falb_dir, falb_dif, prw_ancien, prlw_ancien, prsw_ancien, prbsw_ancien, &
    2424       ftsol, pbl_tke, pctsrf, q_ancien, ql_ancien, qs_ancien, qbs_ancien, &
    25        cf_ancien, rvc_ancien, rcont_ancien, radpas, radsol, rain_fall, ratqs, &
     25       cf_ancien, qvc_ancien, cfa_ancien, qta_ancien, radpas, radsol, rain_fall, ratqs, &
    2626       rnebcon, rugoro, sig1, snow_fall, bs_fall, solaire_etat0, sollw, sollwdown, &
    2727       solsw, solswfdiff, t_ancien, u_ancien, v_ancien, w01, wake_cstar, wake_deltaq, &
     
    414414  IF ( ok_ice_supersat ) THEN
    415415    ancien_ok=ancien_ok.AND.phyetat0_get(cf_ancien,"CFANCIEN","CFANCIEN",0.)
    416     ancien_ok=ancien_ok.AND.phyetat0_get(rvc_ancien,"RVCANCIEN","RVCANCIEN",0.)
     416    ancien_ok=ancien_ok.AND.phyetat0_get(qvc_ancien,"QVCANCIEN","QVCANCIEN",0.)
    417417  ELSE
    418418    cf_ancien(:,:)=0.
    419     rvc_ancien(:,:)=0.
     419    qvc_ancien(:,:)=0.
    420420  ENDIF
    421421
    422422  ! cas specifique des variables de l'aviation
    423423  IF ( ok_plane_contrail ) THEN
    424     ancien_ok=ancien_ok.AND.phyetat0_get(rcont_ancien,"RCONTANCIEN","RCONTANCIEN",0.)
    425   ELSE
    426     rcont_ancien(:,:)=0.
     424    ancien_ok=ancien_ok.AND.phyetat0_get(cfa_ancien,"CFAANCIEN","CFAANCIEN",0.)
     425    ancien_ok=ancien_ok.AND.phyetat0_get(cfa_ancien,"QTAANCIEN","QTAANCIEN",0.)
     426  ELSE
     427    cfa_ancien(:,:)=0.
     428    qta_ancien(:,:)=0.
    427429  ENDIF
    428430
     
    449451  IF ( ok_ice_supersat ) THEN
    450452    IF ( (maxval(cf_ancien).EQ.minval(cf_ancien))     .OR. &
    451          (maxval(rvc_ancien).EQ.minval(rvc_ancien)) ) THEN
     453         (maxval(qvc_ancien).EQ.minval(qvc_ancien)) ) THEN
    452454       ancien_ok=.false.
    453455     ENDIF
     
    455457
    456458  IF ( ok_plane_contrail ) THEN
    457     IF ( maxval(rcont_ancien).EQ.minval(rcont_ancien) ) THEN
     459    IF ( ( maxval(cfa_ancien).EQ.minval(cfa_ancien) ) .OR. &
     460         ( maxval(qta_ancien).EQ.minval(qta_ancien) ) ) THEN
    458461       ancien_ok=.false.
    459462     ENDIF
Note: See TracChangeset for help on using the changeset viewer.