Changeset 2596 for LMDZ5/trunk


Ignore:
Timestamp:
Jul 21, 2016, 5:46:23 PM (8 years ago)
Author:
musat
Message:

In newmicro allow use of cloud overlap hypothesis defined
in radopt.h as for the radiation code.
In rrtm allow max and random cloud overlap hypothesis.
IM

Location:
LMDZ5/trunk/libf/phylmd
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/newmicro.F90

    r2109 r2596  
    1717  ! Auteur(s): Z.X. Li (LMD/CNRS) date: 19930910
    1818  ! O.   Boucher (LMD/CNRS) mise a jour en 201212
     19  ! I. Musat (LMD/CNRS) : prise en compte de la meme hypothese de recouvrement
     20  !                       pour les nuages que pour le rayonnement rrtm via
     21  !                       le parametre novlp de radopt.h : 20160721
    1922  ! Objet: Calculer epaisseur optique et emmissivite des nuages
    2023  ! ======================================================================
     
    5356  include "radopt.h"
    5457
    55   ! choix de l'hypothese de recouvrememnt nuageuse
    56   LOGICAL random, maximum_random, maximum
    57   PARAMETER (random=.FALSE., maximum_random=.TRUE., maximum=.FALSE.)
     58  ! choix de l'hypothese de recouvrement nuageuse via radopt.h (IM, 19.07.2016)
     59  ! !novlp=1: max-random
     60  ! !novlp=2: maximum
     61  ! !novlp=3: random
     62! LOGICAL random, maximum_random, maximum
     63! PARAMETER (random=.FALSE., maximum_random=.TRUE., maximum=.FALSE.)
    5864
    5965  LOGICAL, SAVE :: first = .TRUE.
     
    512518      reffclwtop(i) = 0.
    513519      cldncl(i) = 0.
    514       IF (random .OR. maximum_random) tcc(i) = 1.
    515       IF (maximum) tcc(i) = 0.
     520      IF (novlp.EQ.3 .OR. novlp.EQ.1) tcc(i) = 1.
     521      IF (novlp.EQ.2) tcc(i) = 0.
    516522    END DO
    517523
     
    524530        IF (pcltau(i,k)>thres_tau .AND. pclc(i,k)>thres_neb) THEN
    525531
    526           IF (maximum) THEN
     532          IF (novlp.EQ.2) THEN
    527533            IF (first) THEN
    528534              WRITE (*, *) 'Hypothese de recouvrement: MAXIMUM'
     
    533539          END IF
    534540
    535           IF (random) THEN
     541          IF (novlp.EQ.3) THEN
    536542            IF (first) THEN
    537543              WRITE (*, *) 'Hypothese de recouvrement: RANDOM'
     
    542548          END IF
    543549
    544           IF (maximum_random) THEN
     550          IF (novlp.EQ.1) THEN
    545551            IF (first) THEN
    546552              WRITE (*, *) 'Hypothese de recouvrement: MAXIMUM_ &
     
    567573      END DO ! loop over k
    568574
    569       IF (random .OR. maximum_random) tcc(i) = 1. - tcc(i)
     575      IF (novlp.EQ.3 .OR. novlp.EQ.1) tcc(i) = 1. - tcc(i)
    570576
    571577    END DO ! loop over i
  • LMDZ5/trunk/libf/phylmd/rrtm/swr.F90

    r2010 r2596  
    192192    ZCLOUD(JL) = ZSS1(JL)
    193193  ELSEIF (NOVLP == 2) THEN
    194    stop 'provisoire pour verifier option novlp=1b'
     194!IM150716  stop 'provisoire pour verifier option novlp=1b'
     195   print*,'rrtm provisoire pour verifier option novlp=2 maximum'
    195196!* maximum
    196197    ZCLOUD(JL) = MAX( ZSS1(JL) , ZCLOUD(JL) )
     
    198199!++MODIFCODE
    199200  ELSEIF ((NOVLP == 3).OR.((NOVLP  >=  5).AND.(NOVLP /= 8))) THEN
    200    stop 'provisoire pour verifier option novlp=1c'
     201!IM150716  stop 'provisoire pour verifier option novlp=1c'
     202    print*,'rrtm provisoire pour verifier option novlp=3 random'
    201203!--MODIFCODE
    202204!* random
Note: See TracChangeset for help on using the changeset viewer.