OL_READ_ATM_ASCII Subroutine

subroutine OL_READ_ATM_ASCII(KFORC_STEP, PTA, PQA, PWIND, PDIR_SW, PSCA_SW, PLW, PSNOW, PRAIN, PPS, PCO2, PDIR)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: KFORC_STEP
real, intent(out), DIMENSION(:,:):: PTA
real, intent(out), DIMENSION(:,:):: PQA
real, intent(out), DIMENSION(:,:):: PWIND
real, intent(out), DIMENSION(:,:):: PDIR_SW
real, intent(out), DIMENSION(:,:):: PSCA_SW
real, intent(out), DIMENSION(:,:):: PLW
real, intent(out), DIMENSION(:,:):: PSNOW
real, intent(out), DIMENSION(:,:):: PRAIN
real, intent(out), DIMENSION(:,:):: PPS
real, intent(out), DIMENSION(:,:):: PCO2
real, intent(out), DIMENSION(:,:):: PDIR

Contents

Source Code


Source Code

SUBROUTINE OL_READ_ATM_ASCII (KFORC_STEP,                                 &
                              PTA,PQA,PWIND,PDIR_SW,PSCA_SW,PLW,PSNOW,    &
                              PRAIN,PPS,PCO2,PDIR                         )  
!**************************************************************************
!
!!    PURPOSE
!!    -------
!         Read in the ascii file the atmospheric forcing for the actual time
!         step KFORC_STEP, and for the next one.
!         The two time step are needed for the time interpolation of the
!         forcing.
!         If the end of the file  is reached, set the two step to the last
!         values.
!         Return undef value if the variable is not present
!!
!!**  METHOD
!!    ------
!!
!!    EXTERNAL
!!    --------
!!
!!    IMPLICIT ARGUMENTS
!!    ------------------
!!
!!    REFERENCE
!!    ---------
!!
!!
!!    AUTHOR
!!    ------
!!      A. Lemonsu  *Meteo France*
!!
!!    MODIFICATIONS
!!    -------------
!!      Original     03/2008       
!
USE MODI_READ_SURF_ATM
!
USE YOMHOOK   ,ONLY : LHOOK,   DR_HOOK
USE PARKIND1  ,ONLY : JPRB
!
IMPLICIT NONE
!
! global variables
REAL, DIMENSION(:,:),INTENT(OUT) :: PTA
REAL, DIMENSION(:,:),INTENT(OUT) :: PQA
REAL, DIMENSION(:,:),INTENT(OUT) :: PWIND
REAL, DIMENSION(:,:),INTENT(OUT) :: PDIR_SW
REAL, DIMENSION(:,:),INTENT(OUT) :: PSCA_SW
REAL, DIMENSION(:,:),INTENT(OUT) :: PLW
REAL, DIMENSION(:,:),INTENT(OUT) :: PSNOW
REAL, DIMENSION(:,:),INTENT(OUT) :: PRAIN
REAL, DIMENSION(:,:),INTENT(OUT) :: PPS
REAL, DIMENSION(:,:),INTENT(OUT) :: PCO2
REAL, DIMENSION(:,:),INTENT(OUT) :: PDIR
INTEGER,INTENT(IN)               :: KFORC_STEP
! local variables
REAL(KIND=JPRB) :: ZHOOK_HANDLE
!
! read data
IF (LHOOK) CALL DR_HOOK('OL_READ_ATM_ASCII',0,ZHOOK_HANDLE)
 CALL READ_SURF_ATM('ASCII ',PTA    (:,1:2),KFORC_STEP,2,122)
 CALL READ_SURF_ATM('ASCII ',PQA    (:,1:2),KFORC_STEP,2,123)
 CALL READ_SURF_ATM('ASCII ',PWIND  (:,1:2),KFORC_STEP,2,124)
 CALL READ_SURF_ATM('ASCII ',PLW    (:,1:2),KFORC_STEP,2,125)
 CALL READ_SURF_ATM('ASCII ',PDIR_SW(:,1:2),KFORC_STEP,2,126)
 CALL READ_SURF_ATM('ASCII ',PSCA_SW(:,1:2),KFORC_STEP,2,127)
 CALL READ_SURF_ATM('ASCII ',PRAIN  (:,1:2),KFORC_STEP,2,128)
 CALL READ_SURF_ATM('ASCII ',PSNOW  (:,1:2),KFORC_STEP,2,129)
 CALL READ_SURF_ATM('ASCII ',PPS    (:,1:2),KFORC_STEP,2,130)
 CALL READ_SURF_ATM('ASCII ',PDIR   (:,1:2),KFORC_STEP,2,131)
 CALL READ_SURF_ATM('ASCII ',PCO2   (:,1:2),KFORC_STEP,2,132)
!
IF (LHOOK) CALL DR_HOOK('OL_READ_ATM_ASCII',1,ZHOOK_HANDLE)
!
END SUBROUTINE OL_READ_ATM_ASCII