SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
assim_townn.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 assim_town_n (U, T, TOP, &
7  hprogram,ki,pt2m_o,htest)
8 
9 ! ###############################################################################
10 !
11 !!**** *ASSIM_TOWN_n * - Chooses the surface schemes for TOWN parts
12 !!
13 !! PURPOSE
14 !! -------
15 !!
16 !!** METHOD
17 !! ------
18 !!
19 !! REFERENCE
20 !! ---------
21 !!
22 !!
23 !! AUTHOR
24 !! ------
25 !! T. Aspelien
26 !!
27 !! MODIFICATIONS
28 !! -------------
29 !! Original 04/2012
30 !!--------------------------------------------------------------------
31 !
32 !
33 !
34 USE modd_surf_atm_n, ONLY : surf_atm_t
35 USE modd_teb_n, ONLY : teb_t
37 !
38 USE modd_surfex_mpi, ONLY : nrank, npio
39 !
40 USE modd_csts, ONLY : xpi
41 USE modn_io_offline, ONLY : csurf_filetype
42 !
43 !
44 USE yomhook, ONLY : lhook, dr_hook
45 USE parkind1, ONLY : jprb
46 !
47 USE modi_abor1_sfx
48 USE modi_assim_teb_n
49 !
50 IMPLICIT NONE
51 !
52 !* 0.1 declarations of arguments
53 !
54 !
55 TYPE(surf_atm_t), INTENT(INOUT) :: u
56 TYPE(teb_t), INTENT(INOUT) :: t
57 TYPE(teb_options_t), INTENT(INOUT) :: top
58 !
59  CHARACTER(LEN=6), INTENT(IN) :: hprogram ! program calling surf. schemes
60 INTEGER, INTENT(IN) :: ki
61 REAL,DIMENSION(kI), INTENT(IN) :: pt2m_o
62  CHARACTER(LEN=2), INTENT(IN) :: htest ! must be equal to 'OK'
63 !
64 !* 0.2 declarations of local variables
65 !
66 !-------------------------------------------------------------------------------------
67 !
68 REAL(KIND=JPRB) :: zhook_handle
69 
70 IF (lhook) CALL dr_hook('ASSIM_TOWN_N',0,zhook_handle)
71 
72 IF (htest/='OK') THEN
73  CALL abor1_sfx('ASSIM_TOWN_n: FATAL ERROR DURING ARGUMENT TRANSFER')
74 END IF
75 
76 IF (u%CTOWN=='TEB ') THEN
77  CALL assim_teb_n(u, t, top, &
78  hprogram,ki,pt2m_o,htest)
79 ELSE
80  IF (nrank==npio) WRITE(*,*) 'No assimilation done for scheme: ',trim(u%CTOWN)
81 END IF
82 
83 IF (lhook) CALL dr_hook('ASSIM_TOWN_N',1,zhook_handle)
84 !
85 !-------------------------------------------------------------------------------------
86 !
87 END SUBROUTINE assim_town_n
subroutine assim_teb_n(U, T, TOP, HPROGRAM, KI, PT2M_O, HTEST)
Definition: assim_tebn.F90:6
subroutine abor1_sfx(YTEXT)
Definition: abor1_sfx.F90:6
subroutine assim_town_n(U, T, TOP, HPROGRAM, KI, PT2M_O, HTEST)
Definition: assim_townn.F90:6