Ignore:
Timestamp:
Nov 13, 2007, 3:37:28 PM (17 years ago)
Author:
lsce
Message:

ACo : ajout clef CPP (COUPLE + AER) pour le modele couple avec les aerosol (IPSL_ESM_V1)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/phylmd/physiq.F

    r839 r864  
    13051305c$OMP THREADPRIVATE(cg_ae)
    13061306
     1307#ifdef INCA_AER
     1308#ifdef CPP_COUPLE
     1309! Aerosol optical properties by INCA model
     1310      REAL, SAVE, ALLOCATABLE  ::    tau_inca(:,:,:,:)
     1311      REAL, SAVE, ALLOCATABLE  ::    piz_inca(:,:,:,:)
     1312      REAL, SAVE, ALLOCATABLE  ::    cg_inca(:,:,:,:)
     1313      REAL, SAVE, ALLOCATABLE  ::    ccm(:,:,:)
     1314      CHARACTER*4              ::    rfname(9)
     1315
     1316      REAL,SAVE,ALLOCATABLE :: topswad_inca(:), solswad_inca(:) ! Aerosol direct effect.
     1317      REAL,SAVE,ALLOCATABLE :: topswad0_inca(:), solswad0_inca(:) ! Aerosol direct effect.
     1318      REAL,SAVE,ALLOCATABLE :: topswai_inca(:), solswai_inca(:) ! Aerosol indirect effect.
     1319      REAL,SAVE,ALLOCATABLE :: topsw_inca(:,:), solsw_inca(:,:)
     1320      REAL,SAVE,ALLOCATABLE :: topsw0_inca(:,:), solsw0_inca(:,:)
     1321#endif
     1322#endif
    13071323      REAL,SAVE,ALLOCATABLE :: topswad(:), solswad(:) ! Aerosol direct effect.
    13081324c$OMP THREADPRIVATE(topswad,solswad)
     
    14411457      allocate( topswad(klon), solswad(klon))
    14421458      allocate( topswai(klon), solswai(klon) )
     1459#ifdef INCA_AER
     1460#ifdef CPP_COUPLE
     1461      allocate( topswad_inca(klon), solswad_inca(klon))
     1462      allocate( topswad0_inca(klon), solswad0_inca(klon))
     1463      allocate( topswai_inca(klon), solswai_inca(klon))
     1464      allocate( topsw_inca(klon,9), solsw_inca(klon,9))
     1465      allocate( topsw0_inca(klon,9), solsw0_inca(klon,9))
     1466      allocate( tau_inca(klon,klev,9,2))
     1467      allocate( piz_inca(klon,klev,9,2))
     1468      allocate( cg_inca(klon,klev,9,2))
     1469      allocate( ccm(klon,klev,2) )
     1470#endif
     1471#endif
    14431472      allocate( clwcon0(klon,klev),rnebcon0(klon,klev))
    14441473      allocate( tau_ae(klon,klev,2), piz_ae(klon,klev,2))
     
    15021531         solswai(:)=0.
    15031532         solswad(:)=0.
     1533#ifdef INCA_AER
     1534#ifdef CPP_COUPLE
     1535         tau_inca(:,:,:,:) = 0.
     1536         piz_inca(:,:,:,:) = 0.
     1537         cg_inca(:,:,:,:)  = 0.
     1538         ccm(:,:,:)        = 0.
     1539         topswai_inca(:)   = 0.
     1540         topswad_inca(:)   = 0.
     1541         topswad0_inca(:)  = 0.
     1542         topsw_inca(:,:)   = 0.
     1543         topsw0_inca(:,:)  = 0.
     1544         solswai_inca(:)   = 0.
     1545         solswad_inca(:)   = 0.
     1546         solswad0_inca(:)  = 0.
     1547         solsw_inca(:,:)   = 0.
     1548         solsw0_inca(:,:)  = 0.
     1549#endif
     1550#endif
    15041551!rv
    1505 ! anne
     1552!ACo
    15061553         d_u_con(:,:) = 0.0
    15071554         d_v_con(:,:) = 0.0
     
    15131560c        nhistoW(:,:,:,:) = 0.0
    15141561c        histoW(:,:,:,:) = 0.0
    1515 ! fin anne
    15161562
    15171563cIM     
     
    25172563cjq - Johannes Quaas, 27/11/2003 (quaas@lmd.jussieu.fr)
    25182564      IF (ok_ade.OR.ok_aie) THEN
     2565#if defined(CPP_COUPLE) && !defined(INCA_AER)
    25192566         ! Get sulfate aerosol distribution
    25202567         CALL readsulfate(rjourvrai, debut, sulfate)
     
    25242571         CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl,
    25252572     .        tau_ae, piz_ae, cg_ae, aerindex)
     2573#endif
     2574#if !defined(CPP_COUPLE)
     2575         ! Get sulfate aerosol distribution
     2576         CALL readsulfate(rjourvrai, debut, sulfate)
     2577         CALL readsulfate_preind(rjourvrai, debut, sulfate_pi)
     2578
     2579         ! Calculate aerosol optical properties (Olivier Boucher)
     2580         CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl,
     2581     .        tau_ae, piz_ae, cg_ae, aerindex)
     2582#endif
    25262583cym
    25272584      ELSE
     
    27002757     .            flwp, fiwp, flwc, fiwc,
    27012758     e            ok_aie,
     2759#if defined(CPP_COUPLE) && defined(INCA_AER) 
     2760     e            ccm(:,:,1), ccm(:,:,2),
     2761#else
    27022762     e            sulfate, sulfate_pi,
     2763#endif
    27032764     e            bl95_b0, bl95_b1,
    27042765     s            cldtaupi, re, fl)
     
    27362797      endif
    27372798     
     2799
     2800#if defined(CPP_COUPLE) && defined(INCA_AER)
     2801      CALL radlwsw_inca ! nouveau rayonnement (compatible Arpege-IFS)
     2802     e            (kdlon,kflev,dist, rmu0, fract,
     2803     e             paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri,
     2804     e             wo,
     2805     e             cldfra, cldemi, cldtau,
     2806     s             heat,heat0,cool,cool0,radsol,albpla,
     2807     s             topsw,toplw,solsw,sollw,
     2808     s             sollwdown,
     2809     s             topsw0,toplw0,solsw0,sollw0,
     2810     s             lwdn0, lwdn, lwup0, lwup,
     2811     s             swdn0, swdn, swup0, swup,
     2812     e             ok_ade, ok_aie, ! new for aerosol radiative effects
     2813     e             tau_inca, piz_inca, cg_inca, ! ="=
     2814     s             topswad_inca, solswad_inca, ! ="=
     2815     s             topswad0_inca, solswad0_inca, ! ="=
     2816     s             topsw_inca, topsw0_inca,
     2817     s             solsw_inca, solsw0_inca,
     2818     e             cldtaupi, ! ="=
     2819     s             topswai_inca, solswai_inca) ! ="=
     2820#else
    27382821      CALL radlwsw ! nouveau rayonnement (compatible Arpege-IFS)
    27392822     e            (dist, rmu0, fract,
     
    27522835     e             cldtaupi, ! ="=
    27532836     s             topswai, solswai) ! ="=
     2837#endif
    27542838      itaprad = 0
    27552839      ENDIF
     
    29853069#ifdef INCA
    29863070     I                   flxmass_w,
     3071#if defined(INCA_AER) && defined(CPP_COUPLE)
     3072     I                   tau_inca,
     3073     I                   piz_inca,
     3074     I                   cg_inca,
     3075     I                   ccm,
     3076     I                   rfname,
     3077#endif
    29873078#endif
    29883079     O                   tr_seri)
Note: See TracChangeset for help on using the changeset viewer.