source: palm/trunk/SOURCE/print_1d.f90 @ 1319

Last change on this file since 1319 was 1319, checked in by raasch, 8 years ago

last commit documented

  • Property svn:keywords set to Id
File size: 5.1 KB
Line 
1 SUBROUTINE print_1d
2
3!--------------------------------------------------------------------------------!
4! This file is part of PALM.
5!
6! PALM is free software: you can redistribute it and/or modify it under the terms
7! of the GNU General Public License as published by the Free Software Foundation,
8! either version 3 of the License, or (at your option) any later version.
9!
10! PALM is distributed in the hope that it will be useful, but WITHOUT ANY
11! WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12! A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
13!
14! You should have received a copy of the GNU General Public License along with
15! PALM. If not, see <http://www.gnu.org/licenses/>.
16!
17! Copyright 1997-2014 Leibniz Universitaet Hannover
18!--------------------------------------------------------------------------------!
19!
20! Current revisions:
21! -----------------
22!
23!
24! Former revisions:
25! -----------------
26! $Id: print_1d.f90 1319 2014-03-17 15:08:44Z raasch $
27!
28! 1318 2014-03-17 13:35:16Z raasch
29! barrier argument removed from cpu_log,
30! module interfaces removed
31!
32! 1036 2012-10-22 13:43:42Z raasch
33! code put under GPL (PALM 3.9)
34!
35! RCS Log replace by Id keyword, revision history cleaned up
36!
37! Revision 1.11  2006/02/23 12:50:43  raasch
38! Preliminary no output of time-averaged data
39!
40! Revision 1.1  1997/09/19 07:45:22  raasch
41! Initial revision
42!
43!
44! Description:
45! ------------
46! List output of 1D-profiles.
47!------------------------------------------------------------------------------!
48
49    USE arrays_3d
50    USE control_parameters
51    USE cpulog
52    USE indices
53    USE pegrid
54    USE statistics
55
56    IMPLICIT NONE
57
58
59    CHARACTER (LEN=20) ::  period_chr
60    INTEGER ::  k, sr
61
62
63!
64!-- If required, compute statistics.
65    IF ( .NOT. flow_statistics_called )  CALL flow_statistics
66
67!
68!-- Flow_statistics has its own cpu-time measuring.
69    CALL cpu_log( log_point(18), 'print_1d', 'start' )
70
71    IF ( myid == 0 )  THEN
72!
73!--    Open file for list output of profiles.
74       CALL check_open( 16 )
75
76!
77!--    Prepare header.
78       period_chr = ' no time-average!'
79
80!
81!--    Output for the total domain (and each subregion, if applicable).
82       DO  sr = 0, statistic_regions
83!
84!--       Write header.
85          WRITE ( 16, 112 )
86          WRITE ( 16, 100 )  TRIM( run_description_header ) // '    ' // &
87                             TRIM( region( sr ) ), TRIM( period_chr ), 'uv'
88          WRITE ( 16, 105 )  TRIM( simulated_time_chr )
89!          ELSE
90!             WRITE ( 16, 106 )  TRIM( simulated_time_chr ),           &
91!                                averaging_interval_pr, average_count_pr
92!          ENDIF
93          WRITE ( 16, 111 )
94
95!
96!--       Output of values on the scalar levels.
97          WRITE ( 16, 120 )
98          WRITE ( 16, 111 )
99          DO  k = nzt+1, nzb, -1
100             WRITE ( 16, 121)  k, zu(k), hom(k,1,1,sr),           &
101                               hom(k,1,1,sr) - hom(k,1,5,sr),     &
102                               hom(k,1,2,sr),                     &
103                               hom(k,1,2,sr) - hom(k,1,6,sr),     &
104                               hom(k,1,4,sr),                     &
105                               hom(k,1,4,sr) - hom(k,1,7,sr),     &
106                               hom(k,1,8,sr), hom(k,1,9,sr),      &
107                               hom(k,1,10,sr), hom(k,1,11,sr), zu(k), k
108          ENDDO
109          WRITE ( 16, 111 )
110          WRITE ( 16, 120 )
111          WRITE ( 16, 111 )
112
113!
114!--       Output of values on the w-levels.
115          WRITE ( 16, 112 )
116          WRITE ( 16, 100 )  TRIM( run_description_header ) // '    ' // &
117                             TRIM( region( sr ) ), TRIM( period_chr ), 'w'
118          WRITE ( 16, 105 )  TRIM( simulated_time_chr )
119!          ELSE
120!             WRITE ( 16, 106 )  TRIM( simulated_time_chr ),           &
121!                                averaging_interval_pr, average_count_pr
122!          ENDIF
123          WRITE ( 16, 111 )
124
125          WRITE ( 16, 130 )
126          WRITE ( 16, 111 )
127          DO  k = nzt+1, nzb, -1
128             WRITE ( 16, 131)  k, zw(k), hom(k,1,16,sr),            &
129                               hom(k,1,18,sr), hom(k,1,12,sr), &
130                               hom(k,1,19,sr), hom(k,1,14,sr), &
131                               hom(k,1,20,sr), zw(k), k
132          ENDDO
133          WRITE ( 16, 111 )
134          WRITE ( 16, 130 )
135          WRITE ( 16, 111 )
136
137       ENDDO
138
139    ENDIF
140
141    CALL cpu_log( log_point(18), 'print_1d', 'stop' )
142
143!
144!-- Formats.
145100 FORMAT (1X,A/1X,10('-')/ &
146            ' Horizontally',A,' averaged profiles on the ',A,'-level')
147105 FORMAT (' Time: ',A)
148106 FORMAT (' Time: ',A,18X,'averaged over',F7.1,' s (',I4, &
149            ' Single times)')
150111 FORMAT (1X,131('-'))
151112 FORMAT (/)
152120 FORMAT ('   k     zu      u     du     v     dv     pt    dpt    ', &
153            'e      Km    Kh     l      zu      k')
154121 FORMAT (1X,I4,1X,F7.1,1X,F6.2,1X,F5.2,1X,F6.2,1X,F5.2,2X,F6.2,1X,F5.2, &
155            1X,F6.4,1X,F5.2,1X,F5.2,1X,F6.2,1X,F7.1,2X,I4)
156130 FORMAT ('   k     zw      w''pt''     wpt       w''u''      wu       ', &
157            ' w''v''      wv        zw      k')
158131 FORMAT (1X,I4,1X,F7.1,6(1X,E9.3),1X,F7.1,2X,I4)
159
160
161 END SUBROUTINE print_1d
Note: See TracBrowser for help on using the repository browser.