SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
init_pgd_surf_atm.F90
Go to the documentation of this file.
1 !SFX_LIC Copyright 1994-2014 CNRS, Meteo-France and Universite Paul Sabatier
2 !SFX_LIC This is part of the SURFEX software governed by the CeCILL-C licence
3 !SFX_LIC version 1. See LICENSE, CeCILL-C_V1-en.txt and CeCILL-C_V1-fr.txt
4 !SFX_LIC for details. version 1.
5 ! #################################################################################
6 SUBROUTINE init_pgd_surf_atm (YSC, &
7  hprogram,hinit,hatmfile,hatmfiletype, &
8  kyear, kmonth, kday, ptime )
9 ! #################################################################################
10 !
11 !!**** *INIT_PGD_SURF_ATM* - Call surface initialization for PGD fields only
12 !!
13 !! PURPOSE
14 !! -------
15 !
16 !!** METHOD
17 !! ------
18 !!
19 !! REFERENCE
20 !! ---------
21 !!
22 !!
23 !! AUTHOR
24 !! ------
25 !! V. Masson
26 !!
27 !! MODIFICATIONS
28 !! -------------
29 !! Original 01/2004
30 !! B. Decharme 04/2013 new coupling variables
31 !!------------------------------------------------------------------
32 !
33 !
34 !
35 USE modd_surfex_n, ONLY : surfex_t
36 !
37 !
38 USE yomhook ,ONLY : lhook, dr_hook
39 USE parkind1 ,ONLY : jprb
40 !
41 USE modi_init_surf_atm_n
42 !
43 IMPLICIT NONE
44 !
45 !* 0.1 declarations of arguments
46 !
47 !
48 TYPE(surfex_t), INTENT(INOUT) :: ysc
49 !
50  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling surf. schemes
51  CHARACTER(LEN=3), INTENT(IN) :: hinit ! fields to initialize 'ALL', 'PRE', 'PGD'
52  CHARACTER(LEN=28), INTENT(IN) :: hatmfile ! name of the Atmospheric file
53  CHARACTER(LEN=6), INTENT(IN) :: hatmfiletype! type of the Atmospheric file
54 INTEGER, INTENT(IN) :: kyear ! year
55 INTEGER, INTENT(IN) :: kmonth ! month
56 INTEGER, INTENT(IN) :: kday ! day
57 REAL, INTENT(IN) :: ptime ! time
58 !
59 !
60 !* 0.2 declarations of local variables
61 !
62  CHARACTER(LEN=6), DIMENSION(0) :: ysv ! name of all scalar variables
63 REAL, DIMENSION(0) :: zco2 ! CO2 concentration (kg/m3)
64 REAL, DIMENSION(0) :: zrhoa ! air density (kg/m3)
65 REAL, DIMENSION(0) :: zzenith ! solar zenithal angle
66 REAL, DIMENSION(0) :: zazim ! solar azimuthal angle (rad from N, clock)
67 REAL, DIMENSION(1) :: zsw_bands ! middle wavelength of each band
68 REAL, DIMENSION(0,1):: zdir_alb ! direct albedo for each band
69 REAL, DIMENSION(0,1):: zsca_alb ! diffuse albedo for each band
70 REAL, DIMENSION(0) :: zemis ! emissivity
71 REAL, DIMENSION(0) :: ztsrad ! radiative temperature
72 REAL, DIMENSION(0) :: ztsurf ! radiative temperature
73 REAL(KIND=JPRB) :: zhook_handle
74 !-------------------------------------------------------------------------------------
75 !
76 !* initialization of PGD fields of output domain
77 !
78 IF (lhook) CALL dr_hook('INIT_PGD_SURF_ATM',0,zhook_handle)
79  CALL init_surf_atm_n(ysc, &
80  hprogram,hinit,.false., &
81  0,0,1, &
82  ysv,zco2,zrhoa, &
83  zzenith,zazim,zsw_bands,zdir_alb,zsca_alb, &
84  zemis,ztsrad,ztsurf, &
85  kyear, kmonth, kday, ptime, &
86  hatmfile,hatmfiletype, 'OK' )
87 IF (lhook) CALL dr_hook('INIT_PGD_SURF_ATM',1,zhook_handle)
88 
89 !
90 !-------------------------------------------------------------------------------------
91 !
92 END SUBROUTINE init_pgd_surf_atm
subroutine init_surf_atm_n(YSC, HPROGRAM, HINIT, OLAND_USE, KI, KSV, KSW, HSV, PCO2, PRHOA, PZENITH, PAZIM, PSW_BANDS, PDIR_ALB, PSCA_ALB, PEMIS, PTSRAD, PTSURF, KYEAR, KMONTH, KDAY, PTIME, HATMFILE, HATMFILETYPE, HTEST)
subroutine init_pgd_surf_atm(YSC, HPROGRAM, HINIT, HATMFILE, HATMFILETYPE, KYEAR, KMONTH, KDAY, PTIME)