Ignore:
Timestamp:
Feb 21, 2025, 2:01:55 PM (3 days ago)
Author:
asima
Message:

Encapsulating in modules 3 Dust (SPLA) subroutines with identical names in INCA
(see also r5505);
Related changes in other files, especially some cleaning of chem_mod_f.90.
Everything cf the new coding conventions bien sûr !

File:
1 moved

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/Dust/lmdz_spla_bl_for_dms.f90

    r5553 r5554  
    1 SUBROUTINE bl_for_dms(u,v,paprs,pplay,cdragh,cdragm &
     1MODULE lmdz_spla_bl_for_dms
     2
     3CONTAINS
     4
     5SUBROUTINE spla_bl_for_dms(klon,klev,u,v,paprs,pplay,cdragh,cdragm &
    26        ,t,q,tsol,ustar,obklen)
    3   USE dimphy
    4 USE yomcst_mod_h
    5   USE yoethf_mod_h
    6 IMPLICIT NONE
     7
     8  USE lmdz_spla_ini, ONLY : RG,RD,RCPD,RLVTT,RLSTT,RETV,RTT, &
     9          R2ES,R3IES,R3LES,R4IES,R4LES,R5IES,R5LES,RVTMP2
     10
     11 !USE yoethf_mod_h
    712  !
    813  !===================================================================
     
    1924  !===================================================================
    2025  !
     26  IMPLICIT NONE
     27
    2128  INCLUDE "FCTTRE.h"
     29
     30  !
     31  INTEGER, intent(in) :: klon,klev
    2232  !
    2333  ! Arguments :
    24   REAL :: u(klon,klev)          ! vent zonal
    25   REAL :: v(klon,klev)          ! vent meridien
    26   REAL :: paprs(klon,klev+1)    ! niveaux de pression aux intercouches (Pa)
    27   REAL :: pplay(klon,klev)      ! niveaux de pression aux milieux... (Pa)
    28   REAL :: cdragh(klon)          ! coefficient de trainee pour la chaleur
    29   REAL :: cdragm(klon)          ! coefficient de trainee pour le vent
    30   REAL :: t(klon,klev)          ! temperature
    31   REAL :: q(klon,klev)          ! humidite kg/kg
    32   REAL :: tsol(klon)            ! temperature du sol
    33   REAL :: ustar(klon)           ! vitesse de friction
    34   REAL :: obklen(klon)          ! longueur de Monin-Obukhov
     34  REAL, dimension(klon,klev), intent(in) :: u          ! vent zonal
     35  REAL, dimension(klon,klev), intent(in) :: v          ! vent meridien
     36  REAL, dimension(klon,klev+1), intent(in):: paprs    ! niveaux de pression aux intercouches (Pa)
     37  REAL, dimension(klon,klev), intent(in) :: pplay     ! niveaux de pression aux milieux... (Pa)
     38  REAL, dimension(klon,klev), intent(in) :: t          ! temperature
     39  REAL, dimension(klon,klev), intent(in) :: q          ! humidite kg/kg
     40  REAL, dimension(klon), intent(in) :: cdragh          ! coefficient de trainee pour la chaleur
     41  REAL, dimension(klon), intent(in) :: cdragm          ! coefficient de trainee pour le vent
     42  REAL, dimension(klon), intent(in) :: tsol            ! temperature du sol
     43  REAL, dimension(klon), intent(out) :: ustar           ! vitesse de friction
     44  REAL, dimension(klon), intent(out) :: obklen          ! longueur de Monin-Obukhov
    3545  !
    3646  ! Locales :
     
    4353  REAL :: zxt, zxu, zxv, zxq, zxqs, zxmod, taux, tauy
    4454  REAL :: zcor, zdelta, zcvm5
    45   REAL :: z(klon,klev)
     55  REAL, dimension(klon,klev) :: z
    4656  REAL :: zx_alf1, zx_alf2 ! parametres pour extrapolation
    47   REAL :: khfs(klon)       ! surface kinematic heat flux [mK/s]
    48   REAL :: kqfs(klon)       ! sfc kinematic constituent flux [m/s]
    49   REAL :: heatv(klon)      ! surface virtual heat flux
     57  REAL, dimension(klon) :: khfs       ! surface kinematic heat flux [mK/s]
     58  REAL, dimension(klon) :: kqfs       ! sfc kinematic constituent flux [m/s]
     59  REAL, dimension(klon) :: heatv      ! surface virtual heat flux
    5060
    5161
     
    102112  ENDDO
    103113  !
    104 END SUBROUTINE bl_for_dms
     114END SUBROUTINE spla_bl_for_dms
     115
     116END MODULE lmdz_spla_bl_for_dms
Note: See TracChangeset for help on using the changeset viewer.