--- trunk/libf/phylmd/clesphys2.f90 2008/07/21 16:05:07 12 +++ trunk/Sources/phylmd/clesphys2.f 2016/12/07 17:37:21 209 @@ -1,41 +1,49 @@ module clesphys2 - ! v 1.3 2005/06/06 13:16:33 fairhead + ! From version 1.3 2005/06/06 13:16:33 implicit none - LOGICAL:: cycle_diurne= .TRUE. - ! Cette option permet d'éteindre le cycle diurne. - ! Peut être utile pour accélérer le code. - - LOGICAL:: soil_model= .TRUE. - ! Help = Choix du modele de sol (Thermique ?) - ! Option qui pourait un string afin de pouvoir - ! plus de choix ! Ou meme une liste d'options - - LOGICAL:: new_oliq= .TRUE. - ! Help = Permet de mettre en route la - ! nouvelle parametrisation de l'eau liquide + LOGICAL:: soil_model = .TRUE. + ! Choix du modele de sol (Thermique ?) - LOGICAL:: ok_orodr= .TRUE. - ! Desc = Orodr ou non pour l orographie + LOGICAL:: new_oliq = .TRUE. + ! Permet de mettre en route la nouvelle parametrisation de l'eau liquide + ! Pour l'orographie: + LOGICAL:: ok_orodr = .TRUE. LOGICAL:: ok_orolf = .TRUE. - ! Desc = Orolf ou non pour l orographie - LOGICAL:: ok_limitvrai= .FALSE. - ! Help = On peut forcer le modele a lire le - ! fichier SST de la bonne annee. C'est une tres bonne - ! idee, pourquoi ne pas mettre toujours a y ? - - INTEGER:: nbapp_rad= 12 - ! (nombre d'appels des routines de rayonnements par jour) - - INTEGER:: iflag_con = 2 - ! Help = Flag pour la convection les options suivantes existent : - ! 1 pour LMD, - ! 2 pour Tiedtke, - ! 3 pour CCM(NCAR) - ! Flag pour la convection (1 pour LMD, 2 pour Tiedtke, 3 KE, 4 KE vect) + LOGICAL:: ok_limitvrai = .FALSE. + ! On peut forcer le modele a lire le fichier SST de la bonne + ! annee. + + INTEGER:: nbapp_rad = 12 + ! nombre d'appels des routines de rayonnements par jour + + logical:: conv_emanuel = .true. ! convection scheme of Emanuel, else Tiedtke + +contains + + subroutine read_clesphys2 + + use unit_nml_m, only: unit_nml + use nr_util, only: assert + use conf_gcm_m, only: day_step, iphysiq + + namelist /clesphys2_nml/soil_model, new_oliq, ok_orodr, ok_orolf, & + ok_limitvrai, nbapp_rad, conv_emanuel + + !------------------------------------ + + print *, "Enter namelist 'clesphys2_nml'." + read(unit=*, nml=clesphys2_nml) + write(unit_nml, nml=clesphys2_nml) + call assert(mod(day_step / iphysiq, nbapp_rad) == 0, & + "read_clesphys2 nbapp_rad") + call assert(nbapp_rad >= 4, & + "read_clesphys2: minimum 4 calls to radiative transfer per day") + + end subroutine read_clesphys2 end module clesphys2