SURFEX v8.1
General documentation of Surfex
prep_nature.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_nature (DTCO, IM, UG, U, USS, GCP, &
7  HPROGRAM,HATMFILE,HATMFILETYPE,HPGDFILE,HPGDFILETYPE,YDCTL)
8 ! #################################################################################
9 !
10 !!**** *PREP_NATURE* - chooses type of scheme to prepare for nature
11 !!
12 !! PURPOSE
13 !! -------
14 !
15 !!** METHOD
16 !! ------
17 !!
18 !! REFERENCE
19 !! ---------
20 !!
21 !!
22 !! AUTHOR
23 !! ------
24 !! V. Masson
25 !!
26 !! MODIFICATIONS
27 !! -------------
28 !! Original 01/2004
29 !! P. Marguinaud10/2014, Support for a 2-part PREP
30 !!------------------------------------------------------------------
31 !
33 USE modd_surfex_n, ONLY : isba_model_t
35 USE modd_surf_atm_n, ONLY : surf_atm_t
36 USE modd_sso_n, ONLY : sso_t
38 !
39 USE mode_prep_ctl, ONLY : prep_ctl
40 !
41 USE modi_prep_isba
42 !
43 USE yomhook ,ONLY : lhook, dr_hook
44 USE parkind1 ,ONLY : jprb
45 !
46 IMPLICIT NONE
47 !
48 !* 0.1 declarations of arguments
49 !
50 !
51 TYPE(data_cover_t), INTENT(INOUT) :: DTCO
52 TYPE(isba_model_t), INTENT(INOUT) :: IM
53 TYPE(surf_atm_grid_t), INTENT(INOUT) :: UG
54 TYPE(surf_atm_t), INTENT(INOUT) :: U
55 TYPE(sso_t), INTENT(INOUT) :: USS
56 TYPE(grid_conf_proj_t),INTENT(INOUT) :: GCP
57 type(prep_ctl), INTENT(INOUT) :: ydctl
58 !
59  CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! program calling surf. schemes
60  CHARACTER(LEN=28), INTENT(IN) :: HATMFILE ! name of the Atmospheric file
61  CHARACTER(LEN=6), INTENT(IN) :: HATMFILETYPE! type of the Atmospheric file
62  CHARACTER(LEN=28), INTENT(IN) :: HPGDFILE ! name of the Atmospheric file
63  CHARACTER(LEN=6), INTENT(IN) :: HPGDFILETYPE! type of the Atmospheric file
64 REAL(KIND=JPRB) :: ZHOOK_HANDLE
65 !
66 !
67 !* 0.2 declarations of local variables
68 !
69 !-------------------------------------------------------------------------------------
70 !
71 IF (lhook) CALL dr_hook('PREP_NATURE',0,zhook_handle)
72 IF (u%CNATURE=='ISBA ' .OR. u%CNATURE=='TSZ0 ' ) THEN
73  CALL prep_isba(dtco, ug, u, uss, gcp, im%SB, im%G, im%O, im%S, im%NK, im%NP, im%NPE, &
74  hprogram,hatmfile,hatmfiletype,hpgdfile,hpgdfiletype,ydctl)
75 END IF
76 IF (lhook) CALL dr_hook('PREP_NATURE',1,zhook_handle)
77 !
78 !-------------------------------------------------------------------------------------
79 !
80 END SUBROUTINE prep_nature
subroutine prep_isba(DTCO, UG, U, USS, GCP, SB, IG, IO, S, NK, NP, NPE, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_isba.F90:8
integer, parameter jprb
Definition: parkind1.F90:32
subroutine prep_nature(DTCO, IM, UG, U, USS, GCP, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_nature.F90:8
logical lhook
Definition: yomhook.F90:15