SURFEX v8.1
General documentation of Surfex
prep_sea.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_sea (DTCO, UG, U, GCP, SM, &
7  HPROGRAM,HATMFILE,HATMFILETYPE,HPGDFILE,HPGDFILETYPE,YDCTL)
8 ! #################################################################################
9 !
10 !!**** *PREP_SEA* - chooses scheme var. to prepare for sea
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 !
36 !
39 USE modd_surf_atm_n, ONLY : surf_atm_t
40 !
41 USE mode_prep_ctl, ONLY : prep_ctl
42 !
43 USE modi_prep_seaflux
44 !
45 USE yomhook ,ONLY : lhook, dr_hook
46 USE parkind1 ,ONLY : jprb
47 !
48 IMPLICIT NONE
49 !
50 !* 0.1 declarations of arguments
51 !
52 !
53 TYPE(data_cover_t), INTENT(INOUT) :: DTCO
54 TYPE(surf_atm_grid_t), INTENT(INOUT) :: UG
55 TYPE(surf_atm_t), INTENT(INOUT) :: U
56 TYPE(grid_conf_proj_t),INTENT(INOUT) :: GCP
57 TYPE(seaflux_model_t), INTENT(INOUT) :: SM
58 type(prep_ctl), INTENT(INOUT) :: ydctl
59 !
60  CHARACTER(LEN=6), INTENT(IN) :: HPROGRAM ! program calling surf. schemes
61  CHARACTER(LEN=28), INTENT(IN) :: HATMFILE ! name of the Atmospheric file
62  CHARACTER(LEN=6), INTENT(IN) :: HATMFILETYPE! type of the Atmospheric file
63  CHARACTER(LEN=28), INTENT(IN) :: HPGDFILE ! name of the Atmospheric file
64  CHARACTER(LEN=6), INTENT(IN) :: HPGDFILETYPE! type of the Atmospheric file
65 REAL(KIND=JPRB) :: ZHOOK_HANDLE
66 !
67 !
68 !* 0.2 declarations of local variables
69 !
70 !-------------------------------------------------------------------------------------
71 !
72 IF (lhook) CALL dr_hook('PREP_SEA',0,zhook_handle)
73 IF (u%CSEA=='SEAFLX') THEN
74  CALL prep_seaflux(dtco, ug, u, gcp, sm%G, sm%SB, sm%S, sm%DTS, sm%O, sm%OR, &
75  hprogram,hatmfile,hatmfiletype,hpgdfile,hpgdfiletype,ydctl)
76 END IF
77 IF (lhook) CALL dr_hook('PREP_SEA',1,zhook_handle)
78 !
79 !-------------------------------------------------------------------------------------
80 !
81 END SUBROUTINE prep_sea
subroutine prep_seaflux(DTCO, UG, U, GCP, SG, SB, S, DTS, O, OR, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_seaflux.F90:8
integer, parameter jprb
Definition: parkind1.F90:32
logical lhook
Definition: yomhook.F90:15
subroutine prep_sea(DTCO, UG, U, GCP, SM, HPROGRAM, HATMFILE, HATMFILETYPE, HPGDFILE, HPGDFILETYPE, YDCTL)
Definition: prep_sea.F90:8