Changeset 2523 for trunk/LMDZ.VENUS


Ignore:
Timestamp:
May 17, 2021, 12:16:36 PM (4 years ago)
Author:
slebonnois
Message:

SL: Venus GCM outputs for VCD + bug correction in moldiff_red

Location:
trunk/LMDZ.VENUS/libf/phyvenus
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.VENUS/libf/phyvenus/moldiff_red.F90

    r2464 r2523  
    176176        allocate(dij(ncompdiff,ncompdiff))
    177177
    178         call moldiffcoeff_red(dij,indic_diff,gcmind,ncompdiff,nq)
     178        call moldiffcoeff_red(dij,indic_diff,gcmind,ncompdiff)
    179179        print*,'MOLDIFF  EXO'
    180180
  • trunk/LMDZ.VENUS/libf/phyvenus/moldiffcoeff_red.F

    r1621 r2523  
    8484      real dnh
    8585      logical,save :: firstcall=.true.
     86!     logical,parameter :: outputcoeffs=.true. ! to output 'coeffs.dat' file,
    8687      logical,parameter :: outputcoeffs=.false. ! to output 'coeffs.dat' file,
    8788                                                ! set outputcoeffs=.true.
     
    282283      enddo
    283284     
     285!!! TEST !!! Augmentation des coeffs CO2/CO et CO2/O
     286!     do n=2,ncompdiff2
     287!     if ((tname(gcmind(n)).eq.'co').or.(tname(gcmind(n)).eq.'o')) then
     288!      dij(1,n)=dij(1,n)*1000.
     289!      dij(n,1)=dij(1,n)
     290!     endif
     291!     enddo
     292!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     293
    284294      if (outputcoeffs) then
    285295       ! output coefficients in 'coeffs.dat' file
     
    287297       do n=1,ncompdiff2
    288298        do nn=n,ncompdiff2
    289           write(56,*) n,nn,dij(n,nn)    !*1.e5/1.381e-23/(273**1.75)
     299          write(56,*) tname(gcmind(n)),tname(gcmind(nn)),dij(n,nn)      !*1.e5/1.381e-23/(273**1.75)
    290300        enddo
    291301       enddo
  • trunk/LMDZ.VENUS/libf/phyvenus/physiq_mod.F

    r2486 r2523  
    178178      integer,save :: itap        ! physics counter
    179179      REAL delp(klon,klev)        ! epaisseur d'une couche
    180       REAL omega(klon,klev)       ! vitesse verticale en Pa/s
     180      REAL omega(klon,klev)       ! vitesse verticale en Pa/s (+ downward)
     181      REAL vertwind(klon,klev)    ! vitesse verticale en m/s (+ upward)
    181182     
    182183      INTEGER igwd,idx(klon),itest(klon)
     
    359360      REAL :: tr_hedin(klon,klev,nqmax)
    360361      REAL :: d_tr(klon,klev,nqmax)
     362c pour sorties
     363      REAL :: col_dens_tr(klon,nqmax)
    361364
    362365c pour ioipsl
     
    861864c====================================================================
    862865
    863 c Calcule de vitesse verticale a partir de flux de masse verticale
    864       DO k = 1, klev
    865        DO i = 1, klon
    866         omega(i,k) = RG*flxmw(i,k) / cell_area(i)
    867        END DO
    868       END DO
     866! Compute vertical velocity (Pa/s) from vertical mass flux
     867! Need to linearly interpolate mass flux to mid-layers
     868      do k=1,klev-1
     869         omega(1:klon,k) = 0.5*RG*(flxmw(1:klon,k)+flxmw(1:klon,k+1))
     870     .                      / cell_area(1:klon)
     871      enddo
     872      omega(1:klon,klev) = 0.5*RG*flxmw(1:klon,klev) / cell_area(1:klon)
    869873
    870874c======
     
    19301934      endif
    19311935
     1936c calcul vitesse verticale en m/s
     1937      DO k = 1, klev
     1938       DO i = 1, klon
     1939        vertwind(i,k) = -omega(i,k)/(rho(i,k)*RG)
     1940       END DO
     1941      END DO
     1942
    19321943c------------------------
    19331944c Calcul moment cinetique
     
    20132024      CALL send_xios_field("vitv",-1.*v_seri)
    20142025      CALL send_xios_field("vitw",omega)
     2026      CALL send_xios_field("vitwz",vertwind)
    20152027      CALL send_xios_field("Kz",ycoefh)
    20162028      CALL send_xios_field("mmean",mmean)
     
    20592071     $                           tr_seri(:,:,iq)*mmean(:,:)/m_tr(iq))
    20602072         end do
     2073
     2074! tracers in gas phase, column densities
     2075         do iq = 1,nqmax - nmicro
     2076            col_dens_tr(:,iq)=0.
     2077            do k = 1, klev
     2078              col_dens_tr(:,iq) = col_dens_tr(:,iq) +
     2079     $              tr_seri(:,k,iq)* (paprs(:,k)-paprs(:,k+1)) / RG
     2080            end do
     2081            call send_xios_field("col_"//tname(iq),col_dens_tr(:,iq))
     2082         end do
     2083
    20612084
    20622085! tracers in liquid phase, volume mixing ratio
  • trunk/LMDZ.VENUS/libf/phyvenus/phytrac_chimie.F

    r2464 r2523  
    6868      if (debutphy) then
    6969     
     70!!--- Adjustment of Helium amount
     71!        if (i_he/=0) then
     72!           trac(:,:,i_he)=trac(:,:,i_he)*20.
     73!        endif
     74!!---
     75
    7076!-------------------------------------------------------------------
    7177!        case of tracers re-initialisation with chemistry
Note: See TracChangeset for help on using the changeset viewer.