LMO_0D Function

public function LMO_0D(PUSTAR, PTHETA, PRV, PSFTH, PSFRV)

Arguments

Type IntentOptional AttributesName
real, intent(in) :: PUSTAR
real, intent(in) :: PTHETA
real, intent(in) :: PRV
real, intent(in) :: PSFTH
real, intent(in) :: PSFRV

Return Value real


Contents

Source Code


Source Code

FUNCTION LMO_0D(PUSTAR,PTHETA,PRV,PSFTH,PSFRV)
  USE MODD_CSTS
  USE MODD_SURF_PAR,  ONLY : XUNDEF
  IMPLICIT NONE  
  REAL, INTENT(IN)  :: PUSTAR
  REAL, INTENT(IN)  :: PTHETA
  REAL, INTENT(IN)  :: PRV
  REAL, INTENT(IN)  :: PSFTH
  REAL, INTENT(IN)  :: PSFRV
  REAL              :: LMO_0D
!
  REAL              :: ZTHETAV
  REAL              :: ZEPS
  REAL(KIND=JPRB) :: ZHOOK_HANDLE
!
!
  IF (LHOOK) CALL DR_HOOK('MODE_SBLS:LMO_0D',0,ZHOOK_HANDLE)
  ZEPS=(XRV-XRD)/XRD
!
!
  ZTHETAV = PTHETA * ( 1. +ZEPS * PRV)
!
  LMO_0D = XUNDEF
  IF ( PSFTH/ZTHETAV+ZEPS*PSFRV/=0. )                      &
    LMO_0D = - MAX(PUSTAR,1.E-6)**3                          &
             / ( XKARMAN * (  XG / ZTHETAV       * PSFTH     &
                            + XG * ZEPS * PSFRV )  )  

  IF(ABS(LMO_0D)>10000.) LMO_0D=XUNDEF
IF (LHOOK) CALL DR_HOOK('MODE_SBLS:LMO_0D',1,ZHOOK_HANDLE)

END FUNCTION LMO_0D