Changeset 3152


Ignore:
Timestamp:
Jan 16, 2018, 10:30:10 AM (6 years ago)
Author:
idelkadi
Message:
  • Activation des simulateurs et des champs de sortie en fonction de ce qui est demande dans les fichiers .xml pour XIOS (CMIP6)
  • Mise a jour du calendrier pour Xios dans Cosp
Location:
LMDZ6/trunk/libf/phylmd/cosp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/cosp/cosp_output_write_mod.F90

    r2955 r3152  
    8383   endif
    8484
    85 !#ifdef CPP_XIOS
    86 ! !$OMP MASTER
    87 !IF (cosp_varsdefined) THEN
    88 !   if (prt_level >= 10) then
    89 !         WRITE(lunout,*)'Apell xios_update_calendar cosp_varsdefined iinitend ', &
    90 !                         cosp_varsdefined,iinitend
    91 !   endif
    92 !    CALL xios_update_calendar(itau_wcosp)
    93 !ENDIF
    94 !  !$OMP END MASTER
    95 !  !$OMP BARRIER
    96 !#endif
     85#ifdef CPP_XIOS
     86 !$OMP MASTER
     87IF (cosp_varsdefined) THEN
     88   if (prt_level >= 10) then
     89         WRITE(lunout,*)'Apell xios_update_calendar cosp_varsdefined iinitend ', &
     90                         cosp_varsdefined,iinitend
     91   endif
     92    CALL xios_update_calendar(itau_wcosp)
     93ENDIF
     94  !$OMP END MASTER
     95  !$OMP BARRIER
     96#endif
    9797
    9898 if (cfg%Llidar_sim) then
  • LMDZ6/trunk/libf/phylmd/cosp/read_cosp_output_nl.F90

    r3057 r3152  
    66  USE MOD_COSP_TYPES
    77  USE mod_phys_lmdz_para
     8
     9#ifdef CPP_XIOS
     10    USE xios, ONLY: xios_get_field_attr, xios_field_is_active
     11#endif
     12
    813  character(len=*),intent(in) :: cosp_nl
    914  type(cosp_config),intent(out) :: cfg
     
    6772  enddo
    6873 
     74! Lecture du fichier namelist
    6975  IF (is_master) THEN
    7076    open(10,file=cosp_nl,status='old')
     
    7379  ENDIF
    7480 
     81! VEREFIER LES CHAMPS DEMANDES DANS .XML
     82! 2. Si champs active dans .xml alors mettre la cles de sortie en true
     83#ifdef CPP_XIOS
     84   IF (xios_field_is_active("cllcalipso")) Lcllcalipso=.TRUE.
     85             IF (xios_field_is_active("clmcalipso")) Lclmcalipso=.TRUE.
     86             IF (xios_field_is_active("clhcalipso")) Lclhcalipso=.TRUE.
     87             IF (xios_field_is_active("cltcalipso")) Lcltcalipso=.TRUE.
     88             IF (xios_field_is_active("pcllcalipso")) Lcllcalipso=.TRUE.
     89             IF (xios_field_is_active("pclmcalipso")) Lclmcalipso=.TRUE.
     90             IF (xios_field_is_active("pclhcalipso")) Lclhcalipso=.TRUE.
     91             IF (xios_field_is_active("pcltcalipso")) Lcltcalipso=.TRUE.
     92             IF (xios_field_is_active("cllcalipsoice")) Lcllcalipsoice=.TRUE.
     93             IF (xios_field_is_active("clmcalipsoice")) Lclmcalipsoice=.TRUE.
     94             IF (xios_field_is_active("clhcalipsoice")) Lclhcalipsoice=.TRUE.
     95             IF (xios_field_is_active("cltcalipsoice")) Lcltcalipsoice=.TRUE.
     96             IF (xios_field_is_active("cllcalipsoliq")) Lcllcalipsoliq=.TRUE.
     97             IF (xios_field_is_active("clmcalipsoliq")) Lclmcalipsoliq=.TRUE.
     98             IF (xios_field_is_active("clhcalipsoliq")) Lclhcalipsoliq=.TRUE.
     99             IF (xios_field_is_active("cltcalipsoliq")) Lcltcalipsoliq=.TRUE.
     100             IF (xios_field_is_active("cllcalipsoun")) Lcllcalipsoun=.TRUE.
     101             IF (xios_field_is_active("clmcalipsoun")) Lclmcalipsoun=.TRUE.
     102             IF (xios_field_is_active("clhcalipsoun")) Lclhcalipsoun=.TRUE.
     103             IF (xios_field_is_active("cltcalipsoun")) Lcltcalipsoun=.TRUE.
     104             IF (xios_field_is_active("clcalipso")) Lclcalipso=.TRUE.
     105             IF (xios_field_is_active("pclcalipso")) Lclcalipso=.TRUE.
     106             IF (xios_field_is_active("clcalipsoice")) Lclcalipsoice=.TRUE.
     107             IF (xios_field_is_active("clcalipsoliq")) Lclcalipsoliq=.TRUE.
     108             IF (xios_field_is_active("clcalipsoun")) Lclcalipsoun=.TRUE.
     109             IF (xios_field_is_active("clcalipsotmp")) Lclcalipsotmp=.TRUE.
     110             IF (xios_field_is_active("clcalipsotmpice")) Lclcalipsotmpice=.TRUE.
     111             IF (xios_field_is_active("clcalipsotmpliq")) Lclcalipsotmpliq=.TRUE.
     112             IF (xios_field_is_active("clcalipsotmpun")) Lclcalipsotmpun=.TRUE.
     113             IF (xios_field_is_active("parasol_refl")) Lparasol_refl=.TRUE.
     114             IF (xios_field_is_active("parasol_crefl")) Lparasol_refl=.TRUE.
     115             IF (xios_field_is_active("Ncrefl")) Lparasol_refl=.TRUE.
     116             IF (xios_field_is_active("cfad_lidarsr532")) LcfadLidarsr532=.TRUE.
     117             IF (xios_field_is_active("atb532")) Latb532=.TRUE.
     118             IF (xios_field_is_active("beta_mol532")) Lbeta_mol532=.TRUE.
     119             IF (xios_field_is_active("clopaquecalipso")) Lclopaquecalipso=.TRUE.
     120             IF (xios_field_is_active("clthincalipso")) Lclthincalipso=.TRUE.
     121             IF (xios_field_is_active("clzopaquecalipso")) Lclzopaquecalipso=.TRUE.
     122             IF (xios_field_is_active("clcalipsoopaque")) Lclcalipsoopaque=.TRUE.
     123             IF (xios_field_is_active("clcalipsothin")) Lclcalipsothin=.TRUE.
     124             IF (xios_field_is_active("clcalipsozopaque")) Lclcalipsozopaque=.TRUE.
     125             IF (xios_field_is_active("clcalipsoopacity")) Lclcalipsoopacity=.TRUE.
     126             IF (xios_field_is_active("proftemp")) Lproftemp=.TRUE.
     127             IF (xios_field_is_active("profSR")) LprofSR=.TRUE.
     128
     129   IF (xios_field_is_active("cfadDbze94")) LcfadDbze94=.TRUE.
     130             IF (xios_field_is_active("dbze94")) Ldbze94=.TRUE.
     131             IF (xios_field_is_active("cltlidarradar")) Lcltlidarradar=.TRUE.
     132             IF (xios_field_is_active("clcalipso2")) Lclcalipso2=.TRUE.
     133
     134   IF (xios_field_is_active("clisccp2")) Lclisccp2=.TRUE.
     135             IF (xios_field_is_active("boxtauisccp")) Lboxtauisccp=.TRUE.
     136             IF (xios_field_is_active("boxptopisccp")) Lboxptopisccp=.TRUE.
     137             IF (xios_field_is_active("tclisccp")) Ltclisccp=.TRUE.
     138             IF (xios_field_is_active("ctpisccp")) Lctpisccp=.TRUE.
     139             IF (xios_field_is_active("tauisccp")) Ltauisccp=.TRUE.
     140             IF (xios_field_is_active("albisccp")) Lalbisccp=.TRUE.
     141             IF (xios_field_is_active("meantbisccp")) Lmeantbisccp=.TRUE.
     142             IF (xios_field_is_active("meantbclrisccp")) Lmeantbclrisccp=.TRUE.
     143
     144   IF (xios_field_is_active("clMISR")) LclMISR=.TRUE.
     145
     146             IF (xios_field_is_active("cllmodis")) Lcllmodis=.TRUE.
     147             IF (xios_field_is_active("clmmodis")) Lclmmodis=.TRUE.
     148             IF (xios_field_is_active("clhmodis")) Lclhmodis=.TRUE.
     149             IF (xios_field_is_active("cltmodis")) Lcltmodis=.TRUE.
     150             IF (xios_field_is_active("clwmodis")) Lclwmodis=.TRUE.
     151             IF (xios_field_is_active("climodis")) Lclimodis=.TRUE.
     152             IF (xios_field_is_active("tautmodis")) Ltautmodis=.TRUE.
     153             IF (xios_field_is_active("tauwmodis")) Ltauwmodis=.TRUE.
     154             IF (xios_field_is_active("tauimodis")) Ltauimodis=.TRUE.
     155             IF (xios_field_is_active("tautlogmodis")) Ltautlogmodis=.TRUE.
     156             IF (xios_field_is_active("tauilogmodis")) Ltauilogmodis=.TRUE.
     157             IF (xios_field_is_active("tauwlogmodis")) Ltauwlogmodis=.TRUE.
     158             IF (xios_field_is_active("reffclwmodis")) Lreffclwmodis=.TRUE.
     159             IF (xios_field_is_active("reffclimodis")) Lreffclimodis=.TRUE.
     160             IF (xios_field_is_active("pctmodis")) Lpctmodis=.TRUE.
     161             IF (xios_field_is_active("lwpmodis")) Llwpmodis=.TRUE.
     162             IF (xios_field_is_active("iwpmodis")) Liwpmodis=.TRUE.
     163             IF (xios_field_is_active("clmodis")) Lclmodis=.TRUE.
     164!             IF (xios_field_is_active("jpdftaureicemodis")) Lcrimodis=.TRUE.
     165             IF (xios_field_is_active("crimodis")) Lcrimodis=.TRUE.
     166!             IF (xios_field_is_active("jpdftaureliqmodis")) Lcrlmodis=.TRUE.
     167             IF (xios_field_is_active("crlmodis")) Lcrlmodis=.TRUE.
     168
     169! 2.  si champs demande alors activer le simulateur correspondant
     170   IF (xios_field_is_active("cllcalipso").OR. &
     171                xios_field_is_active("clmcalipso").OR. &
     172                xios_field_is_active("clhcalipso").OR. &
     173                xios_field_is_active("cltcalipso").OR. &
     174                xios_field_is_active("pcllcalipso").OR. &
     175                xios_field_is_active("pclmcalipso").OR. &
     176                xios_field_is_active("pclhcalipso").OR. &
     177                xios_field_is_active("pcltcalipso").OR. &
     178                xios_field_is_active("cllcalipsoice").OR. &
     179                xios_field_is_active("clmcalipsoice").OR. &
     180                xios_field_is_active("clhcalipsoice").OR. &
     181                xios_field_is_active("cltcalipsoice").OR. &
     182                xios_field_is_active("cllcalipsoliq").OR. &
     183                xios_field_is_active("clmcalipsoliq").OR. &
     184                xios_field_is_active("clhcalipsoliq").OR. &
     185                xios_field_is_active("cltcalipsoliq").OR. &
     186                xios_field_is_active("cllcalipsoun").OR. &
     187                xios_field_is_active("clmcalipsoun").OR. &
     188                xios_field_is_active("clhcalipsoun").OR. &
     189                xios_field_is_active("cltcalipsoun").OR. &
     190                xios_field_is_active("clcalipso").OR. &
     191                xios_field_is_active("pclcalipso").OR. &
     192                xios_field_is_active("clcalipsoice").OR. &
     193                xios_field_is_active("clcalipsoliq").OR. &
     194                xios_field_is_active("clcalipsoun").OR. &
     195                xios_field_is_active("clcalipsotmp").OR. &
     196                xios_field_is_active("clcalipsotmpice").OR. &
     197                xios_field_is_active("clcalipsotmpliq").OR. &
     198                xios_field_is_active("clcalipsotmpun").OR. &
     199                xios_field_is_active("parasol_refl").OR. &
     200                xios_field_is_active("parasol_crefl").OR. &
     201                xios_field_is_active("Ncrefl").OR. &
     202                xios_field_is_active("cfad_lidarsr532").OR. &
     203                xios_field_is_active("atb532").OR. &
     204                xios_field_is_active("beta_mol532").OR. &
     205                xios_field_is_active("clopaquecalipso").OR. &
     206                xios_field_is_active("clthincalipso").OR. &
     207                xios_field_is_active("clzopaquecalipso").OR. &
     208                xios_field_is_active("clcalipsoopaque").OR. &
     209                xios_field_is_active("clcalipsothin").OR. &
     210                xios_field_is_active("clcalipsozopaque").OR. &
     211                xios_field_is_active("clcalipsoopacity").OR. &
     212                xios_field_is_active("proftemp").OR. &
     213                xios_field_is_active("profSR")) &
     214                Llidar_sim=.TRUE.
     215
     216    IF (xios_field_is_active("cfadDbze94").OR. &
     217               xios_field_is_active("dbze94")) &
     218               Lradar_sim=.TRUE.
     219
     220    IF (xios_field_is_active("cltlidarradar").OR. &
     221               xios_field_is_active("clcalipso2")) THEN
     222               Lradar_sim=.TRUE.
     223               Llidar_sim=.TRUE.
     224    ENDIF
     225
     226    IF (xios_field_is_active("clisccp2").OR. &
     227                xios_field_is_active("boxtauisccp").OR. &
     228                xios_field_is_active("boxptopisccp").OR. &
     229                xios_field_is_active("tclisccp").OR. &
     230                xios_field_is_active("ctpisccp").OR. &
     231                xios_field_is_active("tauisccp").OR. &
     232                xios_field_is_active("albisccp").OR. &
     233                xios_field_is_active("meantbisccp").OR. &
     234                xios_field_is_active("meantbclrisccp")) &
     235                Lisccp_sim=.TRUE.
     236
     237    IF (xios_field_is_active("clMISR")) Lmisr_sim=.TRUE.
     238
     239    IF (xios_field_is_active("cllmodis").OR. &
     240                xios_field_is_active("clmmodis").OR. &
     241                xios_field_is_active("clhmodis").OR. &
     242                xios_field_is_active("cltmodis").OR. &
     243                xios_field_is_active("clwmodis").OR. &
     244                xios_field_is_active("climodis").OR. &
     245                xios_field_is_active("tautmodis").OR. &
     246                xios_field_is_active("tauwmodis").OR. &
     247                xios_field_is_active("tauimodis").OR. &
     248                xios_field_is_active("tautlogmodis").OR. &
     249                xios_field_is_active("tauilogmodis").OR. &
     250                xios_field_is_active("tauwlogmodis").OR. &
     251                xios_field_is_active("reffclwmodis").OR. &
     252                xios_field_is_active("reffclimodis").OR. &
     253                xios_field_is_active("pctmodis").OR. &
     254                xios_field_is_active("lwpmodis").OR. &
     255                xios_field_is_active("iwpmodis").OR. &
     256                xios_field_is_active("clmodis").OR. &
     257                xios_field_is_active("crimodis").OR. &
     258                xios_field_is_active("crlmodis")) &
     259                Lmodis_sim=.TRUE.
     260
     261#endif
     262
     263
    75264  CALL bcast(Lradar_sim)
    76265  CALL bcast(Llidar_sim)
Note: See TracChangeset for help on using the changeset viewer.