SURFEX v8.1
General documentation of Surfex
prep_inland_water.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 prep_inland_water (DTCO, USS, UG, U, GCP, FM, WM, &
7  HPROGRAM,HATMFILE,HATMFILETYPE,HPGDFILE,HPGDFILETYPE,YDCTL)
8 ! #################################################################################
9 !
10 !!**** *PREP_INLAND_WATER* - Chooses the surface schemes for lakes preparation
11 !!
12 !! PURPOSE
13 !! -------
14 !
15 !!** METHOD
16 !! ------
17 !!
18 !! REFERENCE
19 !! ---------
20 !!
21 !!
22 !! AUTHOR
23 !! ------
24 !! S. Malardel
25 !!
26 !! MODIFICATIONS
27 !! -------------
28 !! Original 01/2004
29 !! P. Marguinaud10/2014, Support for a 2-part PREP
30 !!------------------------------------------------------------------
31 !
32 !
34 USE modd_surfex_n, ONLY : flake_model_t
35 !
37 USE modd_sso_n, ONLY : sso_t
38 !
40 USE modd_surf_atm_n, ONLY : surf_atm_t
42 !
43 USE mode_prep_ctl, ONLY : prep_ctl
44 !
45 USE modi_prep_watflux
46 USE modi_prep_flake
47 !
48 USE yomhook ,ONLY : lhook, dr_hook
49 USE parkind1 ,ONLY : jprb
50 !
51 IMPLICIT NONE
52 !
53 !* 0.1 declarations of arguments
54 !
55 !
56 !
57 TYPE(data_cover_t), INTENT(INOUT) :: DTCO
58 TYPE(sso_t), INTENT(INOUT) :: USS
59 !
60 TYPE(surf_atm_grid_t), INTENT(INOUT) :: UG
61 TYPE(surf_atm_t), INTENT(INOUT) :: U
62 TYPE(grid_conf_proj_t),INTENT(INOUT) :: GCP
63 !
64 TYPE(flake_model_t), INTENT(INOUT) :: FM
65 TYPE(watflux_model_t), INTENT(INOUT) :: WM
66 type(prep_ctl), INTENT(INOUT) :: ydctl
67 !
68  CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! program calling surf. schemes
69  CHARACTER(LEN=28), INTENT(IN) :: HATMFILE ! name of the Atmospheric file
70  CHARACTER(LEN=6), INTENT(IN) :: HATMFILETYPE! type of the Atmospheric file
71  CHARACTER(LEN=28), INTENT(IN) :: HPGDFILE ! name of the Atmospheric file
72  CHARACTER(LEN=6), INTENT(IN) :: HPGDFILETYPE! type of the Atmospheric file
73 REAL(KIND=JPRB) :: ZHOOK_HANDLE
74 !
75 !
76 !* 0.2 declarations of local variables
77 !
78 !-------------------------------------------------------------------------------------
79 !
80 IF (lhook) CALL dr_hook('PREP_INLAND_WATER',0,zhook_handle)
81 IF (u%CWATER=='WATFLX') THEN
82  CALL prep_watflux(dtco, ug, u, gcp, wm%G, wm%W, wm%SB, hprogram,hatmfile,hatmfiletype,hpgdfile,hpgdfiletype,ydctl)
83 ELSE IF (u%CWATER=='FLAKE ') THEN
84  CALL prep_flake(dtco, uss, fm%G, fm%F, fm%SB, ug, u, gcp, hprogram,hatmfile,hatmfiletype,hpgdfile,hpgdfiletype,ydctl)
85 END IF
86 IF (lhook) CALL dr_hook('PREP_INLAND_WATER',1,zhook_handle)
87 !
88 !-------------------------------------------------------------------------------------
89 !
90 END SUBROUTINE prep_inland_water
subroutine prep_inland_water(DTCO, USS, UG, U, GCP, FM, WM, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
subroutine prep_watflux(DTCO, UG, U, GCP, WG, W, SB, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_watflux.F90:8
integer, parameter jprb
Definition: parkind1.F90:32
logical lhook
Definition: yomhook.F90:15
subroutine prep_flake(DTCO, USS, FG, F, SB, UG, U, GCP, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_flake.F90:8