SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
read_default_idealn.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 read_default_ideal_n (DGL, &
7  hprogram)
8 ! #############################################################
9 !
10 !!**** *READ_IDEAL_CONF* - routine to read the configuration for IDEAL
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 !! Modified 01/2006 : sea flux parameterization.
37 !-------------------------------------------------------------------------------
38 !
39 !* 0. DECLARATIONS
40 ! ------------
41 !
42 !
43 !
45 !
47 !
48 USE mode_pos_surf
49 !
50 USE modi_get_default_nam_n
51 USE modi_get_luout
52 !
53 USE modd_read_namelist, ONLY : lnam_read
54 USE modn_ideal_n
55 !
56 !
57 USE yomhook ,ONLY : lhook, dr_hook
58 USE parkind1 ,ONLY : jprb
59 !
60 IMPLICIT NONE
61 !
62 !* 0.1 Declarations of arguments
63 ! -------------------------
64 !
65 !
66 TYPE(diag_ideal_t), INTENT(INOUT) :: dgl
67 !
68  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling ISBA
69 !
70 !* 0.2 Declarations of local variables
71 ! -------------------------------
72 !
73 !
74 LOGICAL :: gfound ! Return code when searching namelist
75 INTEGER :: iluout ! output listing logical unit
76 INTEGER :: iludes ! .des file logical unit
77 INTEGER :: imi
78 REAL(KIND=JPRB) :: zhook_handle
79 !-------------------------------------------------------------------------------
80 !
81 IF (lhook) CALL dr_hook('READ_DEFAULT_IDEAL_N',0,zhook_handle)
82  CALL get_luout(hprogram,iluout)
83 !
84  CALL get_default_nam_n(hprogram,'READ ',iludes)
85 !
86 IF (iludes==0 .AND. lhook) CALL dr_hook('READ_DEFAULT_IDEAL_N',1,zhook_handle)
87 IF (iludes==0) RETURN
88 !
90 !
91 IF (imi.NE.-1 .AND. lnam_read) CALL init_nam_diag_surfn(dgl)
92 
93 IF (lnam_read) THEN
94  !
95  !* reading of namelist
96  ! -------------------
97  !
98  CALL posnam(iludes,'NAM_DIAG_SURFN',gfound,iluout)
99  IF (gfound) READ(unit=iludes,nml=nam_diag_surfn)
100  !
101 ENDIF
102 !
103 IF (imi.NE.-1) CALL update_nam_diag_surfn(dgl)
104 IF (lhook) CALL dr_hook('READ_DEFAULT_IDEAL_N',1,zhook_handle)
105 !
106 !-------------------------------------------------------------------------------
107 !
108 END SUBROUTINE read_default_ideal_n
subroutine init_nam_diag_surfn(DGF)
subroutine update_nam_diag_surfn(DGF)
subroutine posnam(KULNAM, HDNAML, OFOUND, KLUOUT)
subroutine read_default_ideal_n(DGL, HPROGRAM)
subroutine get_luout(HPROGRAM, KLUOUT)
Definition: get_luout.F90:6
integer function get_current_model_index_surfex()
subroutine get_default_nam_n(HPROGRAM, HACTION, KLUDES)