SURFEX v8.1
General documentation of Surfex
dealloc_surf_atmn.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 dealloc_surf_atm_n (YSC)
7 ! #################################################################################
8 !
9 !!**** *DEALLOC_SURF_ATM_n * - Deallocate all arrays
10 !!
11 !! PURPOSE
12 !! -------
13 !
14 !!** METHOD
15 !! ------
16 !!
17 !! REFERENCE
18 !! ---------
19 !!
20 !!
21 !! AUTHOR
22 !! ------
23 !! V. Masson
24 !!
25 !! MODIFICATIONS
26 !! -------------
27 !! Original 01/2004
28 !!------------------------------------------------------------------
29 !
32 USE modd_ch_surf_n, ONLY : ch_surf_init
36 USE modd_canopy_n, ONLY : canopy_init
39 USE modd_sso_n, ONLY : sso_init
40 USE modd_sv_n, ONLY : sv_init
41 !
43 !
44 USE modd_ideal_n, ONLY : ideal_init
45 !
46 USE modd_dst_n, ONLY : dst_np_init
47 USE modd_slt_n, ONLY : slt_init
48 !
50 !
51 USE modd_surfex_n, ONLY : surfex_t
52 !
53 USE modi_dealloc_sea_n
54 USE modi_dealloc_inland_water_n
55 USE modi_dealloc_nature_n
56 USE modi_dealloc_town_n
57 !
58 USE yomhook ,ONLY : lhook, dr_hook
59 USE parkind1 ,ONLY : jprb
60 !
61 IMPLICIT NONE
62 !
63 !* 0.1 declarations of arguments
64 !
65 !
66 !* 0.2 declarations of local variables
67 !
68 !-------------------------------------------------------------------------------------
69 !
70 TYPE(surfex_t), INTENT(INOUT) :: YSC
71 !
72 !
73 REAL(KIND=JPRB) :: ZHOOK_HANDLE
74 
75 IF (lhook) CALL dr_hook('DEALLOC_SURF_ATM_N',0,zhook_handle)
76 !
77  CALL data_cover_init(ysc%DTCO)
78  CALL data_tsz0_init(ysc%DTZ)
79  CALL dummy_surf_fields_init(ysc%DUU)
80  !
81  CALL surf_atm_grid_init(ysc%UG)
82  CALL diag_options_init(ysc%DUO)
83  CALL diag_init(ysc%DU)
84  CALL diag_init(ysc%DUC)
85  CALL diag_np_init(ysc%DUP,0)
86  CALL diag_np_init(ysc%DUPC,0)
87  CALL sso_init(ysc%USS)
88  CALL canopy_init(ysc%SB)
89  !
90  CALL diag_init(ysc%DL)
91  CALL diag_init(ysc%DLC)
92  CALL ideal_init(ysc%L)
93  !
94  CALL sv_init(ysc%SV)
95  CALL ch_surf_init(ysc%CHU)
96  CALL ch_emis_field_init(ysc%CHE)
97  CALL ch_emis_snap_init(ysc%CHN)
98  CALL emis_gr_field_init(ysc%EGF)
99  CALL slt_init(ysc%SLT)
100 !
101  CALL dst_np_init(ysc%NDST,0)
102 !
103 !-------------------------------------------------------------------------------------
104 !
105 IF (ysc%U%NDIM_SEA >0) CALL dealloc_sea_n(ysc%SM, ysc%U)
106 !
107 IF (ysc%U%NDIM_WATER >0) CALL dealloc_inland_water_n(ysc%WM, ysc%FM, ysc%U)
108 !
109 IF (ysc%U%NDIM_NATURE >0) CALL dealloc_nature_n(ysc%IM, ysc%U)
110 !
111 IF (ysc%U%NDIM_TOWN >0) CALL dealloc_town_n(ysc%TM, ysc%GDM, ysc%GRM, ysc%U)
112 !
113 !-------------------------------------------------------------------------------------
114 !
115  CALL surf_atm_init(ysc%U)
116 !
117 !-------------------------------------------------------------------------------------
118 !
119 IF (lhook) CALL dr_hook('DEALLOC_SURF_ATM_N',1,zhook_handle)
120 !
121 !--------------------------------------------------------------------------------------
122 !
123 END SUBROUTINE dealloc_surf_atm_n
subroutine diag_init(D)
Definition: modd_diagn.F90:224
subroutine ch_emis_snap_init(YCH_EMIS_SNAP)
subroutine dealloc_surf_atm_n(YSC)
subroutine ch_surf_init(YCH_SURF)
subroutine sv_init(YSV)
Definition: modd_svn.F90:65
subroutine dealloc_sea_n(SM, U)
Definition: dealloc_sean.F90:7
subroutine sso_init(YSSO)
Definition: modd_sson.F90:103
subroutine diag_np_init(ND, KPATCH)
Definition: modd_diagn.F90:203
subroutine ideal_init(YIDEAL)
Definition: modd_idealn.F90:64
subroutine emis_gr_field_init(YEMIS_GR_FIELD)
integer, parameter jprb
Definition: parkind1.F90:32
subroutine slt_init(YSLT)
Definition: modd_sltn.F90:26
subroutine dealloc_town_n(TM, GDM, GRM, U)
subroutine dummy_surf_fields_init(YDUMMY_SURF_FIELDS)
subroutine surf_atm_grid_init(YSURF_ATM_GRID)
subroutine dealloc_inland_water_n(WM, FM, U)
subroutine dealloc_nature_n(IM, U)
logical lhook
Definition: yomhook.F90:15
subroutine ch_emis_field_init(YCH_EMIS_FIELD)
subroutine data_tsz0_init(YDATA_TSZ0)
subroutine diag_options_init(DGO)
Definition: modd_diagn.F90:176
subroutine data_cover_init(YDATA_COVER)
subroutine dst_np_init(YDST_NP, KPATCH)
Definition: modd_dstn.F90:60
subroutine canopy_init(SB)
subroutine surf_atm_init(YSURF_ATM)