PAULSON_PSIM_0D Function

public function PAULSON_PSIM_0D(PZ_O_LMO)

Uses

Arguments

Type IntentOptional AttributesName
real, intent(in) :: PZ_O_LMO

Return Value real


Contents

Source Code


Source Code

FUNCTION PAULSON_PSIM_0D(PZ_O_LMO)
  USE MODD_CSTS
  IMPLICIT NONE  
  REAL, INTENT(IN)    :: PZ_O_LMO
  REAL                :: PAULSON_PSIM_0D
!
  REAL                :: ZX
  REAL(KIND=JPRB) :: ZHOOK_HANDLE

  IF (LHOOK) CALL DR_HOOK('MODE_SBLS:PAULSON_PSIM_0D',0,ZHOOK_HANDLE)
  ZX=1.
  IF ( PZ_O_LMO < 0. ) THEN
    ZX=(1.-15.*PZ_O_LMO)**(0.25)
    PAULSON_PSIM_0D = LOG( (1.+ZX**2)*(1+ZX)**2/8. ) - 2.*ATAN(ZX) + XPI/2.
  ELSE
    PAULSON_PSIM_0D = - 4.7 * PZ_O_LMO
  END IF
IF (LHOOK) CALL DR_HOOK('MODE_SBLS:PAULSON_PSIM_0D',1,ZHOOK_HANDLE)
END FUNCTION PAULSON_PSIM_0D