Ignore:
Timestamp:
Jul 22, 2024, 9:29:09 PM (4 months ago)
Author:
abarral
Message:

Replace most uses of CPP_DUST by the corresponding logical defined in lmdz_cppkeys_wrapper.F90
Convert several files from .F to .f90 to allow Dust to compile w/o rrtm/ecrad
Create lmdz_yoerad.f90
(lint) Remove "!" on otherwise empty line

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Amaury_dev/libf/phylmd/cvltr_scav.F90

    r5082 r5099  
    1 !
     1
    22! $Id $
    3 !
     3
    44SUBROUTINE cvltr_scav(pdtime, da, phi,phi2,d1a,dam, mpIN,epIN, &
    55     sigd,sij,wght_cvfd,clw,elij,epmlmMm,eplaMm,    &
     
    1010     qPa,qMel,qTrdi,dtrcvMA,Mint,                   &
    1111     zmfd1a,zmfphi2,zmfdam)
    12   !
     12
    1313  USE IOIPSL
    1414  USE dimphy
     
    3333  REAL,DIMENSION(klon,klev),INTENT(IN)      :: d1a,dam ! matrices pour simplifier
    3434  REAL,DIMENSION(klon,klev,klev),INTENT(IN) :: phi2    ! l'ecriture des tendances
    35   !
     35
    3636  REAL,DIMENSION(klon,klev),INTENT(IN)      :: mpIN
    3737  REAL,DIMENSION(klon,klev+1),INTENT(IN)    :: paprs  ! pression aux 1/2 couches (bas en haut)
     
    4040  REAL,DIMENSION(klon,klev),INTENT(IN)      :: upd   ! saturated updraft mass flux
    4141  REAL,DIMENSION(klon,klev),INTENT(IN)      :: dnd   ! saturated downdraft mass flux
    42   !
     42
    4343  REAL,DIMENSION(klon,klev),INTENT(IN)      :: wdtrainA   ! masses precipitantes de l'asc adiab
    4444  REAL,DIMENSION(klon,klev),INTENT(IN)      :: wdtrainM   ! masses precipitantes des melanges
     
    5959  REAL,DIMENSION(klon),INTENT(IN)           :: sigd
    6060  INTEGER,DIMENSION(klon),INTENT(IN)        :: icb,inb
    61   !
     61
    6262  REAL,DIMENSION(klon,klev),INTENT(IN) :: ccntrAA_3d
    6363  REAL,DIMENSION(klon,klev),INTENT(IN) :: ccntrENV_3d
    6464  REAL,DIMENSION(klon,klev),INTENT(IN) :: coefcoli_3d
    65   !
     65
    6666  ! Sortie
    6767  REAL,DIMENSION(klon,klev,nbtr),INTENT(OUT)     :: dtrcv     ! tendance totale (bas en haut)
     
    7171  REAL,DIMENSION(klon,klev,nbtr),INTENT(OUT)     :: dtrsat    ! tendance trsp+sat scav
    7272  REAL,DIMENSION(klon,klev,nbtr),INTENT(OUT)     :: dtrUscav  ! tendance du lessivage courant unsat
    73   !
     73
    7474  ! Variables locales
    7575  INTEGER                           :: i,j,k
     
    116116!!!
    117117  REAL,DIMENSION(klon,klev)         :: imp              ! coefficient d'impaction
    118   !
     118
    119119  LOGICAL,DIMENSION(klon,klev) :: NO_precip
    120120  ! var tmp tests
     
    142142!!  ENDDO
    143143!>jyg
    144   !
     144
    145145  ! initialisation pour flux de traceurs, td et autre
    146   !
     146
    147147  trsptrac = 0.
    148148  scavtrac = 0.
     
    308308  ENDDO
    309309!!!!!
    310   !
     310
    311311  ! rajout du terme lie a l ascendance induite
    312   !
     312
    313313  DO j=2,klev
    314314     DO i=1,klon
     
    316316     END DO
    317317  END DO
    318   !
     318
    319319  ! tendance courants insatures  ! sans lessivage ancien schema
    320   !
     320
    321321  DO k=1,klev
    322322     DO j=1,klev
     
    326326     END DO
    327327  END DO
    328   !
     328
    329329  ! =========================================
    330330  ! calcul des tendances liees aux courants satures   j <-> z ; k <-> z'
     
    338338  END DO
    339339  !RL
    340   !
     340
    341341  DO j=1,klev
    342342     DO i=1,klon
     
    347347     END DO
    348348  END DO
    349   !
     349
    350350  DO k=1,klev
    351351     DO j=1,klev
     
    540540                         (pmflxr(i,j+1)+pmflxs(i,j+1)+Pa(i,j)+Pm(i,j))*&
    541541                         (-mp(i,j+1)*qDi(i,j+1,it)))
    542                     !
     542
    543543                    qPr(i,j,it)=kappa(i,j)*(&
    544544                         (-mp(i,j+1)-imp(i,j)/RG*dxpres(i,j))*&
     
    558558                         (pmflxr(i,j+1)+pmflxs(i,j+1)+Pa(i,j)+Pm(i,j))*&
    559559                         (-mp(i,j+1)*(qDi(i,j+1,it)-tr(i,j,it))-mp(i,j)*tr(i,j,it)))
    560                     !
     560
    561561                    qPr(i,j,it)=kappa(i,j)*(&
    562562                         (-mp(i,j)-imp(i,j)/RG*dxpres(i,j))*&
     
    622622              uscavtrac= (-mp(i,k)+mp(i,k+1))*(qDi(i,k,it)-tr(i,k,it))&
    623623                   + mp(i,k)*(tr(i,k-1,it)-tr(i,k,it))
    624               !
     624
    625625              !        if(it.eq.3) write(*,'(I2,1X,a,5X,e20.12,82X,a,e20.12)')k,' det incloud',&
    626626              !                    (-mp(i,k)+mp(i,k+1))*(qDi(i,k,it)-tr(i,k,it))*pdtimeRG/dxpres(i,k)+&
     
    630630           ELSEIF(mp(i,k)>mp(i,k+1).AND.mp(i,k)>1.e-10) THEN
    631631              uscavtrac= mp(i,k)*(tr(i,k-1,it)-tr(i,k,it))
    632               !
     632
    633633              !         if(it.eq.3) write(*,'(I2,1X,a,5X,e20.12,82X,a,e20.12)')k,' ent incloud',uscavtrac*pdtimeRG/dxpres(i,k), 'mp',mp(i,k)
    634634              !=!------------------------------------------------------------- end ent/det
     
    656656              uscavtrac= (-0.+mp(i,2))*(qDi(i,k,it)-tr(i,k,it)) !&
    657657              !                   + mp(i,2)*(0.-tr(i,k,it))
    658               !
     658
    659659              !       if(it.eq.3) write(*,'(I2,1X,a,e20.12,84X,a,e20.12)')k,' 1 det',&
    660660              !                  (-0.+mp(i,2))*(qDi(i,k,it)-tr(i,k,it))*pdtimeRG/dxpres(i,k)+&
     
    696696  !         conservMA=conservMA+dtrcvMA(i,k,it)*   &
    697697  !        (paprs(i,k)-paprs(i,k+1))/RG
    698   !
     698
    699699  !      if(it.eq.3)  write(*,'(I2,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12,2X,a,e20.12)') k,&
    700700  !         'MA td ',dtrcvMA(i,k,it)*dxpres(i,k)/RG,&
Note: See TracChangeset for help on using the changeset viewer.