SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
writesurf_atm_confn.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 writesurf_atm_conf_n (CHU, DGU, USS, &
7  hprogram)
8 ! #########################################
9 !
10 !!**** *MNHWRITE_SURF_ATM_CONF* - routine to write the configuration for the surface
11 !!
12 !! PURPOSE
13 !! -------
14 !!
15 !!** METHOD
16 !! ------
17 !!
18 !! EXTERNAL
19 !! --------
20 !!
21 !!
22 !! IMPLICIT ARGUMENTS
23 !! ------------------
24 !!
25 !! REFERENCE
26 !! ---------
27 !!
28 !!
29 !! AUTHOR
30 !! ------
31 !! V. Masson *Meteo France*
32 !!
33 !! MODIFICATIONS
34 !! -------------
35 !! Original 01/2003
36 !-------------------------------------------------------------------------------
37 !
38 !* 0. DECLARATIONS
39 ! ------------
40 !
41 !
42 !
43 !
44 !
45 USE modd_ch_surf_n, ONLY : ch_surf_t
48 !
49 USE modn_sso_n
51 !
53 USE modn_surf_atm
55 !
56 USE modi_get_default_nam_n
57 !
58 !
59 USE yomhook ,ONLY : lhook, dr_hook
60 USE parkind1 ,ONLY : jprb
61 !
62 IMPLICIT NONE
63 !
64 !* 0.1 Declarations of arguments
65 ! -------------------------
66 !
67 !
68 TYPE(ch_surf_t), INTENT(INOUT) :: chu
69 TYPE(diag_surf_atm_t), INTENT(INOUT) :: dgu
70 TYPE(surf_atm_sso_t), INTENT(INOUT) :: uss
71 !
72  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling ISBA
73 !
74 !
75 !* 0.2 Declarations of local variables
76 ! -------------------------------
77 !
78 INTEGER :: iludes
79 REAL(KIND=JPRB) :: zhook_handle
80 !
81 !-------------------------------------------------------------------------------
82 !
83 IF (lhook) CALL dr_hook('WRITESURF_ATM_CONF_N',0,zhook_handle)
84  CALL get_default_nam_n(hprogram,'WRITE',iludes)
85 !
86 IF (iludes==0 .AND. lhook) CALL dr_hook('WRITESURF_ATM_CONF_N',1,zhook_handle)
87 IF (iludes==0) RETURN
88 !
89 !-------------------------------------------------------------------------------
90 !
91  CALL init_nam_sson(uss)
92  CALL init_nam_ch_controln(chu)
93  CALL init_nam_ch_surfn(chu)
94  CALL init_nam_diag_surf_atmn(dgu)
95  CALL init_nam_diag_surfn(dgu)
97 !
98 WRITE(unit=iludes,nml=nam_sson)
99 WRITE(unit=iludes,nml=nam_ch_controln)
100 WRITE(unit=iludes,nml=nam_ch_surfn)
101 WRITE(unit=iludes,nml=nam_diag_surf_atmn)
102 WRITE(unit=iludes,nml=nam_diag_surfn)
103 WRITE(unit=iludes,nml=nam_write_diag_surfn)
104 WRITE(unit=iludes,nml=nam_chs_orilam)
105 WRITE(unit=iludes,nml=nam_surf_atm)
106 WRITE(unit=iludes,nml=nam_write_surf_atm)
107 IF (lhook) CALL dr_hook('WRITESURF_ATM_CONF_N',1,zhook_handle)
108 !
109 !
110 !-------------------------------------------------------------------------------
111 !
112 END SUBROUTINE writesurf_atm_conf_n
subroutine init_nam_ch_controln(CHI)
Definition: modn_isban.F90:350
subroutine init_nam_diag_surfn(DGF)
subroutine init_nam_ch_surfn(CHU)
subroutine init_nam_sson(USS)
Definition: modn_sson.F90:51
subroutine init_nam_write_diag_surfn(DGU)
subroutine writesurf_atm_conf_n(CHU, DGU, USS, HPROGRAM)
subroutine init_nam_diag_surf_atmn(DGU)
subroutine get_default_nam_n(HPROGRAM, HACTION, KLUDES)