source: palm/trunk/DOC/tec/technical_documentation.html @ 515

Last change on this file since 515 was 513, checked in by heinze, 14 years ago

Using the NCL scripts by means of the shell script palmplot

  • Property svn:keywords set to Id
File size: 65.1 KB
Line 
1<!DOCTYPE html PUBLIC "-//w3c//dtd html 4.0 transitional//en">
2<html><head>
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type"> <meta content="Mozilla/4.73 [en] (X11; U; HP-UX B.10.20 9000/782) [Netscape]" name="GENERATOR"> <meta content="Siegfried Raasch" name="Author"> <meta content="parallel LES model" name="Keywords"><title>PALM technical/numerical documentation</title></head><body><font size="+4">PALM&nbsp;&nbsp;
20</font>a
21<b>pa</b>rallelized
22<b>L</b>ES <b>m</b>odel
23<br><hr width="100%">
24<br><font size="+2">technical/numerical documentation</font>
25<br>&nbsp;
26<br>&nbsp;
27<br><table nosave="" cellpadding="0" cellspacing="0"> <caption>&nbsp; <br> </caption><tbody>
28</tbody><tbody> </tbody> <tbody> <tr nosave=""> <td nosave=""><b>Current fixed release:</b></td> <td><span style="font-weight: bold;">3.7a<br>
29</span></td> </tr>
30<tr nosave=""> <td nosave=""><b>Last
31change of this document</b>:&nbsp;</td> <td nosave=""><b>$Id: technical_documentation.html 513 2010-03-16 13:37:48Z raasch $</b></td> </tr>
32</tbody>
33</table><hr width="100%">
34<p><font size="+2">Table of contents</font>
35<br>&nbsp;
36<br>&nbsp;
37</p><ul> <a href="#Kapitel1.0">1.0</a>&nbsp;
38History of changes <p><a href="#Kapitel2.0">2.0</a>&nbsp;
39How to change the source
40code and how to document modifications<br>
41 </p> <p><a href="#Kapitel3.0">3.0</a>&nbsp;
42Description of selected model numerics<br>
43&nbsp;</p>
44</ul><b></b><br>
45
46<h2><a name="Kapitel1.0"></a>1.0&nbsp;
47History of changes</h2>
48The following table documents all changes to the PALM repository since 2009. Older changes can be found <a href="tec_doc_1998-2008.html">here</a>.<br>
49<br>
50Entries in the fifth column specify the type of the change:
51change&nbsp;
52of existing code (C), new code (N) or bugfix (B). More detailed
53information
54about the changes may sometimes be found in the header comment lines of the
55respective
56routines.
57<br>&nbsp;
58<br>
59<table style="text-align: left; width: 100%; vertical-align: top;" border="1" cellpadding="2" cellspacing="2">
60  <tbody>
61    <tr>
62      <td style="vertical-align: middle; width: 27px;"><big><span style="font-weight: bold;">date</span></big><br>
63      </td>
64      <td style="width: 38px;"><big><span style="font-weight: bold;">author</span></big><br>
65      </td>
66      <td style="width: 42px;"><big><span style="font-weight: bold;">svn revision</span></big><br>
67      </td>
68      <td style="width: 40px;"><big><span style="font-weight: bold;">latest release</span></big><br>
69      </td>
70      <td style="width: 27px;"><big><span style="font-weight: bold;">type</span></big><br>
71      </td>
72      <td style="width: 497px;"><big><span style="font-weight: bold;">description</span></big><br>
73      </td>
74      <td style="width: 189px;"><big><span style="font-weight: bold;">affected routines</span></big><br>
75      </td>
76    </tr>
77   
78   
79   
80   
81   
82   
83   
84   
85   
86   
87    <tr>
88      <td style="vertical-align: top;">16/03/10<br>
89      </td>
90      <td style="vertical-align: top;">RH<br>
91      </td>
92      <td style="vertical-align: top;">513<br>
93      </td>
94      <td style="vertical-align: top;">3.7a<br>
95      </td>
96      <td style="vertical-align: top;">N<br>
97      </td>
98      <td style="vertical-align: top;">NCL scripts can be run with the shell script <span style="font-family: Courier New,Courier,monospace;">palmplot.</span><br>
99      </td>
100      <td style="vertical-align: top;">palmplot .ncl.config.default cross_sections.ncl profiles.ncl<br>
101      </td>
102    </tr>
103<tr>
104      <td style="vertical-align: top;">12/03/10<br>
105      </td>
106      <td style="vertical-align: top;">SR<br>
107      </td>
108      <td style="vertical-align: top;">509<br>
109      </td>
110      <td style="vertical-align: top;">3.7a<br>
111      </td>
112      <td style="vertical-align: top;">E<br>
113      </td>
114      <td style="vertical-align: top;">bugfix for rev 504: remode_md was given a wrong value<br>
115      </td>
116      <td style="vertical-align: top;">mbuild<br>
117      </td>
118    </tr>
119<tr>
120      <td style="vertical-align: top;">08/03/10<br>
121      </td>
122      <td style="vertical-align: top;">SR<br>
123      </td>
124      <td style="vertical-align: top;">506<br>
125      </td>
126      <td style="vertical-align: top;">3.7a<br>
127      </td>
128      <td style="vertical-align: top;">C<br>
129      </td>
130      <td style="vertical-align: top;">hack for better usage of <span style="font-weight: bold;">mrun</span> on Kyoto computing center machine (<span style="font-family: Courier New,Courier,monospace;">lckyoto</span>)<br>
131      </td>
132      <td style="vertical-align: top;">mrun<br>
133      </td>
134    </tr>
135<tr>
136      <td style="vertical-align: top;">03/03/10<br>
137      </td>
138      <td style="vertical-align: top;">SR<br>
139      </td>
140      <td style="vertical-align: top;">504<br>
141      </td>
142      <td style="vertical-align: top;">3.7a<br>
143      </td>
144      <td style="vertical-align: top;">C<br>
145      </td>
146      <td style="vertical-align: top;"><span style="font-family: Courier New,Courier,monospace;">combine_plot_fields</span> is now directly called within <span style="font-weight: bold;">mrun</span> and must not be given by an output command in the configuration file any more. Please remove the respective output command (<span style="font-family: Courier New,Courier,monospace;">OC:combine_plot_fields.x</span>) from your configuration file!<br>
147      <br>
148Utility programs (<span style="font-family: Courier New,Courier,monospace;">combine_plot_fields</span>, <span style="font-family: Courier New,Courier,monospace;">interpret_config</span>) are created by <span style="font-weight: bold;">mbuild</span> separately for each block in the configuration file. Depending on option <span style="font-family: Courier New,Courier,monospace;">-K</span>, <span style="font-weight: bold;">mrun</span> is using the utility programs for the respective block.<br>
149      <br>
150Utility programs are also compiled in parallel, depending on variable <span style="font-family: Courier New,Courier,monospace;">%mopts</span> in the configuration file..<br>
151      <br>
152Default configuration files updated.<br>
153      </td>
154      <td style="vertical-align: top;">mbuild, mrun, UTIL/Makefile, SCRIPTS/.mrun.config.*<br>
155      </td>
156    </tr>
157<tr>
158      <td style="vertical-align: top;">02/03/10<br>
159      </td>
160      <td style="vertical-align: top;">SR<br>
161      </td>
162      <td style="vertical-align: top;">496<br>
163      </td>
164      <td style="vertical-align: top;">3.7a<br>
165      </td>
166      <td style="vertical-align: top;">C<br>
167      </td>
168      <td style="vertical-align: top;">Particle data for restart runs are only written if environment variable <span style="font-family: Courier New,Courier,monospace;">write_binary</span> = <span style="font-style: italic;">.T.</span>, i.e. particle data are now handled in the same way as the other restart data.<br>
169      </td>
170      <td style="vertical-align: top;">palm<br>
171      </td>
172    </tr>
173<tr>
174      <td style="vertical-align: top;">01/03/10<br>
175      </td>
176      <td style="vertical-align: top;">SR<br>
177      </td>
178      <td style="vertical-align: top;">494<br>
179      </td>
180      <td style="vertical-align: top;">3.7a<br>
181      </td>
182      <td style="vertical-align: top;">N<br>
183      </td>
184      <td style="vertical-align: top;">Output in NetCDF4-format.<br>
185      <br>
186NetCDF4 allows for parallel I/O. Also, variables are not limited in
187size any more (i.e. arrays can be larger than 2GB). The new
188d3par-parameter <span style="font-family: Courier New,Courier,monospace;">netcdf_data_format</span>.can be used to select among the different NetCDF file formats (<span style="font-style: italic;">1</span>: classic format, <span style="font-style: italic;">2</span>: 64-bit-offset format (this is now the default), <span style="font-style: italic;">3</span>: NetCDF4/HDF5 format, <span style="font-style: italic;">4</span>: NetCDF4 format with NF90_CLASSIC_MODEL bit set). Setting <span style="font-family: Courier New,Courier,monospace;">netcdf_data_format</span> &gt; <span style="font-style: italic;">2</span>
189only affects 2d- and 3d-output, i.e. there is no parallel output for
190profiles, time series, spectra, and particles. Parallel output of
191particle data may realized in the future.<br>
192      <br>
193In case of parallel output, all PEs write into one file, which means that postprocessing the data with <span style="font-family: Courier New,Courier,monospace;">combine_plot_fields</span>
194(merging data from single files - one per PE - into one file) is not
195neccessary. In this case, flag files are automatically set, telling <span style="font-family: Courier New,Courier,monospace;">combine_plot_fields</span> that nothing is to be done.<br>
196      <br>
197Using NetCDF4 format requires a NetCDF4/HDF library. Respective
198settings for -I, -L, and -l compiler/loader options for the SGI-ICE at
199HLRN can be found in the new example configuration file <span style="font-family: Courier New,Courier,monospace;">..../trunk/SCRIPTS/.mrun.config.imuk_ice2_netcdf4</span><br>
200      <br>
201      <span style="font-weight: bold;">Attention:</span><br>
202So far, NetCDF parallel I/O has only been tested a little. Further
203performance optimizations may be required, especially in case of large
204data sets (e.g. data chunking, or lustre file system settings with <span style="font-family: Courier New,Courier,monospace;">lfs setstripe</span>). <span style="font-weight: bold;">Please report bugs and performance problems immediately!</span><br>
205      <br>
206      <span style="font-family: Courier New,Courier,monospace;">combine_plot_fields</span> outputs cpu-time needed for file merging.<br>
207      <br>
208Modules to be loaded for compilation (mbuild) or job execution (mrun) can/should now be given in the configuration file (<span style="font-family: Courier New,Courier,monospace;">.mrun.config</span>) using variable <span style="font-family: Courier New,Courier,monospace;">modules</span>. Example:<br>
209      <br>
210      <span style="font-family: Courier New,Courier,monospace;">&nbsp;&nbsp; %modules&nbsp;&nbsp;&nbsp;&nbsp; ifort/11.0.069:netcdf&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; lcsgih parallel</span><br>
211      <br>
212This method replaces the (undocumented) <span style="font-family: Courier New,Courier,monospace;">mpilib</span>-variable.<br>
213      <br>
214      <span style="font-weight: bold;">WARNING:</span><br>
215      <span style="font-weight: bold;">All fixed settings of modules in the scripts mbuild, mrun, and subjob have been removed! Please set the <span style="font-family: Courier New,Courier,monospace;">modules</span> variable appropriately and remove the mpilib variable in your configuration file.<br>
216      <br>
217</span>Compilation time can be reduced be using parallel make. The
218number of allowed simultaneous compiler calls (threads) is set in the
219configuration file using variable <span style="font-family: Courier New,Courier,monospace;">mopt</span>, e.g.<br>
220      <br>
221      <span style="font-family: Courier New,Courier,monospace;">&nbsp;&nbsp; %mopts&nbsp; -j:4 &nbsp; lcsgih parallel</span><br>
222      <br>
223allows a maximum of 4 routines to be compiled simultaneously (provided
224that the makefile does not show any dependencies between these
225routines).<span style="font-weight: bold;"><br>
226      </span>
227      </td>
228      <td style="vertical-align: top;">check_open, check_parameters, close_file, data_output_2d, data_output_3d, header, modules, netcdf, parin<br>
229      <br>
230combine_plot_fields<br>
231      <br>
232mbuild, mrun, subjob<br>
233      </td>
234    </tr>
235    <tr>
236      <td style="vertical-align: top;"><br>
237      </td>
238      <td style="vertical-align: top;"><br>
239      </td>
240      <td style="vertical-align: top;"><br>
241      </td>
242      <td style="vertical-align: top;"><br>
243      </td>
244      <td style="vertical-align: top;">C<br>
245      </td>
246      <td style="vertical-align: top;">d3par-parameters <span style="font-family: Courier New,Courier,monospace;">netcdf_64bit</span> and <span style="font-family: Courier New,Courier,monospace;">netcdf_64bit_3d</span> have been removed. Use the new d3par-variable <span style="font-family: Courier New,Courier,monospace;">netcdf_data_format</span> = <span style="font-style: italic;">2</span>
247for choosing the NetCDF 64bit-offset format (this is the default from
248now on). The offset-format can not be set independently for the
2493d-output-data any more.<br>
250      <br>
251d3par-parameters <span style="font-family: Courier New,Courier,monospace;">netcdf_format_mask</span>, <span style="font-family: Courier New,Courier,monospace;">netcdf_format_mask_av</span>, and variables <span style="font-family: Courier New,Courier,monospace;">nc_format_mask</span>, <span style="font-family: Courier New,Courier,monospace;">format_parallel_io</span> removed. They are replaced by the new parameter <span style="font-family: Courier New,Courier,monospace;">netcdf_data_format</span>. This change concerns the masked data output, which is still not documented.<br>
252      </td>
253      <td style="vertical-align: top;">check_open, close_file,<br>
254data_output_mask, header, init_masks, modules, parin<br>
255      <br>
256      </td>
257    </tr>
258    <tr>
259      <td style="vertical-align: top;"><br>
260      </td>
261      <td style="vertical-align: top;"><br>
262      </td>
263      <td style="vertical-align: top;"><br>
264      </td>
265      <td style="vertical-align: top;"><br>
266      </td>
267      <td style="vertical-align: top;">B<br>
268      </td>
269      <td style="vertical-align: top;">Bugfix in trunk/UTIL/Makefile: forgot to compile for interpret_config.<br>
270      <br>
271Bugfix: timeseries data have to be collected by PE0 (user_statistics).<br>
272      </td>
273      <td style="vertical-align: top;">user_statistics<br>
274      <br>
275trunk/UTIL/Makefile<br>
276      </td>
277    </tr>
278<tr>
279      <td style="vertical-align: top;">05/02/10<br>
280      </td>
281      <td style="vertical-align: top;">SR<br>
282      </td>
283      <td style="vertical-align: top;">485<br>
284      </td>
285      <td style="vertical-align: top;">3.7a<br>
286      </td>
287      <td style="vertical-align: top;">B<br>
288      </td>
289      <td style="vertical-align: top;"><span style="font-family: Courier New,Courier,monospace;">ngp_3d</span>, <span style="font-family: Courier New,Courier,monospace;">ngp_3d_inner</span>
290changed to 64 bit. Otherwise, on large grids &gt; 2*10**9 grid points
291some global statistics (e.g. total kinetic energy) have wrong values.<br>
292      </td>
293      <td style="vertical-align: top;">init_3d_model, modules<br>
294      </td>
295    </tr>
296    <tr>
297      <td style="vertical-align: top;">05/02/10<br>
298      </td>
299      <td style="vertical-align: top;">SR<br>
300      </td>
301      <td style="vertical-align: top;">484<br>
302      </td>
303      <td style="vertical-align: top;">3.7a<br>
304      </td>
305      <td style="vertical-align: top;">B<br>
306      </td>
307      <td style="vertical-align: top;">Typo in file headers removed ("current" instead of "actual").<br>
308      </td>
309      <td style="vertical-align: top;">many<br>
310      </td>
311    </tr>
312<tr>
313      <td style="vertical-align: top; width: 27px;">05/02/10<br>
314      </td>
315      <td style="vertical-align: top; width: 38px;">SR<br>
316      </td>
317      <td style="vertical-align: top; width: 42px;">483<br>
318      </td>
319      <td style="vertical-align: top; width: 40px;">3.7a<br>
320      </td>
321      <td style="vertical-align: top; width: 27px;">N<br>
322      </td>
323      <td style="vertical-align: top; width: 497px;"><span style="font-family: Courier New,Courier,monospace;">compare_palm_logs </span>is additionally compiled with <span style="font-weight: bold;">mbuild</span> <span style="font-family: Courier New,Courier,monospace;">-u</span> . (<span style="font-family: Courier New,Courier,monospace;">Makefile</span> in <span style="font-family: Courier New,Courier,monospace;">trunk/UTIL</span>)<br>
324      <br>
325make options (<span style="font-family: Courier New,Courier,monospace;">mopts</span>) to be set by configuration file implemented. (<span style="font-weight: bold;">mrun</span>, <span style="font-weight: bold;">mbuild</span>)<br>
326      <br>
327      <span style="font-family: Courier New,Courier,monospace;">humidity</span> = <span style="font-style: italic;">.T.</span> can be used for runs with topography. <span style="font-family: Courier New,Courier,monospace;">wall_humidityflux</span> and<br><span style="font-family: Courier New,Courier,monospace;">
328wall_scalarflux</span> are the corresponding new inipar parameters.<br>
329(<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>, <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>, <span style="font-family: Courier New,Courier,monospace;">parin</span>)<br>
330      <br>
331Large scale vertical motion (subsidence/ascent) can be added as
332additional source to the prognostic equation for potential temperature.
333See new parameters <span style="font-family: Courier New,Courier,monospace;">large_scale_subsidence</span>, <span style="font-family: Courier New,Courier,monospace;">ws_vertical_gradient</span>, and <span style="font-family: Courier New,Courier,monospace;">ws_vertical_gradient_level</span>. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>, <span style="font-family: Courier New,Courier,monospace;">header</span>, <span style="font-family: Courier New,Courier,monospace;">Makefile</span>, <span style="font-family: Courier New,Courier,monospace;">modules</span>, <span style="font-family: Courier New,Courier,monospace;">parin</span>, <span style="font-family: Courier New,Courier,monospace;">prognostic_equations</span>, <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>, <span style="font-family: Courier New,Courier,monospace;">subsidence</span>, <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
334      <br>Scripts have been updated for Cray-XT5 machine (lcxt5m) and Hitachi-machine (lckyoto).<br>
335      <br>
336A simple method for installing and running palm (with limited features) has been added. (<span style="font-family: Courier New,Courier,monospace;">Makefile</span>, new scripts <span style="font-weight: bold;">palm_simple_install</span>, <span style="font-weight: bold;">palm_simple_run</span>)<br>
337      <br>
338Masked data output has been implemented but it is not documented in the
339user manual so far. This feature can already use NetCDF4 file format.
340(check_open, check_parameters, close_file, modules, netcdf, parin,
341time_integration, user_parin, new: data_output_mask, init_masks,
342user_data_output_mask)<br>
343      </td>
344      <td style="vertical-align: top; width: 189px;">check_open, check
345parameters, close_file, header, init_3d_model, Makefile, mbuild, modules, mrun,
346netcdf, parin, prognostic_equations, read_var_list, time_integration, user_parin, write_var_list<br>
347      <br><span style="font-weight: bold;">
348new:</span> data_output_mask,&nbsp; init_masks, palm_simple_install, palm_simple_run, subsidence, user_data_output_mask<br>
349<br>
350      </td>
351    </tr>
352    <tr>
353      <td style="vertical-align: top; width: 27px;"><br>
354      </td>
355      <td style="vertical-align: top; width: 38px;"><br>
356      </td>
357      <td style="vertical-align: top; width: 42px;"><br>
358      </td>
359      <td style="vertical-align: top; width: 40px;"><br>
360      </td>
361      <td style="vertical-align: top; width: 27px;">C<br>
362      </td>
363      <td style="vertical-align: top; width: 497px;">2d-decomposition is default for Cray-XT machines. (<span style="font-family: Courier New,Courier,monospace;">init_pegrid</span>)<br>
364      <br><span style="font-family: Courier New,Courier,monospace;">
365var_ts</span> is replaced by <span style="font-family: Courier New,Courier,monospace;">dots_max</span>. (<span style="font-family: Courier New,Courier,monospace;">modules</span>, <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>)<br>
366      <br>
367Every cloud droplet has now an own weighting factor and can be deleted
368due to collisions. Condensation and collision of cloud droplets are
369adjusted accordingly. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>)<br>
370      <br>
371Collision efficiency for large cloud droplets has changed according to table of Rogers and Yau. (<span style="font-family: Courier New,Courier,monospace;">collision_efficiency</span>)<br>
372      </td>
373      <td style="vertical-align: top; width: 189px;">advec_particles, collision_efficiency, init_3d_model, init_pegrid, modules<br>
374      </td>
375    </tr>
376    <tr>
377      <td style="vertical-align: top; width: 27px;"><br>
378      </td>
379      <td style="vertical-align: top; width: 38px;"><br>
380      </td>
381      <td style="vertical-align: top; width: 42px;"><br>
382      </td>
383      <td style="vertical-align: top; width: 40px;"><br>
384      </td>
385      <td style="vertical-align: top; width: 27px;">B<br>
386      </td>
387      <td style="vertical-align: top; width: 497px;">Bugfix for generating serial jobs. (<span style="font-weight: bold;">subjob</span>)<br>
388      <br>
389Bugfix: index problem concerning gradient_level indices removed. (<span style="font-family: Courier New,Courier,monospace;">header</span>)<br>
390      <br>
391Dimension of array <span style="font-family: Courier New,Courier,monospace;">stat</span> in cascade change to prevent type problems with mpi2 libraries. (<span style="font-family: Courier New,Courier,monospace;">poisfft_hybrid</span>)<br>
392      <br>
393Loop was split to make runs reproducible when using ifort compiler. (<span style="font-family: Courier New,Courier,monospace;">disturb_field</span>)<br>
394      <br>
395Bugfix: exchange of ghost points for <span style="font-family: Courier New,Courier,monospace;">prho</span> included. (<span style="font-family: Courier New,Courier,monospace;">time_integration</span>)<br>
396      <br>
397Bugfix in calculation of time-averaged surface heatfluxes. (<span style="font-family: Courier New,Courier,monospace;">sum_up_3d_data</span>)<br>
398      <br>
399Bugfix in calculation of precipitation_rate. (<span style="font-family: Courier New,Courier,monospace;">calc_precipitation</span>)<br>
400      <br>
401Bugfix: initial data assignments to some dvrp arrays changed due to error messages from gfortran compiler. (<span style="font-family: Courier New,Courier,monospace;">modules</span>)<br>
402      <br>
403Bugfix in calculation of cloud droplet velocity. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>)<br>
404      <br>
405Bugfix in transfer of particles at south/left edge. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>)<br>
406      <br>
407Bugfix in calculation of collision efficiency. (<span style="font-family: Courier New,Courier,monospace;">collision_efficiency</span>)<span style="font-family: Courier New,Courier,monospace;"></span><span style="font-family: Courier New,Courier,monospace;"></span><br>
408      </td>
409      <td style="vertical-align: top; width: 189px;">advec_particles,
410calc_precipitation, collision_efficiency, disturb_field, header,
411modules, poisfft_hybrid, subjob, sum_up_3d_data,
412time_integration<br>
413<br>
414      </td>
415    </tr>
416    <tr>
417      <td style="vertical-align: top; width: 27px;">23/09/09<br>
418      </td>
419      <td style="vertical-align: top; width: 38px;">SR<br>
420      </td>
421      <td style="vertical-align: top; width: 42px;">392<br>
422      </td>
423      <td style="vertical-align: top; width: 40px;">3.7<br>
424      </td>
425      <td style="vertical-align: top; width: 27px;">N<br>
426      </td>
427      <td style="vertical-align: top; width: 497px;"><span style="font-weight: bold;">Most
428important changes:</span>
429atmosphere-ocean coupling has been improved and steering of
430dvr-software is more user-friendly now. Beside that, the release
431contains a lot of optimizations, changes, and bugfixes which have
432accumulated over the last months.<br>
433
434      <br>
435
436The atmosphere-ocean coupling allows to use independent precursor runs
437in order to account for different spin-up times. The time when coupling
438has to be started is given by new inipar parameter <span style="font-family: Courier New,Courier,monospace;">coupling_start_time</span>.
439The precursor ocean run has to be started using new <span style="font-weight: bold;">mrun</span> option "<span style="font-family: Courier New,Courier,monospace;">-y</span>" in
440order to add the appendix "<span style="font-family: Courier New,Courier,monospace;">_O</span>" to all
441output files. (<span style="font-family: Courier New,Courier,monospace;">check_for_restart</span>,
442      <span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
443      <span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
444      <span style="font-family: Courier New,Courier,monospace;">data_output_3d</span>,
445      <span style="font-family: Courier New,Courier,monospace;">data_output_profiles</span>,
446      <span style="font-family: Courier New,Courier,monospace;">data_output_ptseries</span>,
447      <span style="font-family: Courier New,Courier,monospace;">data_output_spectra</span>,
448      <span style="font-family: Courier New,Courier,monospace;">data_output_tseries</span>,
449      <span style="font-family: Courier New,Courier,monospace;">header</span>,
450      <span style="font-family: Courier New,Courier,monospace;">init_coupling</span>,
451      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
452      <span style="font-family: Courier New,Courier,monospace;">mrun</span>,
453      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
454      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
455      <span style="font-family: Courier New,Courier,monospace;">surface_coupler</span>,
456      <span style="font-family: Courier New,Courier,monospace;">time_integration</span>,
457      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
458
459      <br>
460
461Clipping of dvrp output implemented. Default colourtable for particles
462implemented, particle attributes (color, dvrp_size) can be set with new
463parameters <span style="font-family: Courier New,Courier,monospace;">particle_color</span>,
464      <span style="font-family: Courier New,Courier,monospace;">particle_dvrpsize</span>,
465      <span style="font-family: Courier New,Courier,monospace;">color_interval</span>,
466      <span style="font-family: Courier New,Courier,monospace;">dvrpsize_interval</span>.
467Slicer attributes (dvrp) are set with new routine <span style="font-family: Courier New,Courier,monospace;">set_slicer_attributes_dvrp</span>
468and are controlled with existing parameters <span style="font-family: Courier New,Courier,monospace;">slicer_range_limits</span>.
469(<span style="font-family: Courier New,Courier,monospace;">init_dvrp</span>,
470      <span style="font-family: Courier New,Courier,monospace;">data_output_dvrp</span>,
471      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
472      <span style="font-family: Courier New,Courier,monospace;">set_slicer_attributes_dvrp</span>,&nbsp;
473      <span style="font-family: Courier New,Courier,monospace;">user_data_output_dvrp</span>)<br>
474
475      <br>
476
477Polygon reduction for topography and ground plate isosurface. Reduction
478level for buildings can be chosen with parameter cluster_size. (<span style="font-family: Courier New,Courier,monospace;">init_dvrp</span>)<br>
479
480      <br>
481
482Variables <span style="font-family: Courier New,Courier,monospace;">bc_lr</span>
483/ <span style="font-family: Courier New,Courier,monospace;">bc_ns</span>&nbsp;
484in most subroutines replaced by LOGICAL variables <span style="font-family: Courier New,Courier,monospace;">bc_lr_cyc</span>,<br>
485
486      <span style="font-family: Courier New,Courier,monospace;">bc_ns_cyc</span>
487for speed optimization. This gives a significant speedup of more than
48810%. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
489      <span style="font-family: Courier New,Courier,monospace;">diffusion_u</span>,
490      <span style="font-family: Courier New,Courier,monospace;">diffusion_v</span>,
491      <span style="font-family: Courier New,Courier,monospace;">diffusion_w</span>,
492      <span style="font-family: Courier New,Courier,monospace;">modules</span>)<br>
493
494      <br>
495
496Scripts have been adapted for machine lck (Yonsei Univ.). (<span style="font-family: Courier New,Courier,monospace;">mrun</span>, <span style="font-family: Courier New,Courier,monospace;">mbuild</span>, <span style="font-family: Courier New,Courier,monospace;">subjob</span>)<br>
497
498      <br>
499
500Additional timestep criterion in case of simulations with plant canopy.
501(<span style="font-family: Courier New,Courier,monospace;">timestep</span>)<br>
502
503      <br>
504
505Check for illegal entries in <span style="font-family: Courier New,Courier,monospace;">section_xy</span>|<span style="font-family: Courier New,Courier,monospace;">xz</span>|<span style="font-family: Courier New,Courier,monospace;">yz</span> that
506exceed <span style="font-family: Courier New,Courier,monospace;">nz+1</span>|<span style="font-family: Courier New,Courier,monospace;">ny+1</span>|<span style="font-family: Courier New,Courier,monospace;">nx+1</span>. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>)<br>
507
508      <br>
509
510External pressure gradient can be used as driving force. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
511      <span style="font-family: Courier New,Courier,monospace;">header</span>,
512      <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>,
513      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
514      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
515      <span style="font-family: Courier New,Courier,monospace;">prognostic_equations</span>,
516      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
517      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
518
519      <br>
520
521New topography case '<span style="font-style: italic;">single_street_canyon</span>'.
522(<span style="font-family: Courier New,Courier,monospace;">header</span>,
523      <span style="font-family: Courier New,Courier,monospace;">init_grid</span>,
524      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
525      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
526      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
527      <span style="font-family: Courier New,Courier,monospace;">user_check_parameters</span>,
528      <span style="font-family: Courier New,Courier,monospace;">user_header</span>,
529      <span style="font-family: Courier New,Courier,monospace;">user_init_grid</span>,
530      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
531
532      <br>
533
534Option to predefine a target bulk velocity for <span style="font-family: Courier New,Courier,monospace;">conserve_volume_flow</span>.
535(<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
536      <span style="font-family: Courier New,Courier,monospace;">header</span>,
537      <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>,
538      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
539      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
540      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
541      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
542
543      <br>
544
545Option for user defined 2D data output in xy cross sections at z=<span style="font-family: Courier New,Courier,monospace;">nzb</span>+1. (<span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
546      <span style="font-family: Courier New,Courier,monospace;">user_data_output_2d</span>)<br>
547
548      <br>
549
550xy cross section output of surface heatfluxes (sensible and latent). (<span style="font-family: Courier New,Courier,monospace;">average_3d_data</span>,
551      <span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
552      <span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
553      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
554      <span style="font-family: Courier New,Courier,monospace;">read_3d_binary</span>,
555      <span style="font-family: Courier New,Courier,monospace;">sum_up_3d_data</span>,
556      <span style="font-family: Courier New,Courier,monospace;">write_3d_binary</span>)</td>
557      <td style="vertical-align: top; width: 189px;">average_3d_data,
558check_for_restart, check_parameters, data_output_2d, data_output_3d,
559data_output_dvrp, data_output_profiles, data_output_ptseries,
560data_output_spectra, data_output_tseries, diffusion_u, diffusion_v,
561diffusion_w, init_coupling, init_dvrp, init_grid, init_3d_model,
562header, mbuild, modules, mrun, package_parin, parin,
563prognostic_equations, read_3d_binary, read_var_list, subjob,
564sum_up_3d_data, surface_coupler, timestep, time_integration,
565user_check_parameters, user_data_output_2d, user_data_output_dvrp,
566user_header, user_init_grid, write_3d_binary, write_var_list<br>
567
568      <br>
569
570      <span style="font-weight: bold;">new:</span>
571set_particle_attributes, set_slicer_attributes_dvrp</td>
572    </tr>
573    <tr>
574      <td style="vertical-align: top; width: 27px;"><br>
575      </td>
576      <td style="vertical-align: top; width: 38px;"><br>
577      </td>
578      <td style="vertical-align: top; width: 42px;"><br>
579      </td>
580      <td style="vertical-align: top; width: 40px;"><br>
581      </td>
582      <td style="vertical-align: top; width: 27px;">C<br>
583      </td>
584      <td style="vertical-align: top; width: 497px;">Output of messages replaced by
585message handling routine. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>,
586      <span style="font-family: Courier New,Courier,monospace;">advec_s_bc</span>,
587      <span style="font-family: Courier New,Courier,monospace;">buoyancy</span>,
588      <span style="font-family: Courier New,Courier,monospace;">calc_spectra</span>,
589      <span style="font-family: Courier New,Courier,monospace;">check_for_restart</span>,
590      <span style="font-family: Courier New,Courier,monospace;">check_open</span>,
591      <span style="font-family: Courier New,Courier,monospace;">coriolis</span>,
592      <span style="font-family: Courier New,Courier,monospace;">cpu_log</span>,
593      <span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
594      <span style="font-family: Courier New,Courier,monospace;">data_output_3d</span>,
595      <span style="font-family: Courier New,Courier,monospace;">data_output_dvrp</span>,
596      <span style="font-family: Courier New,Courier,monospace;">data_output_profiles</span>,
597      <span style="font-family: Courier New,Courier,monospace;">data_output_spectra</span>,
598      <span style="font-family: Courier New,Courier,monospace;">fft_xy</span>,
599      <span style="font-family: Courier New,Courier,monospace;">flow_statistics</span>,
600      <span style="font-family: Courier New,Courier,monospace;">header</span>,&nbsp;
601      <span style="font-family: Courier New,Courier,monospace;">init_1d_model</span>,
602      <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>,
603      <span style="font-family: Courier New,Courier,monospace;">init_dvrp</span>,
604      <span style="font-family: Courier New,Courier,monospace;">init_grid</span>,
605      <span style="font-family: Courier New,Courier,monospace;">init_particles</span>,
606      <span style="font-family: Courier New,Courier,monospace;">init_pegrid</span>,
607      <span style="font-family: Courier New,Courier,monospace;">netcdf</span>,
608      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
609      <span style="font-family: Courier New,Courier,monospace;">plant_canopy_model</span>,
610      <span style="font-family: Courier New,Courier,monospace;">poisfft_hybrid</span>,
611      <span style="font-family: Courier New,Courier,monospace;">poismg</span>,
612      <span style="font-family: Courier New,Courier,monospace;">read_3d_binary</span>,
613      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
614      <span style="font-family: Courier New,Courier,monospace;">surface_coupler</span>,
615      <span style="font-family: Courier New,Courier,monospace;">temperton_fft</span>,
616      <span style="font-family: Courier New,Courier,monospace;">timestep</span>,
617      <span style="font-family: Courier New,Courier,monospace;">user_actions</span>,
618      <span style="font-family: Courier New,Courier,monospace;">user_data_output_dvrp</span>,
619      <span style="font-family: Courier New,Courier,monospace;">user_dvrp_coltab</span>,
620      <span style="font-family: Courier New,Courier,monospace;">user_init_grid</span>,
621      <span style="font-family: Courier New,Courier,monospace;">user_init_plant_canopy</span>,
622      <span style="font-family: Courier New,Courier,monospace;">user_parin</span>,
623      <span style="font-family: Courier New,Courier,monospace;">user_read_restart_data</span>,
624      <span style="font-family: Courier New,Courier,monospace;">user_spectra</span>)<br>
625
626      <br>
627
628Output of NetCDF messages with aid of message handling routine. (<span style="font-family: Courier New,Courier,monospace;">check_open</span>,
629      <span style="font-family: Courier New,Courier,monospace;">close_file</span>,
630      <span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
631      <span style="font-family: Courier New,Courier,monospace;">data_output_3d</span>,
632      <span style="font-family: Courier New,Courier,monospace;">data_output_profiles</span>,
633      <span style="font-family: Courier New,Courier,monospace;">data_output_ptseries</span>,
634      <span style="font-family: Courier New,Courier,monospace;">data_output_spectra</span>,&nbsp;
635      <span style="font-family: Courier New,Courier,monospace;">data_output_tseries</span>,
636      <span style="font-family: Courier New,Courier,monospace;">netcdf</span><span style="font-family: Courier New,Courier,monospace;"></span>)<br>
637
638      <br>
639
640__lcmuk changed to __lc to avoid problems with Intel compiler on
641sgi-ice. (<span style="font-family: Courier New,Courier,monospace;">poisfft</span>)<br>
642
643      <br>
644
645For extended NetCDF files, the updated title attribute includes an
646update of time_average_text where appropriate. (<span style="font-family: Courier New,Courier,monospace;">netcdf</span>)<br>
647
648      <br>
649
650In case of restart runs without extension, initial profiles are not
651written to NetCDF-file anymore. So far, time axis always started at
652t=0. (<span style="font-family: Courier New,Courier,monospace;">data_output_profiles</span>,
653      <span style="font-family: Courier New,Courier,monospace;">modules</span>,
654      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
655      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
656
657      <br>
658
659      <span style="font-family: Courier New,Courier,monospace;">initializing_actions</span>='<span style="font-style: italic;">read_data_for_recycling</span>' renamed to
660'<span style="font-style: italic;">cyclic_fill</span>'. A cyclic fill
661can now <br>
662
663be used independent of <span style="font-family: Courier New,Courier,monospace;">turbulent_inflow</span>.
664(<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
665      <span style="font-family: Courier New,Courier,monospace;">header</span>,
666      <span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>)<br>
667
668      <br>
669
6702 NetCDF error numbers changed. (<span style="font-family: Courier New,Courier,monospace;">data_output_3d</span>)<br>
671
672      <br>
673
674A link to the webspage appendix_a.html is printed for further
675information about possible reasons of the error that appeared. (message)<br>
676
677      <br>
678
679Temperature gradient criterion for estimating the boundary layer height
680replaced by the gradient criterion of Sullivan et al. (1998). (<span style="font-family: Courier New,Courier,monospace;">flow_statistics</span>)<br>
681
682      <br>
683
684NetCDF unit attribute in timeseries output in case of statistic regions
685added. (<span style="font-family: Courier New,Courier,monospace;">netcdf</span>)<br>
686
687      <br>
688
689Maximum number of tails is calculated from maximum number of particles
690and <span style="font-family: Courier New,Courier,monospace;">skip_particles_for_tail</span>.
691(<span style="font-family: Courier New,Courier,monospace;">init_particles</span>)<br>
692
693      <br>
694
695Value of <span style="font-family: Courier New,Courier,monospace;">vertical_particle_advection</span>
696is allowed to differ for each particle group. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>,
697      <span style="font-family: Courier New,Courier,monospace;">header</span>,
698      <span style="font-family: Courier New,Courier,monospace;">modules</span>)
699      <br>
700
701      <br>
702
703First constant in array <span style="font-family: Courier New,Courier,monospace;">den</span> also
704defined as type double. (<span style="font-family: Courier New,Courier,monospace;">eqn_state_seawater</span>)<br>
705
706      <br>
707
708Parameter <span style="font-family: Courier New,Courier,monospace;">dvrp_psize</span>
709moved from <span style="font-family: Courier New,Courier,monospace;">particles_par</span>
710to <span style="font-family: Courier New,Courier,monospace;">dvrp_graphics_par</span>.
711(<span style="font-family: Courier New,Courier,monospace;">package_parin</span>)<br>
712
713      <br>
714
715      <span style="font-family: Courier New,Courier,monospace;">topography_grid_convention</span>
716moved from <span style="font-family: Courier New,Courier,monospace;">userpar</span>
717to <span style="font-family: Courier New,Courier,monospace;">inipar</span>
718(<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>,
719      <span style="font-family: Courier New,Courier,monospace;">header</span>,
720      <span style="font-family: Courier New,Courier,monospace;">parin</span>,
721      <span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
722      <span style="font-family: Courier New,Courier,monospace;">user_check_parameters</span>,
723      <span style="font-family: Courier New,Courier,monospace;">user_header</span>,
724      <span style="font-family: Courier New,Courier,monospace;">user_init_grid</span>,
725      <span style="font-family: Courier New,Courier,monospace;">user_parin</span>,
726      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
727
728      <br>
729
730Default value of <span style="font-family: Courier New,Courier,monospace;">grid_matching</span>
731changed to '<span style="font-style: italic;">strict</span>'. (<span style="font-family: Courier New,Courier,monospace;">modules</span>)<br>
732
733      <br>
734
735Adjustments for runs on lcxt4 (necessary due to a software update on
736CRAY) and for coupled runs on ibmy. (<span style="font-family: Courier New,Courier,monospace;">mrun</span>, <span style="font-family: Courier New,Courier,monospace;">subjob</span>)</td>
737      <td style="vertical-align: top; width: 189px;">advec_particles,
738advec_s_bc,
739buoyancy, calc_spectra, check_for_restart, check_open,
740check_parameters, close_file, coriolis, cpu_log, data_output_2d,
741data_output_3d, data_output_dvrp, data_output_profiles,
742data_output_ptseries, data_output_spectra, data_output_tseries,
743eqn_state_seawater, fft_xy, flow_statistics, header, init_1d_model,
744init_3d_model, init_dvrp, init_grid, init_particles, init_pegrid,
745message, mrun, netcdf, package_parin, parin, plant_canopy_model,
746poisfft, poisfft_hybrid, poismg, read_3d_binary, read_var_list, subjob,
747surface_coupler, temperton_fft, timestep,
748user_actions,user_check_parameters, user_data_output_dvrp,
749user_dvrp_coltab, user_header, user_init_grid, user_init_plant_canopy,
750user_parin, user_read_restart_data, user_spectra, write_var_list </td>
751    </tr>
752    <tr>
753      <td style="vertical-align: top; width: 27px;"><br>
754      </td>
755      <td style="vertical-align: top; width: 38px;"><br>
756      </td>
757      <td style="vertical-align: top; width: 42px;"><br>
758      </td>
759      <td style="vertical-align: top; width: 40px;"><br>
760      </td>
761      <td style="vertical-align: top; width: 27px;">B<br>
762      </td>
763      <td style="vertical-align: top; width: 497px;">Bugfix: Initial hydrostatic
764pressure profile in case of ocean runs is now calculated in 5 iteration
765steps. (<span style="font-family: Courier New,Courier,monospace;">init_ocean</span>)<br>
766
767      <br>
768
769Bugfix: wrong sign in buoyancy production of ocean part in case of not
770using the reference density (only in 3D routine <span style="font-family: Courier New,Courier,monospace;">production_e</span>).
771(<span style="font-family: Courier New,Courier,monospace;">production_e</span>)<br>
772
773      <br>
774
775Bugfix: output of averaged 2d/3d quantities requires that an avaraging
776interval has been set, respective error message is included. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>)<br>
777
778      <br>
779
780Bugfix: Output on unit 14 only if requested by <span style="font-family: Courier New,Courier,monospace;">write_binary</span>.
781(<span style="font-family: Courier New,Courier,monospace;">user_last_actions</span>)<br>
782
783      <br>
784
785Bugfix to avoid zero division by <span style="font-family: Courier New,Courier,monospace;">km_neutral</span>.
786(<span style="font-family: Courier New,Courier,monospace;">production_e</span>)<br>
787
788      <br>
789
790Bugfix for extended NetCDF files: In order to avoid 'data mode' errors
791if updated attributes are larger than their original size, <span style="font-family: Courier New,Courier,monospace;">NF90_PUT_ATT</span>
792is called in 'define mode' enclosed by <span style="font-family: Courier New,Courier,monospace;">NF90_REDEF</span>
793and <span style="font-family: Courier New,Courier,monospace;">NF90_ENDDEF</span>
794calls. This implies a possible performance loss; an alternative
795strategy would be to ensure equal attribute size in a job chain. (<span style="font-family: Courier New,Courier,monospace;">netcdf</span>)<br>
796
797      <br>
798
799Bugfix: correction of initial volume flow for non-flat topography. (<span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>)<br>
800
801      <br>
802
803Bugfix: zero initialization of arrays within buildings for '<span style="font-style: italic;">cyclic_fill</span>'. (<span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>)<br>
804
805      <br>
806
807Bugfix: <span style="font-family: Courier New,Courier,monospace;">to_be_resorted</span>
808=&gt; <span style="font-family: Courier New,Courier,monospace;">s_av</span>
809for time-averaged scalars. (<span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>,
810      <span style="font-family: Courier New,Courier,monospace;">data_output_3d</span>)<br>
811
812      <br>
813
814Bugfix: avoid that <span style="font-family: Courier New,Courier,monospace;">ngp_2dh_s_inner</span>
815becomes zero. (<span style="font-family: Courier New,Courier,monospace;">init_3_model</span>)<br>
816
817      <br>
818
819Typographical error: unit of wpt in dots_unit. (<span style="font-family: Courier New,Courier,monospace;">modules</span>)<br>
820
821      <br>
822
823Bugfix: error in check, if particles moved further than one subdomain
824length. This check must not be applied for newly released particles. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>)<br>
825
826      <br>
827
828Bugfix: several tail counters are initialized, <span style="font-family: Courier New,Courier,monospace;">particle_tail_coordinates</span>
829is only written to file if its third index is &gt; 0, arrays for tails
830are allocated with a minimum size of 10 tails if there is no tail
831initially. (<span style="font-family: Courier New,Courier,monospace;">advec_particles</span>,
832      <span style="font-family: Courier New,Courier,monospace;">init_particles</span><span style="font-family: Courier New,Courier,monospace;"></span>)<br>
833
834      <br>
835
836Bugfix: pressure included for profile output. (<span style="font-family: Courier New,Courier,monospace;">check_parameters</span>)<br>
837
838      <br>
839
840Bugfix: Type of <span style="font-family: Courier New,Courier,monospace;">count</span> and <span style="font-family: Courier New,Courier,monospace;">count_rate</span>
841changed to default <span style="font-family: Courier New,Courier,monospace;">INTEGER</span> on
842NEC machines. (<span style="font-family: Courier New,Courier,monospace;">cpu_log</span>)<br>
843
844      <br>
845
846Bugfix: output of particle time series only if particle advection is
847switched on. (<span style="font-family: Courier New,Courier,monospace;">time_integration</span>)<br>
848
849      <br>
850
851Bugfix: qsws was calculated in case of <span style="font-family: Courier New,Courier,monospace;">constant heatflux</span>
852= <span style="font-family: Courier New,Courier,monospace;">.FALSE.</span>.
853(<span style="font-family: Courier New,Courier,monospace;">prandtl_fluxes</span>)<br>
854
855      <br>
856
857Bugfix: averaging along z is not allowed for 2d quantities (e.g. u* and
858z0). (<span style="font-family: Courier New,Courier,monospace;">data_output_2d</span>)<br>
859
860      <br>
861
862Typographical errors. (<span style="font-family: Courier New,Courier,monospace;">netcdf</span>)<br>
863
864      <br>
865
866If the inversion height calculated by the prerun is zero,
867inflow_damping_height must be explicitly specified. (<span style="font-family: Courier New,Courier,monospace;">init_3d_model</span>)<br>
868
869      <br>
870
871Small bugfix concerning 3d 64bit netcdf output format. (<span style="font-family: Courier New,Courier,monospace;">header</span>)<br>
872
873      <br>
874
875Bugfix: <span style="font-family: Courier New,Courier,monospace;">dt_fixed</span>
876removed from the restart file, because otherwise, no change from a
877fixed to a variable timestep would be possible in restart runs. (<span style="font-family: Courier New,Courier,monospace;">read_var_list</span>,
878      <span style="font-family: Courier New,Courier,monospace;">write_var_list</span>)<br>
879
880      <br>
881
882Bugfix: initial setting of <span style="font-family: Courier New,Courier,monospace;">time_coupling</span>
883in coupled restart runs. (<span style="font-family: Courier New,Courier,monospace;">time_integration</span>)</td>
884      <td style="vertical-align: top; width: 189px;">advec_particles,
885check_parameters, cpu_log, data_output_2d, data_output_3d, header,
886init_3d_model, init_particles, init_ocean, modules, netcdf,
887prandtl_fluxes, production_e, read_var_list, time_integration,
888user_last_actions, write_var_list<br>
889
890      </td>
891    </tr>
892    <tr>
893      <td style="vertical-align: top; width: 27px;">02/02/09<br>
894      </td>
895      <td style="vertical-align: top; width: 38px;">SR<br>
896      </td>
897      <td style="vertical-align: top; width: 42px;">228<br>
898      </td>
899      <td style="vertical-align: top; width: 40px;">3.6<br>
900      </td>
901      <td style="vertical-align: top; width: 27px;">N<br>
902      </td>
903      <td style="vertical-align: top; width: 497px;">This
904release contains further additions, changes, and bugfixes for the
905SGI-ICE system, as well as important changes like the splitting of the
906user-interface into single files, a complete revision of the
907pre-compiling mechanism allowing to use different make-depositories
908simultaneously, and a revision of the reading-mechanism from restart
909files, which has no more restrictions in case that the previous and
910current run have different domain/subdomain sizes. A new handling of
911all kind of output messages is introduced with this release and will be
912applied to all existing messages within the next releases.<br>
913
914      <br>
915
916      <span style="font-weight: bold;">New features are:</span><br style="font-weight: bold;">
917
918      <br>
919
920Restart runs on SGI-ICE are working. (mrun)<br>
921
9222d-decomposition is default on SGI-ICE systems. (init_pegrid)<br>
923
924      <br>
925
926Ocean-atmosphere coupling realized with MPI-1. mrun adjusted for this
927case (-Y option). Check that PALM is called with <span style="font-family: Courier New,Courier,monospace;">mrun</span>-option
928"<span style="font-style: italic;">-K parallel</span>" for coupling.
929Adjustments in <span style="font-family: Courier New,Courier,monospace;">mrun</span>, <span style="font-family: Courier New,Courier,monospace;">mbuild</span>, and
930      <span style="font-family: Courier New,Courier,monospace;">subjob</span>
931for lcxt4.<br>
932
933      <br>
934
935DVRP arguments changed to single precision, mode pathlines added.<br>
936
937      <br>
938
939User can add additional routines in files <span style="font-family: Courier New,Courier,monospace;">user_additional_routines</span>.<br>
940
941      <br>
942
943User can check user parameters and deduce further quantities in <span style="font-family: Courier New,Courier,monospace;">user_check_parameters</span></td>
944      <td style="vertical-align: top; width: 189px;">check_for_restart,
945check_parameters, data_output_dvrp, init_dvrp, init_pegrid, local_stop,
946modules, package_parin, palm, surface_coupler, timestep<br>
947
948      <br>
949
950Makefile,&nbsp;mbuild, mrun, subjob<br>
951
952      <br>
953
954      <span style="font-weight: bold;">new:</span><br>
955
956init_coupling, user_additional_routines, user_check_parameters</td>
957    </tr>
958    <tr>
959      <td style="vertical-align: top; width: 27px;"><br>
960      </td>
961      <td style="vertical-align: top; width: 38px;"><br>
962      </td>
963      <td style="vertical-align: top; width: 42px;"><br>
964      </td>
965      <td style="vertical-align: top; width: 40px;"><br>
966      </td>
967      <td style="vertical-align: top; width: 27px;">C<br>
968      </td>
969      <td style="vertical-align: top; width: 497px;">User interface has been
970split into single files.<br>
971
972      <br>
973
974Type of variables <span style="font-family: Courier New,Courier,monospace;">count</span> and <span style="font-family: Courier New,Courier,monospace;">count_rate</span>
975changed to INTEGER(8) in order to avoid "out of range" problems, which
976result in measured negative time intervals. (cpu_log, local_tremain,
977local_tremain_ini)<br>
978
979      <br>
980
981Reading mechanism from restart files
982completely revised. The subdomain/total domain size is now allowed to
983vary arbitrarily between the current and previous run. (read_var_list,
984read_3d_binary, user_read_restart_data)<br>
985
986      <br>
987
988Precompilation mechanism (<span style="font-family: Courier New,Courier,monospace;">mbuild</span>)
989completely revised: the source-tarfile remains in the source directory (<span style="font-family: Courier New,Courier,monospace;">trunk/SOURCE</span>).
990One depository per block (given in the config-file) is created. Always
991all files from the source directory are copied to the respective
992depository. No additional file checks are done any more (mrun version
9932.1). The depository name used contains the conditions given by <span style="font-family: Courier New,Courier,monospace;">mrun</span>-option
994"<span style="font-family: Courier New,Courier,monospace;">-K</span>".
995(mbuild, mrun)<br>
996
997      <br>
998
999Output messages (including required stop of execution) can now be
1000handled with the new subroutine&nbsp;<span style="font-family: Courier New,Courier,monospace;">message</span>.
1001All output messages will be replaced by this routine step by step
1002within the next revisions.<br>
1003
1004      <br>
1005
1006Neumann boundary condition at <span style="font-family: Courier New,Courier,monospace;">k=nzb</span> is
1007explicitly set for better reading, although this has been already done
1008in boundary_conds. (advec_s_bc)<br>
1009
1010      <br>
1011
1012Origin of the xy-coordinate system shifted from the center of the first
1013grid cell (indices <span style="font-family: Courier New,Courier,monospace;">i=0</span>, <span style="font-family: Courier New,Courier,monospace;">j=0</span>) to the
1014south-left corner of this cell. (netcdf) Topography definition
1015according to new user parameter <span style="font-family: Courier New,Courier,monospace;">topography_grid_convention</span>.
1016(init_grid, modules, user_header, user_init_grid, user_parin)</td>
1017      <td style="vertical-align: top; width: 189px;">advec_s_bc,
1018check_parameters, cpu_log, init_grid, local_stop, local_tremain,
1019local_tremain_ini, modules, netcdf, read_3d_binary, read_var_list,
1020user_read_restart_data<br>
1021
1022      <br>
1023
1024Makefile, mbuild, mrun<br>
1025
1026      <br>
1027
1028      <span style="font-weight: bold;">removed:</span><br>
1029
1030user_interface<br>
1031
1032      <br>
1033
1034      <span style="font-weight: bold;">new:</span><br>
1035
1036message,
1037user_3d_data_averaging, user_actions, user_advec_particles,
1038user_check_data_output, user_check_data_output_pr, user_data_output_2d,
1039user_data_output_3d, user_data_output_dvrp, user_define_netcdf_grid,
1040user_dvrp_coltab, user_header, user_init_3d_model, user_init,
1041user_init_grid, user_init_particles, user_init_plant_canopy,
1042user_last_actions, user_parin, user_parin, user_particle_attributes,
1043user_read_restart_data, user_spectra, user_statistics</td>
1044    </tr>
1045    <tr>
1046      <td style="vertical-align: top; width: 27px;"><br>
1047      </td>
1048      <td style="vertical-align: top; width: 38px;"><br>
1049      </td>
1050      <td style="vertical-align: top; width: 42px;"><br>
1051      </td>
1052      <td style="vertical-align: top; width: 40px;"><br>
1053      </td>
1054      <td style="vertical-align: top; width: 27px;">B<br>
1055      </td>
1056      <td style="vertical-align: top; width: 497px;">Bugfix: array <span style="font-family: Courier New,Courier,monospace;">d</span> is
1057reallocated in case that multigrid is used. (calc_spectra)<br>
1058
1059      <br>
1060
1061Bugfixes for nonparallel execution. (check_for_restart, cpu_statistics,
1062inflow_turbulence,&nbsp;timestep)<br>
1063
1064      <br>
1065
1066Size of <span style="font-family: Courier New,Courier,monospace;">pf3d
1067      </span>adjusted to the required output size (1 gridpoint less,
1068along all three dimensions), because output of a subset of the data (<span style="font-family: Courier New,Courier,monospace;">pf3d(nxa:nxe...)</span>)
1069in the NF90_PUT_VAR statement caused segmentation fault with the INTEL
1070compiler. (combine_plot_fields)<br>
1071
1072      <br>
1073
1074Bugfix: error in <span style="font-family: Courier New,Courier,monospace;">zu</span> index in
1075case of <span style="font-family: Courier New,Courier,monospace;">section_xy=-1</span>.
1076(header)<br>
1077
1078      <br>
1079
1080Inconsistency
1081removed: as the thermal stratification is not taken into account for
1082the evaluation of the wall fluxes at vertical walls, the eddy viscosity
1083      <span style="font-family: Courier New,Courier,monospace;">km</span>
1084must not be used for the evaluation of the velocity gradients <span style="font-family: Courier New,Courier,monospace;">dudy</span>, <span style="font-family: Courier New,Courier,monospace;">dwdy</span>, <span style="font-family: Courier New,Courier,monospace;">dvdx</span> and <span style="font-family: Courier New,Courier,monospace;">dwdx</span>.
1085(production_e)<br>
1086
1087      <br>
1088
1089Bugfix in calculating <span style="font-family: Courier New,Courier,monospace;">k</span> index in
1090case of oceans runs. (sort_particles)<br>
1091
1092      <br>
1093
1094Bugfix: no output of particle concentration and radius unless particles
1095have been started. (data_output_2d)<br>
1096
1097      <br>
1098
1099Bugfix: reading of <span style="font-family: Courier New,Courier,monospace;">spectrum_x|y</span>
1100from restart files ignored if total numbers of grid points do not
1101match. (read_3d_binary)<br>
1102
1103      <br>
1104
1105Bugfix: abort in case that absolute temperature is below zero.
1106(init_cloud_physics)</td>
1107      <td style="vertical-align: top; width: 189px;">advec_particles,
1108calc_spectra, check_for_restart, cpu_statistics, data_output_2d,
1109header, inflow_turbulence, init_cloud_physics, production_e,
1110read_3d_binary, timestep<br>
1111
1112      <br>
1113
1114combine_plot_fields</td>
1115    </tr>
1116  </tbody>
1117</table>
1118<b><blink></blink></b><br>&nbsp;
1119<br>&nbsp;
1120<h2><a name="Kapitel2.0"></a>2.0&nbsp; How
1121to change the source
1122code and how to document modifications<br>
1123</h2>Currently
1124(Sep 23rd, 2009), only selected users are allowed to commit changes to
1125the repository. Rules given below are preliminary, until we have switched to the "trac"-System.<br>
1126<br>
1127<ol>
1128  <li>Change source code in your current working copy. Document changes in the respective file headers unter "<span style="font-family: Courier New,Courier,monospace;">Current revisions:</span>".
1129Additionally, document all changes in a local file (e.g.
1130~/palm/current_version/CURRENT_MODIFICATIONS), including the files that
1131have been changed. Classify changes in three cases, new (N), changed
1132(C), and bugfix (B). <span style="font-weight: bold;">Try to be as short and as precise as possible in describing the changes!</span><br>
1133    <br>
1134  </li>
1135  <li>Test the changed version, unless it works sufficiently.<br>
1136    <br>
1137  </li>
1138 
1139  <li>Commit the changes to the repository<br>
1140    <br>
1141    <span style="font-family: Courier New,Courier,monospace;">&nbsp;&nbsp; svn commit -m "message string" trunk<br>
1142    </span><br>
1143where "<span style="font-family: Courier New,Courier,monospace;">message string</span>" is a short, <span style="font-weight: bold;">meaningful</span> summary of the changes.<br>
1144    <br>
1145Alternatively, in case that you have made quite a lot of changes, you
1146can also give the contents of your file CURRENT_MODIFICATIONS as the
1147log message:<br>
1148    <br>
1149    <span style="font-family: Courier New,Courier,monospace;">&nbsp;&nbsp; svn commit -F CURRENT_MODIFICATIONS trunk</span><br>
1150    <br>
1151  </li>
1152
1153  <li>Enter the changes into the technical documentation (under <span style="font-family: Courier New,Courier,monospace;">.../trunk/DOC/tec/technical_documentation.html</span>).<br>
1154    <br>
1155  </li>
1156  <li>Move the change comments in the file headers from "Current
1157revisions:" to "Former revisions:". Set the current svn id in front of
1158that.<br>
1159    <br>
1160    <span style="font-weight: bold;">Example:</span><br>
1161    <br>
1162    <span style="font-weight: bold;">before move:</span><br>
1163    <br>
1164    <span style="font-family: Courier New,Courier,monospace;">! Current revisions:</span><br style="font-family: Courier New,Courier,monospace;">
1165    <span style="font-family: Courier New,Courier,monospace;">! -----------------</span><br style="font-family: Courier New,Courier,monospace;">
1166    <span style="font-family: Courier New,Courier,monospace;">! <span style="font-weight: bold;">new dummy argument abcd</span></span><span style="font-family: Courier New,Courier,monospace;"></span><br style="font-family: Courier New,Courier,monospace;">
1167    <span style="font-family: Courier New,Courier,monospace;">!</span><br style="font-family: Courier New,Courier,monospace;">
1168    <span style="font-family: Courier New,Courier,monospace;">! Former revisions:</span><br style="font-family: Courier New,Courier,monospace;">
1169    <span style="font-family: Courier New,Courier,monospace;">! -----------------</span><br style="font-family: Courier New,Courier,monospace;">
1170    <span style="font-family: Courier New,Courier,monospace;">! $Id: technical_documentation.html 513 2010-03-16 13:37:48Z raasch $</span><br style="font-family: Courier New,Courier,monospace;">
1171    <span style="font-family: Courier New,Courier,monospace;">!</span><br style="font-family: Courier New,Courier,monospace;">
1172    <span style="font-family: Courier New,Courier,monospace;"></span><span style="font-family: Courier New,Courier,monospace;"></span><span style="font-family: Courier New,Courier,monospace;"></span><span style="font-family: Courier New,Courier,monospace;">! 407 2009-12-01 15:01:15Z maronga</span><br style="font-family: Courier New,Courier,monospace;">
1173    <span style="font-family: Courier New,Courier,monospace;">! var_ts is replaced by dots_max </span><br>
1174    <br>
1175    <span style="font-weight: bold;">after move:</span><br>
1176    <br>
1177    <span style="font-family: Courier New,Courier,monospace;">! Current revisions:</span><br style="font-family: Courier New,Courier,monospace;">
1178
1179    <span style="font-family: Courier New,Courier,monospace;">! -----------------</span><br style="font-family: Courier New,Courier,monospace;">
1180
1181    <span style="font-family: Courier New,Courier,monospace;">! </span><br style="font-family: Courier New,Courier,monospace;">
1182
1183    <span style="font-family: Courier New,Courier,monospace;">!</span><br style="font-family: Courier New,Courier,monospace;">
1184
1185    <span style="font-family: Courier New,Courier,monospace;">! Former revisions:</span><br style="font-family: Courier New,Courier,monospace;">
1186
1187    <span style="font-family: Courier New,Courier,monospace;">! -----------------</span><br style="font-family: Courier New,Courier,monospace;">
1188
1189    <span style="font-family: Courier New,Courier,monospace;">! $Id: technical_documentation.html 513 2010-03-16 13:37:48Z raasch $<br>
1190!</span><br style="font-family: Courier New,Courier,monospace;">
1191    <span style="font-family: Courier New,Courier,monospace;">! </span><span style="font-family: Courier New,Courier,monospace;"><span style="font-weight: bold; color: rgb(51, 51, 255);">377 2008-08-30 11:03:41Z raasch</span><br>
1192! </span><span style="font-family: Courier New,Courier,monospace; font-weight: bold;">new dummy argument abcd</span><br style="font-family: Courier New,Courier,monospace;">
1193
1194    <span style="font-family: Courier New,Courier,monospace;">!</span><br style="font-family: Courier New,Courier,monospace;">
1195
1196    <span style="font-family: Courier New,Courier,monospace;">! 359 2008-06-01 15:01:15Z maronga</span><br style="font-family: Courier New,Courier,monospace;">
1197
1198    <span style="font-family: Courier New,Courier,monospace;">! var_ts is replaced by dots_max<br>
1199 </span><br>
1200  </li>
1201  <li>Commit the changes in the technical documentation and the file headers:<br>
1202    <br>
1203    <span style="font-family: Courier New,Courier,monospace;">&nbsp;&nbsp; svn commit -m "last commit documented" trunk</span><br>
1204    <br>
1205 <br>
1206  </li>
1207</ol>
1208
1209<h2>
1210<a name="Kapitel3.0"></a>3.0&nbsp; Description
1211of selected parts of the
1212model source code</h2>
1213<b></b>
1214<p>This section gives links to existing descriptions about special
1215parts of the PALM code, e.g. special numerical methods that are used
1216(including mathematical background). Documents are stored in single
1217files with different formats. Some are in German (sorry for the
1218inconvenience).
1219<br>&nbsp;
1220</p><ul> <li> <a name="UPS"></a>upstream-spline
1221advection scheme ( <a href="methods/upstream_spline/ups.pdf">.pdf</a>
1222, only in German)</li> <li> <a name="Cloud_physics"></a>cloud
1223physics module ( <a href="methods/cloud_physics/cloud_physics.pdf">.pdf</a>
1224)</li> 
1225  <li> <a name="Bitkompression"></a>data compression with <a href="methods/bit_compression/bit_compression.html">bit shifting method</a> (only in German)<br>
1226  </li>
1227  <li>Runge-Kutta
1228time integration scheme ( <a href="methods/runge_kutta/runge_kutta.pdf">.pdf</a>
1229, only in German)</li>
1230
1231</ul><br>
1232&nbsp;
1233<br>&nbsp;
1234<br>&nbsp;
1235<br>&nbsp;
1236<br>&nbsp;
1237<br>&nbsp;
1238<br>&nbsp;
1239<br>&nbsp;
1240</body></html>
Note: See TracBrowser for help on using the repository browser.