Ignore:
Timestamp:
Mar 6, 2018, 9:34:37 AM (7 years ago)
Author:
Laurent Fairhead
Message:

Merging r3239 from trunk:
Moving some xios_field_is_active tests as they could not give the right
results at their previous location (the context was not closed yet).
Changing some variables levels in the histmth.xml file to prevent the unecessary
multiple calls to the radiation scheme

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/IPSLCM6.0.15/libf/phylmd/physiq_mod.F90

    r3201 r3240  
    16521652
    16531653#ifdef CPP_XIOS
    1654        !--setting up swaero_diag to TRUE in XIOS case
    1655        IF (xios_field_is_active("topswad").OR.xios_field_is_active("topswad0").OR. &
    1656            xios_field_is_active("solswad").OR.xios_field_is_active("solswad0").OR. &
    1657            xios_field_is_active("topswai").OR.xios_field_is_active("solswai").OR.  &
    1658              (iflag_rrtm==1.AND.(xios_field_is_active("toplwad").OR.xios_field_is_active("toplwad0").OR. &
    1659                                  xios_field_is_active("sollwad").OR.xios_field_is_active("sollwad0"))))  &
    1660            !!!--for now these fields are not in the XML files so they are omitted
    1661            !!!  xios_field_is_active("toplwai").OR.xios_field_is_active("sollwai") !))) &
    1662            swaero_diag=.TRUE.
    1663 
    1664        !--setting up swaerofree_diag to TRUE in XIOS case
    1665        IF (xios_field_is_active("SWdnSFCcleanclr").OR.xios_field_is_active("SWupSFCcleanclr").OR. &
    1666            xios_field_is_active("SWupTOAcleanclr").OR.xios_field_is_active("rsucsaf").OR.   &
    1667            xios_field_is_active("rsdcsaf") .OR. xios_field_is_active("LWdnSFCcleanclr").OR. &
    1668            xios_field_is_active("LWupTOAcleanclr")) &
    1669            swaerofree_diag=.TRUE.
    1670 
    1671        !--setting up dryaod_diag to TRUE in XIOS case
    1672        DO naero = 1, naero_tot-1
    1673          IF (xios_field_is_active("dryod550_"//name_aero_tau(naero))) dryaod_diag=.TRUE.
    1674        ENDDO
    1675        !
    1676        !--setting up ok_4xCO2atm to TRUE in XIOS case
    1677        IF (xios_field_is_active("rsut4co2").OR.xios_field_is_active("rlut4co2").OR. &
    1678            xios_field_is_active("rsutcs4co2").OR.xios_field_is_active("rlutcs4co2").OR. &
    1679            xios_field_is_active("rsu4co2").OR.xios_field_is_active("rsucs4co2").OR. &
    1680            xios_field_is_active("rsd4co2").OR.xios_field_is_active("rsdcs4co2").OR. &
    1681            xios_field_is_active("rlu4co2").OR.xios_field_is_active("rlucs4co2").OR. &
    1682            xios_field_is_active("rld4co2").OR.xios_field_is_active("rldcs4co2")) &
    1683            ok_4xCO2atm=.TRUE.
    16841654! Need to put this initialisation after phyetat0 as in the coupled model the XIOS context is only
    16851655! initialised at that moment
     
    48304800#endif
    48314801
     4802! On remet des variables a .false. apres un premier appel
     4803    if (debut) then
     4804#ifdef CPP_XIOS
     4805      swaero_diag=.FALSE.
     4806      swaerofree_diag=.FALSE.
     4807      dryaod_diag=.FALSE.
     4808      ok_4xCO2atm= .FALSE.
     4809      if (is_master) write (lunout,*)'ok_4xCO2atm= ',swaero_diag, swaerofree_diag, dryaod_diag, ok_4xCO2atm
     4810
     4811       !--setting up swaero_diag to TRUE in XIOS case
     4812       IF (xios_field_is_active("topswad").OR.xios_field_is_active("topswad0").OR. &
     4813           xios_field_is_active("solswad").OR.xios_field_is_active("solswad0").OR. &
     4814           xios_field_is_active("topswai").OR.xios_field_is_active("solswai").OR.  &
     4815             (iflag_rrtm==1.AND.(xios_field_is_active("toplwad").OR.xios_field_is_active("toplwad0").OR. &
     4816                                 xios_field_is_active("sollwad").OR.xios_field_is_active("sollwad0"))))  &
     4817           !!!--for now these fields are not in the XML files so they are omitted
     4818           !!!  xios_field_is_active("toplwai").OR.xios_field_is_active("sollwai") !))) &
     4819           swaero_diag=.TRUE.
     4820
     4821       !--setting up swaerofree_diag to TRUE in XIOS case
     4822       IF (xios_field_is_active("SWdnSFCcleanclr").OR.xios_field_is_active("SWupSFCcleanclr").OR. &
     4823           xios_field_is_active("SWupTOAcleanclr").OR.xios_field_is_active("rsucsaf").OR.   &
     4824           xios_field_is_active("rsdcsaf") .OR. xios_field_is_active("LWdnSFCcleanclr").OR. &
     4825           xios_field_is_active("LWupTOAcleanclr")) &
     4826           swaerofree_diag=.TRUE.
     4827
     4828       !--setting up dryaod_diag to TRUE in XIOS case
     4829       DO naero = 1, naero_tot-1
     4830         IF (xios_field_is_active("dryod550_"//name_aero_tau(naero))) dryaod_diag=.TRUE.
     4831       ENDDO
     4832       !
     4833       !--setting up ok_4xCO2atm to TRUE in XIOS case
     4834       IF (xios_field_is_active("rsut4co2").OR.xios_field_is_active("rlut4co2").OR. &
     4835           xios_field_is_active("rsutcs4co2").OR.xios_field_is_active("rlutcs4co2").OR. &
     4836           xios_field_is_active("rsu4co2").OR.xios_field_is_active("rsucs4co2").OR. &
     4837           xios_field_is_active("rsd4co2").OR.xios_field_is_active("rsdcs4co2").OR. &
     4838           xios_field_is_active("rlu4co2").OR.xios_field_is_active("rlucs4co2").OR. &
     4839           xios_field_is_active("rld4co2").OR.xios_field_is_active("rldcs4co2")) &
     4840           ok_4xCO2atm=.TRUE.
     4841      if (is_master) write (lunout,*)'ok_4xCO2atm= ',swaero_diag, swaerofree_diag, dryaod_diag, ok_4xCO2atm
     4842#endif
     4843    endif
    48324844
    48334845    !====================================================================
Note: See TracChangeset for help on using the changeset viewer.