source: palm/trunk/DOC/app/chapter_3.5.1.html @ 38

Last change on this file since 38 was 5, checked in by raasch, 18 years ago

html-documentation added

File size: 26.9 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html><head>
3
4  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
5 
6
7
8  <title>PALM chapter 3.5.1</title><meta name="GENERATOR" content="StarOffice 7 (Win32)">
9
10  <meta name="AUTHOR" content="Siegfried Raasch">
11
12  <meta name="CREATED" content="20040802;11451548">
13
14  <meta name="CHANGED" content="20041112;14401801">
15
16  <meta name="KEYWORDS" content="parallel LES model">
17
18  <style>
19<!--
20@page { size: 21cm 29.7cm }
21-->
22  </style></head>
23<body style="direction: ltr;" lang="en-US">
24
25<h3 style="line-height: 100%;">3.5.1 Interfaces for
26user-defined code<br>
27
28</h3>
29
30<p style="margin-bottom: 0cm; line-height: 100%;">The
31following table
32describes the available interfaces for user-defined code in the model,
33the
34names and possible arguments of the subroutines involved as well as
35actions which can be accomplished in these subroutines. <br>
36
37&nbsp; </p>
38
39<table style="width: 100%;" border="1" cellpadding="2" cellspacing="4">
40
41  <col width="211"> <col width="117"> <col width="862"> <tbody>
42
43    <tr>
44
45      <td width="211">
46      <p><font size="4"><b>Call location</b></font></p>
47
48      </td>
49
50      <td width="117">
51      <p><font size="4"><b>Subroutine name and
52argument</b></font></p>
53
54      </td>
55
56      <td style="width: 862px;">
57      <p><font size="4"><b>Possible actions</b></font></p>
58
59      </td>
60
61    </tr>
62
63    <tr><td>---</td><td><span style="font-family: monospace;"><a name="user"></a>MODULE user</span></td><td>All
64user-defined variables which are used outside the respective local
65scopes of the user-defined subroutines have to be declared here.</td></tr><tr valign="top">
66
67      <td width="211">
68      <p>End of <tt><font style="font-size: 10pt;" size="2">parin.f90</font></tt></p>
69
70      </td>
71
72      <td width="117">
73      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_parin"></a>user_parin</font></font></tt></p>
74
75      </td>
76
77      <td width="862">
78      <p>Declaration of user-defined parameters in the NAMELIST
79group <tt><font style="font-size: 10pt;" size="2">&amp;userpar</font></tt>.
80These
81parameters can be read from the local file <a href="chapter_3.4.html#PARIN">PARIN</a>
82and be used for steering the user-defined code (see <a href="chapter_4.0.html">chapter
834.0</a>). The user-defined parameter <a href="chapter_4.3.html#region">region</a>
84is already pre-defined in <tt><font style="font-size: 10pt;" size="2">&amp;userpar</font></tt>
85and must not be changed. Additional NAMELIST groups may be declared if
86desired.&nbsp; <br>
87
88The CPU time needed for executing <tt><font style="font-size: 10pt;" size="2">user_parin</font></tt>
89is included in the
90local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
91within the category &ldquo;initialisation&rdquo;.</p>
92
93      </td>
94
95    </tr>
96
97    <tr valign="top">
98
99      <td width="211">
100      <p>End of <tt><font style="font-size: 10pt;" size="2">header.f90</font></tt></p>
101
102      </td>
103
104      <td width="117">
105      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_header"></a>user_header( io )</font></font></tt></p>
106
107      </td>
108
109      <td width="862">
110      <p>Output of the values of the user-defined parameters to
111the
112local files <a href="chapter_3.4.html#HEADER">HEADER</a>
113and <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>.
114This output should be made anyway in order to subsequently check the
115parameter values used for the respective run. The number of the output
116unit is passed as an argument and must be used in each WRITE statement
117(e.g.: &ldquo;<tt><font face="Cumberland, monospace"><font style="font-size: 10pt;" size="2">WRITE </font><font style="font-size: 10pt;" size="2">( io,&hellip;</font></font></tt><font style="font-size: 10pt;" size="2">&rdquo;))</font>.
118By default, this
119subroutine only creates output if a user-defined NAMELIST is found in
120file <a href="chapter_3.4.html#PARIN">PARIN</a>
121(in this case <tt><font face="Thorndale, serif">the</font></tt>
122variable <tt><font style="font-size: 10pt;" size="2">user_defined_namelist_found</font></tt>
123is set&nbsp; <i>.TRUE.</i> in <tt><font style="font-size: 10pt;" size="2">user_parin</font></tt>).
124The names of any
125user-defined
126subdomains are displayed by default (see <a href="chapter_4.1.html#statistic_regions">statistic_regions</a>).</p>
127
128      </td>
129
130    </tr>
131
132    <tr valign="top">
133
134      <td width="211">
135      <p>End of <tt><font style="font-size: 10pt;" size="2">init_3d_model.f90</font></tt></p>
136
137      </td>
138
139      <td width="117">
140      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init"></a>user_init</font></font></tt></p>
141
142      </td>
143
144      <td width="862">
145      <p>Here, user-defined initialization actions which should
146be
147accomplished before the start of the 3D-model can be implemented (e.g.
148inhomogenous change of the surface temperature, the roughness length,
149or similar). At this point, all default parameter initializations of
150the model (<a href="chapter_4.1.html">chapter
1514.1</a>) have already been carried out at all.&nbsp; </p>
152
153      <p>One of the most important actions here is the definition
154of
155user-defined subdomains for statistic analysis and output (see <a href="chapter_4.1.html#statistic_regions">statistic_regions</a>
156and <a href="chapter_3.5.3.html">chapter
1573.5.3</a>).&nbsp; <br>
158
159CPU time for <tt><font style="font-size: 10pt;" size="2">user_init</font></tt>
160is considered in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
161within the category &ldquo;initialisation&rdquo;.</p>
162
163      </td>
164
165    </tr>
166
167    <tr>
168
169      <td style="vertical-align: top;"><tt><font style="font-size: 10pt;" size="2">DEFAULT</font></tt>
170case of <tt><font style="font-size: 10pt;" size="2">SELECT
171CASE( TRIM(topography) ) </font></tt>command in the
172middle&nbsp;of <tt><font style="font-size: 10pt;" size="2">init_grid.f90</font></tt></td>
173
174      <td style="vertical-align: top;"><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init_grid"></a>user_init_grid</font></font></tt></td>
175
176      <td>
177      <p>Execution of user-defined grid initializing actions.</p>
178
179      <p>Here, the user can define the two-dimensional index
180array&nbsp;<tt><font style="font-size: 10pt;" size="2">nzb_local</font></tt> that is used to
181set up a non-flat topography. This requires definition of at least one
182new <a href="chapter_4.1.html#topography">topography</a>&nbsp;mode
183in the&nbsp;<tt><font style="font-size: 10pt;" size="2">SELECT CASE( TRIM(topography) ) </font></tt>command
184in&nbsp;<tt><font style="font-size: 10pt;" size="2">user_init_grid</font></tt>.
185Note that the <a href="chapter_4.1.html#topography">topography</a>&nbsp;modes
186      <span style="font-style: italic;">'flat'</span>
187and <span style="font-style: italic;">'single_building'</span>
188are not allowed here since these are the standard cases used in the
189calling routine <tt><font style="font-size: 10pt;" size="2">init_grid</font></tt>. </p>
190
191      <p>CPU time for <tt><font style="font-size: 10pt;" size="2">user_init_grid</font></tt>
192is considered in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
193within the category &ldquo;initialisation&rdquo;.</p>
194
195      </td>
196
197    </tr>
198
199    <tr valign="top">
200
201      <td width="211">
202      <p>In the middle of <tt><font style="font-size: 10pt;" size="2">init_particles.f90</font></tt></p>
203
204      </td>
205
206      <td width="117">
207      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init_particles"></a>user_init_</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
208
209      </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">particles</font></font></tt></p>
210
211      </td>
212
213      <td width="862">
214      <p>With this routine e.g. size and color of particles,
215which have
216been released initially from a source, can be specified. Like the
217calling routine <tt><font style="font-size: 10pt;" size="2">init_particles</font><font style="font-size: 11pt;" size="2">,</font></tt>
218this routine is only
219called if particle advection is switched on (see package parameter <a href="chapter_4.2.html#dt_prel">dt_prel</a>).</p>
220
221      </td>
222
223    </tr>
224
225    <tr valign="top">
226
227      <td width="211">
228      <p>End of <tt><font style="font-size: 10pt;" size="2">advec_particles.f90</font></tt></p>
229
230      </td>
231
232      <td width="117">
233      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_particle_attributes"></a>user_particle_</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
234
235      </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">attributes</font></font></tt></p>
236
237      </td>
238
239      <td width="862">
240      <p>Here the particles can be assigned new attributes
241(diameter,
242color etc.) after each time step. Like the calling routine <tt><font style="font-size: 10pt;" size="2">advec_particles</font><font style="font-size: 11pt;" size="2">,</font> </tt>this
243routine is only
244called if particle advection is switched on (see package parameter <a href="chapter_4.2.html#dt_prel">dt_prel</a>).</p>
245
246      </td>
247
248    </tr>
249
250    <tr valign="top">
251
252      <td width="211">
253      <p>Before the plot of particles and cross-sections in <br>
254
255      <tt><font style="font-size: 10pt;" size="2">dvrp_plot.f90</font></tt></p>
256
257      </td>
258
259      <td width="117">
260      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_dvrp_coltab"></a>user_dvrp_coltab
261(</font></font></tt><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> mode )</font></font></tt></p>
262
263      </td>
264
265      <td width="862">
266      <p>With this routine, color tables can be adjusted which
267should
268be used for output with the dvrp software. Individuell color tables for
269particles and cross-sections are possible. For this purpose the two
270arrays <tt><font style="font-size: 10pt;" size="2">interval_values_dvrp</font></tt>
271and <tt><font style="font-size: 10pt;" size="2">interval_h_dvrp</font></tt>
272(declared in the module <tt><font style="font-size: 10pt;" size="2">dvrp_variables</font></tt>)
273have to be preset with appropriate values. The number of color table
274entries must be assigned to the variable of <tt><font style="font-size: 10pt;" size="2">dvrp_colourtable_entries</font></tt>.
275The value of the subroutine argument <span style="font-family: monospace;">mode</span> defines,
276whether the color
277table is valid for particles or for cross-sections<span style="font-family: monospace;"></span> (i.e. <tt><font size="2">mode</font></tt>
278can have the values &ldquo;<i>particles&rdquo;</i>
279or &ldquo;<i>slicer&rdquo;</i>).&nbsp; <br>
280
281This routine only becomes active if dvrp-graphics is switched on (see
282package parameter <a href="chapter_4.2.html#dt_dvrp">dt_dvrp</a>).</p>
283
284      </td>
285
286    </tr>
287
288    <tr valign="top">
289
290      <td width="211">
291      <p>Beginning and end of the time integration loop
292of&nbsp; <br>
293
294      <tt><font style="font-size: 10pt;" size="2">time_integration.f90</font></tt>
295as well as after each prognostic equation in <br>
296
297      <tt><font style="font-size: 10pt;" size="2">prognostic_equations.f90</font></tt></p>
298
299      </td>
300
301      <td width="117">
302      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_actions"></a>user_actions( location )</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> </font></font> </p>
303
304      <p>or<br>
305
306      <font face="Cumberland, monospace"><font style="font-size: 10pt;" size="2"> </font></font>
307      </p>
308
309      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">user_actions( i, j,</font></font></tt><span style="font-family: Cumberland,monospace;"> </span><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">location )</font></font></tt></p>
310
311      </td>
312
313      <td width="862">
314     
315
316      <p>In this routine user actions can be implemented which
317are to
318be executed either at each time step or at certain times (defined by
319the user). Since in each case the routine is called at the beginning
320and at the end of a time step as well as after each prognostic equation
321it must be defined at which place (and/or at which places) the
322respective actions are supposed to be executed. For this purpose an
323appropriate CASE structure is already inserted in this routine. The
324location of the calling routine is passed to this routine via the
325argument <tt><font style="font-size: 10pt;" size="2">location</font></tt>.
326For example, if called at the beginning of a time step, <tt><font style="font-size: 10pt;" size="2">location</font></tt>
327=&nbsp;<i>'before_timestep' </i>and if
328called at the end, <tt><font style="font-size: 10pt;" size="2">location</font></tt><font style="font-size: 10pt;" size="2"> </font>=&nbsp;<i>'after_timestep'</i><span style="font-weight: bold;">.</span></p><p>Calculation of user-defined output quantities should be carried out at <span style="font-family: monospace;">location</span> = <span style="font-style: italic;">'after_integration'</span>.<span style="font-weight: bold;"></span></p><p><span style="font-weight: bold;">Important:</span>
329if the
330cache-optimized version of <span style="font-family: monospace;">prognostic_equation.f90</span>
331is used (this is the default for IBM-Regatta-Systems), the loop
332variables <tt>i</tt> and <tt>j</tt> must be
333passed as arguments for
334all calls within <span style="font-family: monospace;">prognostic_equations</span>.
335      </p>
336
337      <p>CPU time for <tt><font style="font-size: 10pt;" size="2">user_actions</font></tt>
338appears within the category &ldquo;user_actions&rdquo; in the
339local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>.
340If the cache-optimized version of <span style="font-family: monospace;">prognostic_equation.f90</span>
341is used, this time measurement only considers the CPU time which was
342needed outside of the prognostic equations. Time needed for calls
343within prognostic_equations is considered within the category "all
344prog.equations".<br>
345
346      </p>
347
348      <p><b>Important:</b> this subroutine is written
349as a FORTRAN
350module, which uses so-called function overloading. It can be called in
351two ways: with one argument (<tt><font style="font-size: 10pt;" size="2">location</font></tt>)
352and with three arguments <font style="font-size: 10pt;" size="2">(</font><tt><font style="font-size: 10pt;" size="2">i, j, location</font></tt><font style="font-size: 10pt;" size="2">)</font>. The
353three argument version
354is used in the cache-optimized version of <span style="font-family: monospace;">prognostic_equations</span>.
355Depending
356on the number of given arguments the subroutine internally calls <tt><font style="font-size: 10pt;" size="2">user_actions</font></tt>
357or <tt><font style="font-size: 10pt;" size="2">user_actions_ij</font></tt>.
358So the
359user must insert the actions (code extensions) desired for the
360respective prognostic equation either in the CASE structure of <tt><font style="font-size: 10pt;" size="2">user_actions</font><font style="font-size: 11pt;" size="2">,</font> </tt>or/and
361in the CASE
362structure of <tt><font style="font-size: 10pt;" size="2">user_actions_ij</font></tt>!</p>
363
364      </td>
365
366    </tr>
367
368    <tr valign="top">
369
370      <td width="211">
371      <p><tt><font style="font-size: 10pt;" size="2">flow_statistics.f90</font></tt>
372before the summation of array <span style="font-family: monospace;">hom</span>
373(horizontal averages)<br>
374
375      </p>
376
377      </td>
378
379      <td width="117">
380      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_statistics"></a>user_statistics</font></font></tt></p>
381
382      </td>
383
384      <td width="862">
385      <p>Horizontal averages of vertical profiles of additional
386quantities (for example user variables) can be computed and written to
387the array <tt><font style="font-size: 10pt;" size="2">sums</font></tt>.
388Please use profile numbers starting from 70 upward (thus e.g. <tt><font style="font-size: 10pt;" size="2">sums (&hellip;,
38960) =</font></tt><font style="font-size: 10pt;" size="2">&hellip;)</font>. These additional
390profiles
391are temporally averaged in <tt><font style="font-size: 10pt;" size="2">flow_statistics</font></tt>.
392If these profiles should be displayed with the plot program <a href="http://www.muk.uni-hannover.de/institut/software/profil_beschreibung.html">profil</a>,
393further instructions in the user-defined software are necessary. For
394this, an understanding of the operating mode of the subroutine <tt><font style="font-size: 10pt;" size="2">plot_1d</font></tt>
395is required.</p>
396
397      </td>
398
399    </tr>
400
401    <tr><td style="vertical-align: top;">End of <span style="font-family: monospace;">check_parameters.f90</span> where output quantities are checked</td><td style="vertical-align: top;"><span style="font-family: monospace;"><a name="user_check_data_output"></a>user_check_data_<br>output( variable, unit )</span></td><td style="vertical-align: top;">Here the <span style="font-family: monospace;">unit</span>(s) of user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>) have to be set. Input parameter <span style="font-family: monospace;">variable</span> contains the string identifier of the respective variable. For those variables not recognized by the user, the parameter <span style="font-family: monospace;">unit</span> is set to "illegal", which tells the calling routine that the output variable is not defined and leads to a program abort.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;"><span style="font-family: monospace;">netcdf.f90</span> (4 times) where the vertical grid coordinates for cross sections and volume data are defined</td><td style="vertical-align: top;"><span style="font-family: monospace;"><a name="user_define_netcdf_grid"></a>user_define_<br>netcdf_grid( variable, found, grid_x, grid_y, grid_z )</span></td><td style="vertical-align: top;">Set the grid on which user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>) are defined. Input parameter <span style="font-family: monospace;">variable</span> contains the string identifier of the respective variable. Allowed values are <span style="font-style: italic;">'x'</span> and <span style="font-style: italic;">'xu'</span> for <span style="font-family: monospace;">grid_x</span>, <span style="font-style: italic;">'y'</span> and <span style="font-style: italic;">'yv'</span> for <span style="font-family: monospace;">grid_y</span>, and<span style="font-family: monospace;"></span>&nbsp;<span style="font-style: italic;">'zu'</span> and <span style="font-style: italic;">'zw'</span> for <span style="font-family: monospace;">grid_z</span>. The output parameter <span style="font-family: monospace;">found</span> has to be set <span style="font-style: italic;">.TRUE.</span> by the user, otherwise an error message will appear in the job protocol for the respective output quantity.<br><br><span style="font-weight: bold;">Example:</span><br>If an output quantity is defined at the center of the grid boxes, the following settings have to be used:<br><br><div style="margin-left: 40px;"><span style="font-family: monospace;">grid_x = <span style="font-style: italic;">'x'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">grid_y = <span style="font-style: italic;">'y'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">grid_z = <span style="font-style: italic;">'zu'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">found &nbsp;= <span style="font-style: italic;">.TRUE.</span></span><br></div><br>For defining an output quantity at the grid points where the u-velocity-component is defined, please use<br><br><div style="margin-left: 40px;"><span style="font-family: monospace;">grid_x = <span style="font-style: italic;">'xu'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">grid_y = <span style="font-style: italic;">'y'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">grid_z = <span style="font-style: italic;">'zu'</span></span><br style="font-family: monospace;"><span style="font-family: monospace;">found &nbsp;= <span style="font-style: italic;">.TRUE.</span></span><br></div><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;">Middle of <span style="font-family: monospace;">data_output_2d.f90</span></td><td style="vertical-align: top;"><span style="font-family: monospace;"><a name="user_data_output_2d"></a>user_data_<br>output_2d( av, variable, found, grid, local_pf )</span></td><td style="vertical-align: top;">Resorts&nbsp;user-defined&nbsp;quantities (to be output as cross-section data;&nbsp;see <a href="chapter_4.3.html#data_output_user">data_output_user</a>) with indices (k,j,i) to a temporary array <span style="font-family: monospace;">local_pf</span> with indices (i,j,k) and sets the <span style="font-family: monospace;">grid</span> on which they are defined. Depending on the value of input parameter <span style="font-family: monospace;">av</span> resorting is done for instantaneous (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">0</span>) or time averaged data (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">1</span>). Input parameter <span style="font-family: monospace;">variable</span> contains the string identifier of the respective variable. Allowed values for <span style="font-family: monospace;">grid</span> are&nbsp;<span style="font-style: italic;">'zu'</span> and&nbsp;<span style="font-style: italic;">'zw'</span>. The output parameter <span style="font-family: monospace;">found</span> has to be set <span style="font-style: italic;">.TRUE.</span> by the user, otherwise an error message will appear in the job protocol for the respective output quantity.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;"><span style="font-family: monospace;">data_output_3d.f90</span> at the end of the CASE structure</td><td style="vertical-align: top;"><span style="font-family: monospace;"><a name="user_data_output_3d"></a>user_data_<br>output_3d( av, variable, found, local_pf, nz_do )</span></td><td style="vertical-align: top;">Resorts&nbsp;user-defined&nbsp;quantities (to be output as volume data;&nbsp;see <a href="chapter_4.3.html#data_output_user">data_output_user</a>) with indices (k,j,i) to a temporary array <span style="font-family: monospace;">local_pf</span> with indices (i,j,k) and sets the <span style="font-family: monospace;">grid</span> on which they are defined. Depending on the value of input parameter <span style="font-family: monospace;">av</span> resorting is done for instantaneous (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">0</span>) or time averaged data (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">1</span>). Input parameter <span style="font-family: monospace;">variable</span> contains the string identifier of the respective variable<span style="font-family: monospace;"></span><span style="font-style: italic;"></span><span style="font-style: italic;"></span>. The input parameter <span style="font-family: monospace;">nz_do</span> defines the upper limit of vertical grid index k of the output array (see <a href="chapter_4.2.html#nz_do3d">nz_do3d</a>). The output parameter <span style="font-family: monospace;">found</span> has to be set <span style="font-style: italic;">.TRUE.</span> by the user, otherwise an error message will appear in the job protocol for the respective output quantity.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;">End of <span style="font-family: monospace;">average_3d_data.f90</span>, middle and end of <span style="font-family: monospace;">sum_up_3d_data.f90</span></td><td style="vertical-align: top;"><span style="font-family: monospace;"><a name="user_3d_data_averaging"></a>user_3d_data_<br>averaging( mode, variable )</span></td><td style="vertical-align: top;">Sum up and time-average of user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>) as well as allocation of the arrays necessary for storing the respective averages. Input parameter <span style="font-family: monospace;">variable</span> contains the string identifier of the respective variable. Depending on the requested action, input parameter <span style="font-family: monospace;">mode</span> has the value <span style="font-style: italic;">'allocate'</span>, <span style="font-style: italic;">'sum'</span>, or <span style="font-style: italic;">'average'</span>.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about creating user-defined output quantities. </td></tr><tr valign="top">
402
403      <td width="211">
404      <p>End of <tt><font style="font-size: 10pt;" size="2">palm.f90</font></tt></p>
405
406      </td>
407
408      <td width="117">
409      <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_last_action"></a>user_last_</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
410
411      </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">action</font></font></tt></p>
412
413      </td>
414
415      <td width="862">
416      <p>User-defined actions which are to be executed at the end
417of a
418model run. When <tt><font style="font-size: 10pt;" size="2">user_last_actions</font></tt>
419is called all model actions are already completed, but the files opened
420by the model are not closed yet and possibly terminating actions for
421these files (see subroutine of <tt><font style="font-size: 10pt;" size="2">close_files</font></tt>)
422are also not carried
423out yet.&nbsp; <br>
424
425CPU time for <tt><font style="font-size: 10pt;" size="2">user_last_actions</font></tt>
426appears in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
427within the category &ldquo;last actions&rdquo; (the time
428necessary for <tt><font style="font-size: 10pt;" size="2">close_files</font></tt> is included).</p>
429
430      </td>
431
432    </tr>
433
434  </tbody>
435</table>
436
437<hr>
438<p style="line-height: 100%;"><br>
439
440<font color="#000080"><font color="#000080"><a href="chapter_3.5.html"><font color="#000080"><img src="left.gif" name="Grafik1" align="bottom" border="2" height="32" width="32"></font></a><a href="index.html"><font color="#000080"><img src="up.gif" name="Grafik2" align="bottom" border="2" height="32" width="32"></font></a><a href="chapter_3.5.2.html"><font color="#000080"><img src="right.gif" name="Grafik3" align="bottom" border="2" height="32" width="32"></font></a></font></font></p>
441
442<p style="line-height: 100%;"><i>Last
443change:&nbsp;</i>&nbsp;23/03/06 (SR)</p>
444
445</body></html>
Note: See TracBrowser for help on using the repository browser.