SURFEX  V8_0
Surfex V8_0 release
 All Classes Files Functions Variables
write_budget_coupl_rout.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 ! ##########################
8 ! ##########################
9 !
10 !!
11 !! PURPOSE
12 !! -------
13 !
14 !
15 !!** METHOD
16 !! ------
17 !
18 !! EXTERNAL
19 !! --------
20 !!
21 !! none
22 !!
23 !! IMPLICIT ARGUMENTS
24 !! ------------------
25 !!
26 !! REFERENCE
27 !! ---------
28 !!
29 !! AUTHOR
30 !! ------
31 !!
32 !! L. Bouilloud & B. Vincendon * Meteo-France *
33 !!
34 !! MODIFICATIONS
35 !! -------------
36 !!
37 !! Original 03/2008
38 !! 03/2014 (B. Vincendon) add new control variables
39 !-------------------------------------------------------------------------------
40 !
41 !* 0. DECLARATIONS
42 ! ------------
43 !
44 USE modd_topd_par, ONLY : nunit
45 USE modd_topodyn, ONLY : ccat, nncat, nnb_topd_step
47 !
48 USE modi_open_file
49 USE modi_close_file
50 !
51 USE yomhook ,ONLY : lhook, dr_hook
52 USE parkind1 ,ONLY : jprb
53 !
54 IMPLICIT NONE
55 !
56 !* 0.1 declarations of arguments
57 ! none
58 !* 0.2 declarations of local variables
59 INTEGER :: jcat,jstp ! loop control
60 INTEGER :: inb_var ! number of variable to write
61  CHARACTER(LEN=28) :: yfile ! file name
62  CHARACTER(LEN=40) :: yform ! Writing format
63 REAL(KIND=JPRB) :: zhook_handle
64 !-------------------------------------------------------------------------------
65 IF (lhook) CALL dr_hook('WRITE_BUDGET_COUPL_ROUT',0,zhook_handle)
66 !
67 !* 1. WRITING BUDGET FILES
68 ! ------------
69 inb_var=12
70 !
71 DO jcat=1,nncat
72  !
73  yform='(i6,12f15.1)'
74  yfile=trim('bilan_bv_')//trim(ccat(jcat))//trim('.txt')
75  !
76  CALL open_file('ASCII ',nunit,hfile=yfile,hform='FORMATTED',haction='WRITE')
77  !
78  WRITE(nunit,*) ' T',' ',yb_var(1),' ',yb_var(2),' ',&
79  yb_var(3),' ',yb_var(4),' ',&
80  yb_var(5),' ',yb_var(6),' ',&
81  yb_var(7),' ',yb_var(8),' ',&
82  yb_var(9),' ',yb_var(10),' ',&
83  yb_var(11),' ',yb_var(12)
84  !
85  DO jstp=1,nnb_topd_step
86  WRITE(nunit,yform) jstp,xb_var_bv(jstp,jcat,1:inb_var)
87  ENDDO
88  !
89  CALL close_file('ASCII ',nunit)
90  !
91  yfile=trim('bilan_nobv_')//trim(ccat(jcat))//trim('.txt')
92  !
93  CALL open_file('ASCII ',nunit,hfile=yfile,hform='FORMATTED',haction='WRITE')
94  !
95  WRITE(nunit,*) ' T',' ',yb_var(1),' ',yb_var(2),' ',&
96  yb_var(3),' ',yb_var(4),' ',&
97  yb_var(5),' ',yb_var(6),' ',&
98  yb_var(7),' ',yb_var(8),' ',&
99  yb_var(9),' ',yb_var(10),' ',&
100  yb_var(11),' ',yb_var(12)
101 
102  !
103  DO jstp=1,nnb_topd_step
104  WRITE(nunit,yform) jstp,xb_var_nobv(jstp,jcat,1:inb_var)
105  ENDDO
106  !
107  CALL close_file('ASCII ',nunit)
108  !
109  yform='(i6,5f15.1)'
110  yfile=trim('bilan_q.txt')
111  !
112  CALL open_file('ASCII ',nunit,hfile=yfile,hform='FORMATTED',haction='WRITE')
113  !
114  WRITE(nunit,*) ' T',' ',yb_varq(1),' ',yb_varq(2),' ',&
115  yb_varq(3),' ',yb_varq(4),' ',&
116  yb_varq(5),' '
117  !
118  DO jstp=1,nnb_topd_step
119  WRITE(nunit,yform) jstp,xb_var_q(jstp,jcat,1:5)
120  ENDDO
121  !
122  CALL close_file('ASCII ',nunit)
123 ! ENDIF
124  !
125 ENDDO !JCAT
126 
127 yform='(i6,12f15.1)'
128 yfile=trim('bilan_tot.txt')
129 !
130  CALL open_file('ASCII ',nunit,hfile=yfile,hform='FORMATTED',haction='WRITE')
131 !
132 WRITE(nunit,*) ' T',' ',yb_var(1),' ',yb_var(2),' ',&
133  yb_var(3),' ',yb_var(4),' ',&
134  yb_var(5),' ',yb_var(6),' ',&
135  yb_var(7),' ',yb_var(8),' ',&
136  yb_var(9),' ',yb_var(10),' ',&
137  yb_var(11),' ',yb_var(12)
138 
139 !
140 DO jstp=1,nnb_topd_step
141  WRITE(nunit,yform) jstp,xb_var_tot(jstp,1:inb_var)
142 ENDDO
143 !
144  CALL close_file('ASCII ',nunit)
145 !
146 IF (lhook) CALL dr_hook('WRITE_BUDGET_COUPL_ROUT',1,zhook_handle)
147 !
148 END SUBROUTINE write_budget_coupl_rout
subroutine write_budget_coupl_rout
subroutine close_file(HPROGRAM, KUNIT)
Definition: close_file.F90:6
subroutine open_file(HPROGRAM, KUNIT, HFILE, HFORM, HACTION, HACCESS, KRECL)
Definition: open_file.F90:6