Ignore:
Timestamp:
Apr 18, 2008, 6:20:30 PM (16 years ago)
Author:
lmdzadmin
Message:

On deplace variables SAVE de physiq dans phys_state_var_mod
IM

File:
1 edited

Legend:

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

    r950 r952  
    171171      PARAMETER (ok_region=.FALSE.)
    172172c======================================================================
    173 c     pour phsystoke avec thermiques
    174       real,allocatable,save :: clwcon0th(:,:),rnebcon0th(:,:)
    175 c$OMP THREADPRIVATE(clwcon0th,rnebcon0th)
    176 
    177173      real weak_inversion(klon),dthmin(klon)
    178174      real seuil_inversion
     
    254250cym#include "raddim.h"
    255251c
    256 
    257       REAL,allocatable,save :: swdn0(:,:), swdn(:,:)
    258       REAL,allocatable,save :: swup0(:,:), swup(:,:)
    259 c$OMP THREADPRIVATE(swdn0 , swdn, swup0, swup)
    260 c
    261       REAL,allocatable,save :: SWdn200clr(:), SWdn200(:)
    262       REAL,allocatable,save :: SWup200clr(:), SWup200(:)
    263 c$OMP THREADPRIVATE(SWdn200clr, SWdn200, SWup200clr, SWup200)
    264 c
    265       REAL,allocatable,save :: lwdn0(:,:), lwdn(:,:)
    266       REAL,allocatable,save :: lwup0(:,:), lwup(:,:)
    267 c$OMP THREADPRIVATE(lwdn0 , lwdn, lwup0, lwup)
    268 c
    269       REAL,allocatable,save :: LWdn200clr(:), LWdn200(:)
    270       REAL,allocatable,save :: LWup200clr(:), LWup200(:)
    271 c$OMP THREADPRIVATE(LWdn200clr, LWdn200, LWup200clr, LWup200)
    272 c
    273       REAL,allocatable,save :: LWdnTOA(:), LWdnTOAclr(:)
    274 c$OMP THREADPRIVATE(LWdnTOA, LWdnTOAclr)
    275252c
    276253cIM Amip2
    277254c variables a une pression donnee
    278255c
    279       integer nlevSTD
    280       PARAMETER(nlevSTD=17)
    281256      real rlevSTD(nlevSTD)
    282257      DATA rlevSTD/100000., 92500., 85000., 70000.,
     
    284259     .15000., 10000., 7000., 5000., 3000., 2000., 1000./
    285260      SAVE rlevstd
    286 c$OMP THREADPRIVATE(rlevSTD)
    287261      CHARACTER*4 clevSTD(nlevSTD)
    288262      DATA clevSTD/'1000','925 ','850 ','700 ','600 ',
     
    290264     .'70  ','50  ','30  ','20  ','10  '/
    291265      SAVE clevSTD
    292 c$OMP THREADPRIVATE(clevSTD)
    293266c
    294267      CHARACTER*4 bb2
     
    301274c
    302275c nout : niveau de output des variables a une pression donnee
    303       INTEGER nout
    304       PARAMETER(nout=3) !nout=1 : day; =2 : mth; =3 : NMC
    305 c
    306       REAL,SAVE,ALLOCATABLE :: tsumSTD(:,:,:)
    307       REAL,SAVE,ALLOCATABLE :: usumSTD(:,:,:), vsumSTD(:,:,:)
    308       REAL,SAVE,ALLOCATABLE :: wsumSTD(:,:,:), phisumSTD(:,:,:)
    309       REAL,SAVE,ALLOCATABLE :: qsumSTD(:,:,:), rhsumSTD(:,:,:)
    310 c$OMP THREADPRIVATE(tsumSTD, usumSTD, vsumSTD, wsumSTD, phisumSTD)
    311 c$OMP THREADPRIVATE(qsumSTD, rhsumSTD)
    312 c
    313276      logical oknondef(klon,nlevSTD,nout)
    314       real,SAVE,ALLOCATABLE :: tnondef(:,:,:)
    315 c$OMP THREADPRIVATE(tnondef)
    316277c
    317278c les produits uvSTD, vqSTD, .., T2STD sont calcules
     
    323284      real vTSTD(klon,nlevSTD)
    324285      real wqSTD(klon,nlevSTD)
    325 c
    326       real,save,allocatable :: uvsumSTD(:,:,:)
    327       real,save,allocatable :: vqsumSTD(:,:,:)
    328       real,save,allocatable :: vTsumSTD(:,:,:)
    329       real,save,allocatable :: wqsumSTD(:,:,:)
    330286c
    331287      real vphiSTD(klon,nlevSTD)
     
    334290      real v2STD(klon,nlevSTD)
    335291      real T2STD(klon,nlevSTD)
    336 c
    337       real,save,allocatable :: vphisumSTD(:,:,:)
    338       real,save,allocatable :: wTsumSTD(:,:,:)
    339       real,save,allocatable :: u2sumSTD(:,:,:)
    340       real,save,allocatable :: v2sumSTD(:,:,:)
    341       real,save,allocatable :: T2sumSTD(:,:,:)
    342 c
    343 c$OMP THREADPRIVATE(uvsumSTD, vqsumSTD, vTsumSTD, wqsumSTD)
    344 c$OMP THREADPRIVATE(vphisumSTD, wTsumSTD, u2sumSTD, v2sumSTD, T2sumSTD)
    345 
    346 cMI Amip2
    347292c
    348293#include "radepsi.h"
     
    393338!     PARAMETER(isccppas=6) !appel du simulateurs tous les 6pas de temps de la physique
    394339!                           !i.e. toutes les 3 heures
    395       INTEGER n, napisccp
    396 c     PARAMETER(napisccp=3)
    397       PARAMETER(napisccp=1)
     340      INTEGER n
    398341      INTEGER ifreq_isccp(napisccp), freqin_pdt(napisccp)
    399342      DATA ifreq_isccp/3/
     
    414357      REAL t1, aa
    415358      REAL seed_re(klon,napisccp)
    416       INTEGER,ALLOCATABLE,SAVE :: seed_old(:,:)
    417 c$OMP THREADPRIVATE(seed_old)
    418359cym !!!! A voir plus tard
    419360cym      INTEGER iphy(iim,jjmp1)
     
    488429      REAL o500(klon)
    489430c
    490 cIM: nbregdyn = nbre regions pour calculs statistiques sur output du ISCCP
    491 cIM: dynamiques 
    492       INTEGER nreg, nbregdyn
    493       PARAMETER(nbregdyn=5)
    494 
    495       INTEGER,ALLOCATABLE,SAVE :: pct_ocean(:,:)
    496 c$OMP THREADPRIVATE(pct_ocean)
    497 cym      SAVE pct_ocean
    498  
     431
    499432c sorties ISCCP
    500433
     
    516449c$OMP THREADPRIVATE(cldtopres,cldtopres3)
    517450cIM 051005 BEG
    518       REAL tmp_his1_3d(iwmax,kmaxm1,lmaxm1,nbregdyn,napisccp)
    519       REAL tmp_his2_3d(iwmax,kmaxm1,lmaxm1,nbregdyn,napisccp)
    520       REAL tmp_his3_3d(iwmax,kmaxm1,lmaxm1,nbregdyn,napisccp)
    521451      INTEGER komega, nhoriRD
    522452
     
    622552c$OMP THREADPRIVATE(radpas)
    623553c
    624       REAL,SAVE,ALLOCATABLE :: rlonPOS(:)
    625 c$OMP THREADPRIVATE(rlonPOS)   
    626 cym      SAVE rlonPOS                ! longitudes > 0. pour chaque point
    627 c
    628554cc      INTEGER iflag_con
    629555cc      SAVE iflag_con              ! indicateur de la convection
     
    634560c
    635561      real slp(klon) ! sea level pressure
    636 
    637 cIM
    638       REAL,SAVE,ALLOCATABLE :: newsst(:) !temperature de l'ocean
    639 c$OMP THREADPRIVATE(newsst)
    640 cym     SAVE newsst
    641562c
    642563      REAL fevap(klon,nbsrf)
    643564      REAL fluxlat(klon,nbsrf)
    644565c
    645       REAL,allocatable,save :: deltat(:)
    646 c$OMP THREADPRIVATE(deltat)
    647 cym      SAVE deltat                 ! ecart avec la SST de reference
    648 c
    649566      REAL qsol(klon)
    650567      REAL,save ::  solarlong0
     
    655572      REAL zulow(klon),zvlow(klon)
    656573c
    657       REAL,allocatable,save :: zuthe(:),zvthe(:)
    658 c$OMP THREADPRIVATE(zuthe,zvthe)
    659 cym      SAVE zuthe
    660 cym      SAVE zvthe
    661574      INTEGER igwd,idx(klon),itest(klon)
    662575c
    663576      REAL agesno(klon,nbsrf)
    664 c
    665       REAL,allocatable,save :: alb_neig(:)
    666 c$OMP THREADPRIVATE(alb_neig)
    667 cym      SAVE alb_neig               ! albedo de la neige
    668577c
    669578c      REAL,allocatable,save :: run_off_lic_0(:)
     
    673582c Variables liees a la convection de K. Emanuel (sb):
    674583c
    675       REAL,allocatable,save :: ema_workcbmf(:)   ! cloud base mass flux
    676 c$OMP THREADPRIVATE(ema_workcbmf)
    677 cym      SAVE ema_workcbmf
    678 
    679       REAL,allocatable,save :: ema_cbmf(:)       ! cloud base mass flux
    680 c$OMP THREADPRIVATE(ema_cbmf)
    681 cym      SAVE ema_cbmf
    682 
    683       REAL,allocatable,save :: ema_pcb(:)        ! cloud base pressure
    684 c$OMP THREADPRIVATE(ema_pcb)
    685 cym      SAVE ema_pcb
    686 
    687       REAL,allocatable,save :: ema_pct(:)        ! cloud top pressure
    688 c$OMP THREADPRIVATE(ema_pct)
    689 cym      SAVE ema_pct
    690 
    691584      REAL bas, top             ! cloud base and top levels
    692585      SAVE bas
     
    694587c$OMP THREADPRIVATE(bas, top)
    695588
    696       REAL,allocatable,save :: Ma(:,:)        ! undilute upward mass flux
    697 c$OMP THREADPRIVATE(Ma)
    698 cym      SAVE Ma
    699       REAL,allocatable,save :: qcondc(:,:)    ! in-cld water content from convect
    700 c$OMP THREADPRIVATE(qcondc)
    701 cym      SAVE qcondc
    702589      REAL wdn(klon), tdn(klon), qdn(klon)
    703 
    704       REAL,allocatable,save :: wd(:) ! sb
    705 c$OMP THREADPRIVATE(wd)
    706 cym      SAVE wd       ! sb
    707 
    708       REAL,allocatable,save :: sigd(:)
    709590c
    710591c=================================================================================================
     
    714595      REAL mip(klon,klev)  ! mass flux shed by the adiab ascent at each level
    715596      REAL Vprecip(klon,klev)   ! precipitation vertical profile
    716       REAL,allocatable,save :: cin(:)            ! CIN
    717       REAL,allocatable,save :: ftd(:,:)       ! differential heating between wake and environment
    718       REAL,allocatable,save :: fqd(:,:)       ! differential moistening between wake and environment
    719 c34EK
    720 c -- Variables de controle de ALE et ALP
    721       REAL,allocatable,save :: ALE(:)     ! Energie disponible pour soulevement : utilisee par la         
    722 c convection d'Emanuel pour le declenchement et la regulation
    723       REAL,allocatable,save :: ALP(:)     ! Puissance  disponible pour soulevement           !
    724597c
    725598      REAL wape_prescr, fip_prescr
     
    731604      REAL ment(klon,klev,klev),sij(klon,klev,klev)
    732605      REAL dd_t(klon,klev),dd_q(klon,klev)
    733 cnouvelles variables pour le couplage convection-couche limite
    734       real,allocatable,save :: Ale_bl(:)
    735       real,allocatable,save :: Alp_bl(:)
    736       integer,allocatable,save :: lalim_conv(:)
    737       real,allocatable,save :: wght_th(:,:)
    738606      real alp_bl_prescr
    739607      save alp_bl_prescr
     
    748616      REAL t_wake(klon,klev),q_wake(klon,klev) ! wake pour la convection
    749617
    750       REAL,allocatable,save :: wake_deltat(:,:)     ! Wake : ecart de temperature avec la
    751 c                                              zone non perturbee
    752       REAL,allocatable,save :: wake_deltaq(:,:)     ! Wake : ecart d'humidite avec la
    753 c                                              zone non perturbee
    754618      REAL wake_dth(klon,klev)        ! wake : temp pot difference
    755619
     
    765629      REAL wake_dp_deltomg(klon,klev) ! Wake : gradient vertical de wake_omg
    766630      REAL wake_spread(klon,klev)     ! spreading term in wake_delt
    767       REAL,allocatable,save :: wake_Cstar(:)           ! vitesse d'etalement de la poche
     631c
    768632cpourquoi y'a pas de save??
    769633      REAL wake_h(klon)               ! Wake : hauteur de la poche froide
    770       REAL,allocatable,save :: wake_s(:)               ! Wake : fraction surfacique occupee par
    771 c                                              la poche froide
     634c
    772635      INTEGER wake_k(klon)            ! Wake sommet
    773636c
     
    776639c
    777640      REAL wake_pe(klon)              ! Wake potential energy - WAPE
    778       REAL,allocatable,save :: wake_fip(:)             ! Gust Front Impinging power - ALP
    779641
    780642      REAL wake_gfl(klon)             ! Gust Front Length
    781643      REAL wake_dens(klon)
    782644c
    783       REAL,allocatable,save :: dt_wake(:,:)
    784       REAL,allocatable,save :: dq_wake(:,:) ! LS tendencies due to wake
    785645c
    786646      REAL dt_dwn(klon,klev)
     
    820680c@$$      PARAMETER (offline=.false.)
    821681c@$$      INTEGER physid
    822       REAL,allocatable,save :: pfrac_impa(:,:)! Produits des coefs lessivage impaction
    823 c$OMP THREADPRIVATE(pfrac_impa)
    824 cym      save pfrac_impa
    825       REAL,allocatable,save :: pfrac_nucl(:,:)! Produits des coefs lessivage nucleation
    826 c$OMP THREADPRIVATE(pfrac_nucl)
    827 cym      save pfrac_nucl
    828       REAL,allocatable,save :: pfrac_1nucl(:,:)! Produits des coefs lessi nucl (alpha = 1)
    829 c$OMP THREADPRIVATE(pfrac_1nucl)
    830 cym      save pfrac_1nucl
    831682      REAL frac_impa(klon,klev) ! fractions d'aerosols lessivees (impaction)
    832683      REAL frac_nucl(klon,klev) ! idem (nucleation)
     
    839690      REAL rain_tiedtke(klon),snow_tiedtke(klon)
    840691c
    841 
    842       REAL,allocatable,save :: total_rain(:), nday_rain(:)
    843 c$OMP THREADPRIVATE(total_rain,nday_rain)
    844 cym      save total_rain, nday_rain
    845692cIM 050204 END
    846693      REAL evap(klon), devap(klon) ! evaporation et sa derivee
     
    871718      REAL pctsrf_new(klon,nbsrf) !pourcentage surfaces issus d'ORCHIDEE
    872719
    873 cym      REAL paire_ter(klon)        !surfaces terre
    874       REAL,allocatable,save ::  paire_ter(:)        !surfaces terre
    875 c$OMP THREADPRIVATE(paire_ter)
    876    
    877 cIM
    878720cym      SAVE pctsrf                 ! sous-fraction du sol
    879 
    880       REAL,allocatable,save :: albsol1(:) ! albedo du sol total pour SW visible
    881 c$OMP THREADPRIVATE(albsol1)
    882       REAL,allocatable,save :: albsol2(:) ! albedo du sol total pour SW proche IR
    883 c$OMP THREADPRIVATE(albsol2)     
    884 
    885       REAL,allocatable,save :: wo(:,:)
    886 c$OMP THREADPRIVATE(wo)
    887 cym     SAVE wo                     ! ozone
    888721
    889722cIM sorties
     
    932765c Variables locales
    933766c
    934       real,allocatable,save :: clwcon0(:,:),rnebcon0(:,:)
    935 cym      save rnebcon, clwcon
    936 c$OMP THREADPRIVATE(clwcon0,rnebcon0)
    937767      REAL rhcl(klon,klev)    ! humiditi relative ciel clair
    938768      REAL dialiq(klon,klev)  ! eau liquide nuageuse
     
    954784      REAL zxfluxv(klon, klev)
    955785CXXX
    956       REAL,allocatable,save :: heat(:,:)    ! chauffage solaire
    957 c$OMP THREADPRIVATE(heat)
    958       REAL,allocatable,save :: heat0(:,:)   ! chauffage solaire ciel clair
    959 c$OMP THREADPRIVATE(heat0)
    960       REAL,allocatable,save :: cool(:,:)    ! refroidissement infrarouge
    961 c$OMP THREADPRIVATE(cool)
    962       REAL,allocatable,save :: cool0(:,:)   ! refroidissement infrarouge ciel clair
    963 c$OMP THREADPRIVATE(cool0)
    964       REAL,allocatable,save :: topsw(:), toplw(:)
    965 c$OMP THREADPRIVATE(topsw,toplw)
    966       real,allocatable,save :: sollwdown(:)    ! downward LW flux at surface
    967 c$OMP THREADPRIVATE(sollwdown)
    968 cIM BEG
    969       real,allocatable,save :: sollwdownclr(:)    ! downward CS LW flux at surface
    970 c$OMP THREADPRIVATE(sollwdownclr)
    971       real,allocatable,save :: toplwdown(:)       ! downward CS LW flux at TOA
    972 c$OMP THREADPRIVATE(toplwdown)
    973       real,allocatable,save :: toplwdownclr(:)    ! downward CS LW flux at TOA
    974 c$OMP THREADPRIVATE(toplwdownclr)
    975 cIM END
    976       REAL,allocatable,save :: topsw0(:),toplw0(:),solsw0(:),sollw0(:)
    977 c$OMP THREADPRIVATE( topsw0,toplw0,solsw0,sollw0)
    978       REAL,allocatable,save :: albpla(:)
    979 c$OMP THREADPRIVATE(albpla)
     786c
    980787      REAL fsollw(klon, nbsrf)   ! bilan flux IR pour chaque sous surface
    981788      REAL fsolsw(klon, nbsrf)   ! flux solaire absorb. pour chaque sous surface
     
    1033840      REAL dnwd0(klon,klev)     ! unsaturated downdraft mass flux
    1034841      REAL tvp(klon,klev)       ! virtual temp of lifted parcel
    1035       REAL,allocatable,save :: cape(:)           ! CAPE
    1036 c$OMP THREADPRIVATE(cape)
    1037 cym      SAVE cape
    1038842      CHARACTER*40 capemaxcels  !max(CAPE)
    1039843
    1040       REAL,allocatable,save :: pbase(:)          ! cloud base pressure
    1041 c$OMP THREADPRIVATE(pbase)
    1042 cym      SAVE pbase
    1043       REAL,allocatable,save :: bbase(:)          ! cloud base buoyancy
    1044 c$OMP THREADPRIVATE(bbase)
    1045 cym      SAVE bbase
    1046844      REAL rflag(klon)          ! flag fonctionnement de convect
    1047845      INTEGER iflagctrl(klon)          ! flag fonctionnement de convect
     
    1073871*********************************************************
    1074872*     declarations
    1075       real,save,allocatable :: zqasc(:,:)
    1076 c$OMP THREADPRIVATE(zqasc)
    1077 cym      save zqasc
    1078873     
    1079874*********************************************************
     
    1087882      REAL prfl(klon,klev+1), psfl(klon,klev+1)
    1088883c
    1089       INTEGER,allocatable,save :: ibas_con(:), itop_con(:)
    1090 c$OMP THREADPRIVATE(ibas_con,itop_con)
    1091 cym
    1092 cym      SAVE ibas_con,itop_con
    1093 cym
    1094       REAL,SAVE,ALLOCATABLE :: rain_con(:)
    1095 c$OMP THREADPRIVATE(rain_con)
    1096884      REAL rain_lsc(klon)
    1097       REAL,SAVE,ALLOCATABLE :: snow_con(:)
    1098 c$OMP THREADPRIVATE(snow_con)
    1099885      REAL snow_lsc(klon)
    1100886c
    1101887      REAL ratqss(klon,klev),ratqsc(klon,klev)
    1102888      real ratqsbas,ratqshaut
    1103 cym      save ratqsbas,ratqshaut, ratqs
    1104889      save ratqsbas,ratqshaut
    1105 c$OMP THREADPRIVATE(ratqsbas,ratqshaut)
    1106890      real zpt_conv(klon,klev)
    1107891
     
    12751059
    12761060cIM: t2m, q2m, u10m, v10m et t2mincels, t2maxcels
    1277       REAL,SAVE,ALLOCATABLE :: u10m(:,:), v10m(:,:) !vents a 10m
    1278 c$OMP THREADPRIVATE(u10m,v10m)
    12791061      REAL zt2m(klon), zq2m(klon)             !temp., hum. 2m moyenne s/ 1 maille
    12801062      REAL zu10m(klon), zv10m(klon)           !vents a 10m moyennes s/1 maille
     
    12831065cjq   Aerosol effects (Johannes Quaas, 27/11/2003)
    12841066      REAL sulfate(klon, klev) ! SO4 aerosol concentration [ug/m3]
    1285       REAL,allocatable,save :: sulfate_pi(:,:) ! SO4 aerosol concentration [ug/m3] (pre-industrial value)
    1286 c$OMP THREADPRIVATE(sulfate_pi)
    1287 cym      SAVE sulfate_pi
    12881067
    12891068      REAL cldtaupi(klon,klev)  ! Cloud optical thickness for pre-industrial (pi) aerosols
     
    12951074
    12961075      ! Aerosol optical properties
    1297       REAL,SAVE,ALLOCATABLE :: tau_ae(:,:,:), piz_ae(:,:,:)
    1298 c$OMP THREADPRIVATE(tau_ae,piz_ae)
    1299       REAL,SAVE,ALLOCATABLE :: cg_ae(:,:,:)
    1300 c$OMP THREADPRIVATE(cg_ae)
    1301 
    13021076#ifdef INCA_AER
    13031077#ifdef CPP_COUPLE
    13041078! Aerosol optical properties by INCA model
    1305       REAL, SAVE, ALLOCATABLE  ::    tau_inca(:,:,:,:)
    1306       REAL, SAVE, ALLOCATABLE  ::    piz_inca(:,:,:,:)
    1307       REAL, SAVE, ALLOCATABLE  ::    cg_inca(:,:,:,:)
    1308       REAL, SAVE, ALLOCATABLE  ::    ccm(:,:,:)
    13091079      CHARACTER*4              ::    rfname(9)
    13101080
    1311       REAL,SAVE,ALLOCATABLE :: topswad_inca(:), solswad_inca(:) ! Aerosol direct effect.
    1312       REAL,SAVE,ALLOCATABLE :: topswad0_inca(:), solswad0_inca(:) ! Aerosol direct effect.
    1313       REAL,SAVE,ALLOCATABLE :: topswai_inca(:), solswai_inca(:) ! Aerosol indirect effect.
    1314       REAL,SAVE,ALLOCATABLE :: topsw_inca(:,:), solsw_inca(:,:)
    1315       REAL,SAVE,ALLOCATABLE :: topsw0_inca(:,:), solsw0_inca(:,:)
    13161081#endif
    13171082#endif
    1318       REAL,SAVE,ALLOCATABLE :: topswad(:), solswad(:) ! Aerosol direct effect.
    1319 c$OMP THREADPRIVATE(topswad,solswad)
    1320       ! ok_ade=T -ADE=topswad-topsw
    1321 
    1322       REAL,SAVE,ALLOCATABLE :: topswai(:), solswai(:) ! Aerosol indirect effect.
    1323 c$OMP THREADPRIVATE(topswai,solswai)
    1324       ! ok_aie=T ->
    1325       !        ok_ade=T -AIE=topswai-topswad
    1326       !        ok_ade=F -AIE=topswai-topsw
    1327 
    13281083      REAL aerindex(klon)       ! POLDER aerosol index
    13291084     
     
    13881143      if (first) then
    13891144     
    1390       allocate( swdn0(klon,klevp1), swdn(klon,klevp1))
    1391       allocate( swup0(klon,klevp1), swup(klon,klevp1))
    1392       allocate( SWdn200clr(klon), SWdn200(klon))
    1393       allocate( SWup200clr(klon), SWup200(klon))
    1394       allocate( lwdn0(klon,klevp1), lwdn(klon,klevp1))
    1395       allocate( lwup0(klon,klevp1), lwup(klon,klevp1))
    1396       allocate( LWdn200clr(klon), LWdn200(klon))
    1397       allocate( LWup200clr(klon), LWup200(klon))
    1398       allocate( LWdnTOA(klon), LWdnTOAclr(klon))
    1399       allocate( deltat(klon))
    1400       allocate( zuthe(klon),zvthe(klon))
    1401       allocate( alb_neig(klon))
    1402       allocate( ema_workcbmf(klon))
    14031145cCR:nvelles variables convection/poches froides
    1404       allocate( sigd(klon))
    1405       allocate( cin(klon))
    1406       allocate( ftd(klon,klev))
    1407       allocate( fqd(klon,klev))
    1408       allocate( ALE(klon))
    1409       allocate( ALP(klon))
    1410       allocate( Ale_bl(klon))
    1411       allocate( Alp_bl(klon))
    1412       allocate( lalim_conv(klon))
    1413       allocate( wght_th(klon,klev))
    1414       allocate( wake_deltat(klon,klev))
    1415       allocate( wake_deltaq(klon,klev))
    1416       allocate( wake_Cstar(klon))
    1417       allocate( wake_s(klon))
    1418       allocate( wake_fip(klon))
    1419       allocate( dt_wake(klon,klev))
    1420       allocate( dq_wake(klon,klev))
    1421 cfinCR
    1422       allocate( ema_cbmf(klon))
    1423       allocate( ema_pcb(klon))
    1424       allocate( ema_pct(klon)) 
    1425       allocate( Ma(klon,klev) )
    1426       allocate( qcondc(klon,klev)) 
    1427       allocate( wd(klon) )
    1428       allocate( pfrac_impa(klon,klev))
    1429       allocate( pfrac_nucl(klon,klev))
    1430       allocate( pfrac_1nucl(klon,klev))
    1431       allocate( total_rain(klon), nday_rain(klon))
    1432       allocate( albsol1(klon))
    1433       allocate( albsol2(klon))
    1434       allocate( wo(klon,klev))
    1435       allocate( heat(klon,klev)    )
    1436       allocate( heat0(klon,klev)  )
    1437       allocate( cool(klon,klev)    )
    1438       allocate( cool0(klon,klev)   )
    1439       allocate( topsw(klon), toplw(klon))
    1440       allocate( sollwdown(klon)    )
    1441       allocate( sollwdownclr(klon)  )
    1442       allocate( toplwdown(klon)      )
    1443       allocate( toplwdownclr(klon)   )
    1444       allocate( topsw0(klon), toplw0(klon), solsw0(klon), sollw0(klon))
    1445       allocate( albpla(klon))
    1446       allocate( cape(klon)   )       
    1447       allocate( pbase(klon)   )     
    1448       allocate( bbase(klon)    )     
    1449       allocate( ibas_con(klon), itop_con(klon))
    1450       allocate( sulfate_pi(klon, klev))
    1451       allocate( paire_ter(klon))
    1452       allocate(tsumSTD(klon,nlevSTD,nout))
    1453       allocate(usumSTD(klon,nlevSTD,nout))
    1454       allocate(vsumSTD(klon,nlevSTD,nout))
    1455       allocate(wsumSTD(klon,nlevSTD,nout))
    1456       allocate(phisumSTD(klon,nlevSTD,nout))
    1457       allocate(qsumSTD(klon,nlevSTD,nout))
    1458       allocate(rhsumSTD(klon,nlevSTD,nout))
    1459       allocate(uvsumSTD(klon,nlevSTD,nout))
    1460       allocate(vqsumSTD(klon,nlevSTD,nout))
    1461       allocate(vTsumSTD(klon,nlevSTD,nout))
    1462       allocate(wqsumSTD(klon,nlevSTD,nout))
    1463       allocate( vphisumSTD(klon,nlevSTD,nout))
    1464       allocate( wTsumSTD(klon,nlevSTD,nout))
    1465       allocate( u2sumSTD(klon,nlevSTD,nout))
    1466       allocate( v2sumSTD(klon,nlevSTD,nout))
    1467       allocate( T2sumSTD(klon,nlevSTD,nout))
    1468       allocate( seed_old(klon,napisccp))
    1469       allocate( pct_ocean(klon,nbregdyn))
    1470       allocate( rlonPOS(klon))
    1471       allocate( newsst(klon))
    1472       allocate( zqasc(klon,klev))
    1473       allocate( rain_con(klon))
    1474       allocate( u10m(klon,nbsrf), v10m(klon,nbsrf))
    1475       allocate( topswad(klon), solswad(klon))
    1476       allocate( topswai(klon), solswai(klon) )
    1477 #ifdef INCA_AER
    1478 #ifdef CPP_COUPLE
    1479       allocate( topswad_inca(klon), solswad_inca(klon))
    1480       allocate( topswad0_inca(klon), solswad0_inca(klon))
    1481       allocate( topswai_inca(klon), solswai_inca(klon))
    1482       allocate( topsw_inca(klon,9), solsw_inca(klon,9))
    1483       allocate( topsw0_inca(klon,9), solsw0_inca(klon,9))
    1484       allocate( tau_inca(klon,klev,9,2))
    1485       allocate( piz_inca(klon,klev,9,2))
    1486       allocate( cg_inca(klon,klev,9,2))
    1487       allocate( ccm(klon,klev,2) )
    1488 #endif
    1489 #endif
    1490       allocate( clwcon0(klon,klev),rnebcon0(klon,klev))
    1491       allocate( clwcon0th(klon,klev),rnebcon0th(klon,klev))
    1492       allocate( tau_ae(klon,klev,2), piz_ae(klon,klev,2))
    1493       allocate( cg_ae(klon,klev,2))
    1494       allocate( snow_con(klon))
    1495       allocate( tnondef(klon,nlevSTD,nout))
    14961146     
    14971147      print*, '================================================='
     
    15831233         rnebcon(:,:) = 0.0
    15841234         clwcon(:,:) = 0.0
    1585          paire_ter(:) = 0.0
    1586 c        nhistoW(:,:,:,:) = 0.0
    1587 c        histoW(:,:,:,:) = 0.0
    15881235! fin anne
    15891236
     
    16211268             PRINT*, "Using method MELLOR&YAMADA"
    16221269         endif
    1623           pbl_tke(:,:,:) = 1.e-8
    1624 
    16251270
    16261271         CALL phyetat0 ("startphy.nc",dtime,co2_ppm_etat0,solaire_etat0,
Note: See TracChangeset for help on using the changeset viewer.