Ignore:
Timestamp:
Mar 13, 2007 2:52:40 AM (15 years ago)
Author:
raasch
Message:

Id string added to all html files

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/DOC/app/chapter_3.5.1.html

    r54 r62  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    22<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>
     3<meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252"><title>PALM
     4chapter 3.5.1</title> <meta name="GENERATOR" content="StarOffice 7 (Win32)"> <meta name="AUTHOR" content="Siegfried Raasch"> <meta name="CREATED" content="20040802;11451548"> <meta name="CHANGED" content="20041112;14401801"> <meta name="KEYWORDS" content="parallel LES model"> <style>
    195<!--
    206@page { size: 21cm 29.7cm }
    217-->
    22   </style></head>
    23 <body style="direction: ltr;" lang="en-US">
    24 
    25 <h3 style="line-height: 100%;">3.5.1 Interfaces for
     8</style></head>
     9<body style="direction: ltr;" lang="en-US"><h3 style="line-height: 100%;">3.5.1 Interfaces for
    2610user-defined code<br>
    27 
    28 </h3>
    29 
    30 <p style="margin-bottom: 0cm; line-height: 100%;">The
     11</h3><p style="margin-bottom: 0cm; line-height: 100%;">The
    3112following table
    3213describes the available interfaces for user-defined code in the model,
     
    3415names and possible arguments of the subroutines involved as well as
    3516actions which can be accomplished in these subroutines. <br>
    36 
    3717&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
    52 argument</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
     18<table style="width: 100%;" border="1" cellpadding="2" cellspacing="4"> <col width="211"> <col width="117"> <col width="862"> <tbody> <tr><td width="211"> <p><font size="4"><b>Call
     19location</b></font></p> </td> <td width="117"> <p><font size="4"><b>Subroutine
     20name and
     21argument</b></font></p> </td> <td style="width: 862px;"> <p><font size="4"><b>Possible
     22actions</b></font></p> </td> </tr> <tr><td>---</td><td><span style="font-family: monospace;"><a name="user"></a>MODULE
     23user</span></td><td>All
    6424user-defined variables which are used outside the respective local
    65 scopes 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
     25scopes of the user-defined subroutines have to be declared here.</td></tr><tr valign="top"> <td width="211"> <p>End
     26of <tt><font style="font-size: 10pt;" size="2">parin.f90</font></tt></p>
     27</td> <td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_parin"></a>user_parin</font></font></tt></p>
     28</td> <td width="862"> <p>Declaration of
     29user-defined parameters in the NAMELIST
    7930group <tt><font style="font-size: 10pt;" size="2">&amp;userpar</font></tt>.
    8031These
     
    8536and must not be changed. Additional NAMELIST groups may be declared if
    8637desired.&nbsp; <br>
    87 
    8838The CPU time needed for executing <tt><font style="font-size: 10pt;" size="2">user_parin</font></tt>
    8939is included in the
    9040local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
    91 within 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
     41within the category &ldquo;initialisation&rdquo;.</p> </td>
     42</tr> <tr valign="top"> <td width="211"><p>End
     43of <tt><font style="font-size: 10pt;" size="2">header.f90</font></tt></p>
     44</td>
     45<td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_header"></a>user_header(
     46io )</font></font></tt></p> </td> <td width="862"> <p>Output of the values of the
     47user-defined parameters to
    11148the
    11249local files <a href="chapter_3.4.html#HEADER">HEADER</a>
     
    12562user-defined
    12663subdomains 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
     64</td> </tr> <tr valign="top"> <td width="211"> <p>End of <tt><font style="font-size: 10pt;" size="2">init_3d_model.f90</font></tt></p>
     65</td> <td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init"></a>user_init</font></font></tt></p>
     66</td> <td width="862"> <p>Here, user-defined
     67initialization actions which should
    14668be
    14769accomplished before the start of the 3D-model can be implemented (e.g.
     
    15072the model (<a href="chapter_4.1.html">chapter
    151734.1</a>) have already been carried out at all.&nbsp; </p>
    152 
    153       <p>One of the most important actions here is the definition
     74<p>One of the most important actions here is the definition
    15475of
    15576user-defined subdomains for statistic analysis and output (see <a href="chapter_4.1.html#statistic_regions">statistic_regions</a>
    15677and <a href="chapter_3.5.3.html">chapter
    157 3.5.3</a>) and of additional time series quantities (see comment line example in the file).&nbsp; <br>
    158 
     783.5.3</a>) and of additional time series quantities (see comment
     79line example in the file).&nbsp; <br>
    15980CPU time for <tt><font style="font-size: 10pt;" size="2">user_init</font></tt>
    16081is considered in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
    161 within the category &ldquo;initialisation&rdquo;.</p><p>See also <tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a href="#user_init_3d_model">user_init_3d_model</a>.</font></font></tt></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>
     82within the category &ldquo;initialisation&rdquo;.</p><p>See
     83also <tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a href="#user_init_3d_model">user_init_3d_model</a>.</font></font></tt></p>
     84</td> </tr> <tr> <td style="vertical-align: top;"><tt><font style="font-size: 10pt;" size="2">DEFAULT</font></tt>
    17085case of <tt><font style="font-size: 10pt;" size="2">SELECT
    17186CASE( TRIM(topography) ) </font></tt>command in the
    172 middle&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
     87middle&nbsp;of <tt><font style="font-size: 10pt;" size="2">init_grid.f90</font></tt></td> <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>
     88<td> <p>Execution of user-defined grid initializing
     89actions.</p> <p>Here, the user can define the
     90two-dimensional index
    18091array&nbsp;<tt><font style="font-size: 10pt;" size="2">nzb_local</font></tt> that is used to
    18192set up a non-flat topography. This requires definition of at least one
     
    18495in&nbsp;<tt><font style="font-size: 10pt;" size="2">user_init_grid</font></tt>.
    18596Note that the <a href="chapter_4.1.html#topography">topography</a>&nbsp;modes
    186       <span style="font-style: italic;">'flat'</span>
     97<span style="font-style: italic;">'flat'</span>
    18798and <span style="font-style: italic;">'single_building'</span>
    18899are not allowed here since these are the standard cases used in the
    189 calling 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>
     100calling routine <tt><font style="font-size: 10pt;" size="2">init_grid</font></tt>. </p> <p>CPU
     101time for <tt><font style="font-size: 10pt;" size="2">user_init_grid</font></tt>
    192102is considered in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
    193 within the category &ldquo;initialisation&rdquo;.</p>
    194 
    195       </td>
    196 
    197     </tr>
    198 
    199     <tr><td style="vertical-align: top;">In the middle of <tt><font style="font-size: 10pt;" size="2">init_3d_model.f90</font></tt></td><td style="vertical-align: top;"><span style="font-family: monospace;"></span><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init_3d_model"></a>user_init_3d_<br>model</font></font></tt></td><td style="vertical-align: top;">Initialization of the 3d-model.<br><br>Allows
     103within the category &ldquo;initialisation&rdquo;.</p> </td>
     104</tr> <tr><td style="vertical-align: top;">In
     105the middle of <tt><font style="font-size: 10pt;" size="2">init_3d_model.f90</font></tt></td><td style="vertical-align: top;"><span style="font-family: monospace;"></span><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_init_3d_model"></a>user_init_3d_<br>model</font></font></tt></td><td style="vertical-align: top;">Initialization of the 3d-model.<br><br>Allows
    200106the complete initialization of the 3d model. The user is responsible to
    201 set at least all those quantities which are normally set within <tt><font style="font-size: 10pt;" size="2">init_3d_model</font></tt>.</td></tr><tr valign="top">
    202 
    203       <td width="211">
    204       <p>In the middle of <tt><font style="font-size: 10pt;" size="2">init_particles.f90</font></tt></p>
    205 
    206       </td>
    207 
    208       <td width="117">
    209       <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>
    210 
    211       </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">particles</font></font></tt></p>
    212 
    213       </td>
    214 
    215       <td width="862">
    216       <p>With this routine e.g. size and color of particles,
     107set at least all those quantities which are normally set within <tt><font style="font-size: 10pt;" size="2">init_3d_model</font></tt>.</td></tr><tr valign="top"> <td width="211"> <p>In
     108the middle of <tt><font style="font-size: 10pt;" size="2">init_particles.f90</font></tt></p>
     109</td> <td width="117"> <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> </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">particles</font></font></tt></p>
     110</td> <td width="862"> <p>With this routine
     111e.g. size and color of particles,
    217112which have
    218113been released initially from a source, can be specified. Like the
     
    220115this routine is only
    221116called if particle advection is switched on (see package parameter <a href="chapter_4.2.html#dt_prel">dt_prel</a>).</p>
    222 
    223       </td>
    224 
    225     </tr>
    226 
    227     <tr valign="top">
    228 
    229       <td width="211">
    230       <p>End of <tt><font style="font-size: 10pt;" size="2">advec_particles.f90</font></tt></p>
    231 
    232       </td>
    233 
    234       <td width="117">
    235       <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>
    236 
    237       </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">attributes</font></font></tt></p>
    238 
    239       </td>
    240 
    241       <td width="862">
    242       <p>Here the particles can be assigned new attributes
     117</td> </tr> <tr valign="top"> <td width="211"> <p>End of <tt><font style="font-size: 10pt;" size="2">advec_particles.f90</font></tt></p>
     118</td> <td width="117"> <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> </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">attributes</font></font></tt></p>
     119</td> <td width="862"> <p>Here the particles
     120can be assigned new attributes
    243121(diameter,
    244122color 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
    245123routine is only
    246124called if particle advection is switched on (see package parameter <a href="chapter_4.2.html#dt_prel">dt_prel</a>).</p>
    247 
    248       </td>
    249 
    250     </tr>
    251 
    252     <tr valign="top">
    253 
    254       <td width="211">
    255       <p>Before the plot of particles and cross-sections in <br>
    256 
    257       <tt><font style="font-size: 10pt;" size="2">dvrp_plot.f90</font></tt></p>
    258 
    259       </td>
    260 
    261       <td width="117">
    262       <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_dvrp_coltab"></a>user_dvrp_coltab
     125</td> </tr> <tr valign="top"> <td width="211"> <p>Before the plot of particles and
     126cross-sections in <br> <tt><font style="font-size: 10pt;" size="2">dvrp_plot.f90</font></tt></p>
     127</td> <td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_dvrp_coltab"></a>user_dvrp_coltab
    263128(</font></font></tt><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> mode )</font></font></tt></p>
    264 
    265       </td>
    266 
    267       <td width="862">
    268       <p>With this routine, color tables can be adjusted which
     129</td> <td width="862"> <p>With this routine,
     130color tables can be adjusted which
    269131should
    270132be used for output with the dvrp software. Individuell color tables for
     
    280142can have the values &ldquo;<i>particles&rdquo;</i>
    281143or &ldquo;<i>slicer&rdquo;</i>).&nbsp; <br>
    282 
    283144This routine only becomes active if dvrp-graphics is switched on (see
    284145package parameter <a href="chapter_4.2.html#dt_dvrp">dt_dvrp</a>).</p>
    285 
    286       </td>
    287 
    288     </tr>
    289 
    290     <tr valign="top">
    291 
    292       <td width="211">
    293       <p>Beginning and end of the time integration loop
    294 of&nbsp; <br>
    295 
    296       <tt><font style="font-size: 10pt;" size="2">time_integration.f90</font></tt>
    297 as well as after each prognostic equation in <br>
    298 
    299       <tt><font style="font-size: 10pt;" size="2">prognostic_equations.f90</font></tt></p>
    300 
    301       </td>
    302 
    303       <td width="117">
    304       <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>
    305 
    306       <p>or<br>
    307 
    308       <font face="Cumberland, monospace"><font style="font-size: 10pt;" size="2"> </font></font>
    309       </p>
    310 
    311       <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>
    312 
    313       </td>
    314 
    315       <td width="862">
    316      
    317 
    318       <p>In this routine user actions can be implemented which
     146</td> </tr> <tr valign="top"> <td width="211"> <p>Beginning and end of the time
     147integration loop
     148of&nbsp; <br> <tt><font style="font-size: 10pt;" size="2">time_integration.f90</font></tt>
     149as well as after each prognostic equation in <br> <tt><font style="font-size: 10pt;" size="2">prognostic_equations.f90</font></tt></p>
     150</td> <td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_actions"></a>user_actions(
     151location )</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> </font></font> </p>
     152<p>or<br> <font face="Cumberland, monospace"><font style="font-size: 10pt;" size="2"> </font></font>
     153</p> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">user_actions(
     154i, 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>
     155</td> <td width="862"> <p>In this routine
     156user actions can be implemented which
    319157are to
    320158be executed either at each time step or at certain times (defined by
     
    328166For example, if called at the beginning of a time step, <tt><font style="font-size: 10pt;" size="2">location</font></tt>
    329167=&nbsp;<i>'before_timestep' </i>and if
    330 called 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>
     168called 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
     169of 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>
    331170if the
    332171cache-optimized version of <span style="font-family: monospace;">prognostic_equation.f90</span>
     
    335174passed as arguments for
    336175all calls within <span style="font-family: monospace;">prognostic_equations</span>.
    337       </p>
    338 
    339       <p>CPU time for <tt><font style="font-size: 10pt;" size="2">user_actions</font></tt>
     176</p> <p>CPU time for <tt><font style="font-size: 10pt;" size="2">user_actions</font></tt>
    340177appears within the category &ldquo;user_actions&rdquo; in the
    341178local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>.
     
    344181needed outside of the prognostic equations. Time needed for calls
    345182within prognostic_equations is considered within the category "all
    346 prog.equations".<br>
    347 
    348       </p>
    349 
    350       <p><b>Important:</b> this subroutine is written
     183prog.equations".<br> </p> <p><b>Important:</b>
     184this subroutine is written
    351185as a FORTRAN
    352186module, which uses so-called function overloading. It can be called in
     
    362196respective 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
    363197in the CASE
    364 structure of <tt><font style="font-size: 10pt;" size="2">user_actions_ij</font></tt>!</p>
    365 
    366       </td>
    367 
    368     </tr>
    369 
    370     <tr valign="top">
    371 
    372       <td width="211">
    373       <p><tt><font style="font-size: 10pt;" size="2">flow_statistics.f90</font></tt>
     198structure of <tt><font style="font-size: 10pt;" size="2">user_actions_ij</font></tt>!</p> </td>
     199</tr> <tr valign="top"> <td width="211"><p><tt><font style="font-size: 10pt;" size="2">flow_statistics.f90</font></tt>
    374200before the summation of array <span style="font-family: monospace;">hom</span>
    375 (horizontal averages)<br>
    376 
    377       </p>
    378 
    379       </td>
    380 
    381       <td width="117">
    382       <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_statistics"></a>user_statistics<br>( sr )</font></font></tt></p>
    383 
    384       </td>
    385 
    386       <td width="862">
    387       <p>Horizontal
     201(horizontal averages)<br> </p> </td> <td width="117"> <p><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><a name="user_statistics"></a>user_statistics<br>(
     202sr )</font></font></tt></p> </td> <td width="862"> <p>Horizontal
    388203averages of vertical profiles of user-defined
    389204quantities can be computed here. Also, additional time series
    390205quantities can be calculated. They have to be defined before in routine
    391 <a href="#user_init"><span style="font-family: Courier New,Courier,monospace;">user_init</span></a>. The routine is called once for each defined statistic region (see <a href="chapter_4.1.html#statistic_region">statistic_region</a>).</p><p></p><p>The routine contains some simple examples (as comment lines) in order to demonstrate how to use it.</p><p><br>Profiles have to be written to
     206<a href="#user_init"><span style="font-family: Courier New,Courier,monospace;">user_init</span></a>.
     207The routine is called once for each defined statistic region (see <a href="chapter_4.1.html#statistic_region">statistic_region</a>).</p><p></p><p>The
     208routine contains some simple examples (as comment lines) in order to
     209demonstrate how to use it.</p><p><br>Profiles have to
     210be written to
    392211the array <tt><font style="font-size: 10pt;" size="2">sums</font></tt>.
    393212Please use profile numbers starting from 70 upward (thus e.g. <tt><font style="font-size: 10pt;" size="2">sums (&hellip;,
    39421360) =</font></tt><font style="font-size: 10pt;" size="2">&hellip;)</font>. These additional
    395214profiles
    396 are temporally averaged in <tt><font style="font-size: 10pt;" size="2">flow_statistics</font></tt>.</p>
    397 
    398       </td>
    399 
    400     </tr>
    401 
    402     <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">
    403 
    404       <td width="211">
    405       <p>End of <tt><font style="font-size: 10pt;" size="2">palm.f90</font></tt></p>
    406 
    407       </td>
    408 
    409       <td width="117">
    410       <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>
    411 
    412       </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">action</font></font></tt></p>
    413 
    414       </td>
    415 
    416       <td width="862">
    417       <p>User-defined actions which are to be executed at the end
     215are temporally averaged in <tt><font style="font-size: 10pt;" size="2">flow_statistics</font></tt>.</p> </td>
     216</tr> <tr><td style="vertical-align: top;">End
     217of <span style="font-family: monospace;">check_parameters.f90</span>
     218where 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(
     219variable, unit )</span></td><td style="vertical-align: top;">Here the <span style="font-family: monospace;">unit</span>(s) of
     220user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>)
     221have to be set. Input parameter <span style="font-family: monospace;">variable</span>
     222contains the string identifier of the respective variable. For those
     223variables not recognized by the user, the parameter <span style="font-family: monospace;">unit</span> is set to
     224"illegal", which tells the calling routine that the output variable is
     225not defined and leads to a program abort.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about
     226creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;"><span style="font-family: monospace;">netcdf.f90</span> (4
     227times) where the vertical grid coordinates for cross sections and
     228volume 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(
     229variable, found, grid_x, grid_y, grid_z )</span></td><td style="vertical-align: top;">Set the grid on which
     230user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>)
     231are defined. Input parameter <span style="font-family: monospace;">variable</span>
     232contains the string identifier of the respective variable. Allowed
     233values are <span style="font-style: italic;">'x'</span>
     234and <span style="font-style: italic;">'xu'</span>
     235for <span style="font-family: monospace;">grid_x</span>,
     236<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
     237output parameter <span style="font-family: monospace;">found</span>
     238has to be set <span style="font-style: italic;">.TRUE.</span>
     239by the user, otherwise an error message will appear in the job protocol
     240for the respective output quantity.<br><br><span style="font-weight: bold;">Example:</span><br>If
     241an output quantity is defined at the center of the grid boxes, the
     242following 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
     243defining an output quantity at the grid points where the
     244u-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
     245<a href="chapter_3.5.4.html">chapter 3.5.4</a> about
     246creating 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(
     247av, variable, found, grid, local_pf )</span></td><td style="vertical-align: top;">Resorts&nbsp;user-defined&nbsp;quantities
     248(to be output as cross-section data;&nbsp;see <a href="chapter_4.3.html#data_output_user">data_output_user</a>)
     249with indices (k,j,i) to a temporary array <span style="font-family: monospace;">local_pf</span> with
     250indices (i,j,k) and sets the <span style="font-family: monospace;">grid</span>
     251on which they are defined. Depending on the value of input parameter <span style="font-family: monospace;">av</span> resorting is
     252done for instantaneous (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">0</span>) or time averaged
     253data (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">1</span>). Input parameter
     254<span style="font-family: monospace;">variable</span>
     255contains the string identifier of the respective variable. Allowed
     256values for <span style="font-family: monospace;">grid</span>
     257are&nbsp;<span style="font-style: italic;">'zu'</span>
     258and&nbsp;<span style="font-style: italic;">'zw'</span>.
     259The output parameter <span style="font-family: monospace;">found</span>
     260has to be set <span style="font-style: italic;">.TRUE.</span>
     261by the user, otherwise an error message will appear in the job protocol
     262for the respective output quantity.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about
     263creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;"><span style="font-family: monospace;">data_output_3d.f90</span>
     264at 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(
     265av, variable, found, local_pf, nz_do )</span></td><td style="vertical-align: top;">Resorts&nbsp;user-defined&nbsp;quantities
     266(to be output as volume data;&nbsp;see <a href="chapter_4.3.html#data_output_user">data_output_user</a>)
     267with indices (k,j,i) to a temporary array <span style="font-family: monospace;">local_pf</span> with
     268indices (i,j,k) and sets the <span style="font-family: monospace;">grid</span>
     269on which they are defined. Depending on the value of input parameter <span style="font-family: monospace;">av</span> resorting is
     270done for instantaneous (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">0</span>) or time averaged
     271data (<span style="font-family: monospace;">av</span>=<span style="font-style: italic;">1</span>). Input parameter
     272<span style="font-family: monospace;">variable</span>
     273contains 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
     274parameter <span style="font-family: monospace;">nz_do</span>
     275defines the upper limit of vertical grid index k of the output array
     276(see <a href="chapter_4.2.html#nz_do3d">nz_do3d</a>).
     277The output parameter <span style="font-family: monospace;">found</span>
     278has to be set <span style="font-style: italic;">.TRUE.</span>
     279by the user, otherwise an error message will appear in the job protocol
     280for the respective output quantity.<br><br>See <a href="chapter_3.5.4.html">chapter 3.5.4</a> about
     281creating user-defined output quantities.</td></tr><tr><td style="vertical-align: top;">End of <span style="font-family: monospace;">average_3d_data.f90</span>,
     282middle 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(
     283mode, variable )</span></td><td style="vertical-align: top;">Sum up and time-average of
     284user-defined output quantities (see <a href="chapter_4.3.html#data_output_user">data_output_user</a>)
     285as well as allocation of the arrays necessary for storing the
     286respective averages. Input parameter <span style="font-family: monospace;">variable</span>
     287contains the string identifier of the respective variable. Depending on
     288the requested action, input parameter <span style="font-family: monospace;">mode</span> has the
     289value <span style="font-style: italic;">'allocate'</span>,
     290<span style="font-style: italic;">'sum'</span>, or <span style="font-style: italic;">'average'</span>.<br><br>See
     291<a href="chapter_3.5.4.html">chapter 3.5.4</a> about
     292creating user-defined output quantities. </td></tr><tr valign="top"> <td width="211"> <p>End
     293of <tt><font style="font-size: 10pt;" size="2">palm.f90</font></tt></p>
     294</td> <td width="117"> <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> </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">action</font></font></tt></p>
     295</td> <td width="862"> <p>User-defined
     296actions which are to be executed at the end
    418297of a
    419298model run. When <tt><font style="font-size: 10pt;" size="2">user_last_actions</font></tt>
     
    423302are also not carried
    424303out yet.&nbsp; <br>
    425 
    426304CPU time for <tt><font style="font-size: 10pt;" size="2">user_last_actions</font></tt>
    427305appears in the local file <a href="chapter_3.4.html#CPU_MEASURES">CPU_MEASURES</a>
    428306within the category &ldquo;last actions&rdquo; (the time
    429307necessary for <tt><font style="font-size: 10pt;" size="2">close_files</font></tt> is included).</p>
    430 
    431       </td>
    432 
    433     </tr>
    434 
    435   </tbody>
    436 </table>
    437 
    438 <hr>
    439 <p style="line-height: 100%;"><br>
    440 
    441 <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>
    442 
    443 <p style="line-height: 100%;"><i>Last
    444 change:&nbsp;</i>&nbsp;23/03/06 (SR)</p>
    445 
     308</td> </tr> </tbody></table><hr>
     309<p style="line-height: 100%;"><br><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><p style="line-height: 100%;"><i>Last
     310change: </i>$Id$</p>
    446311</body></html>
Note: See TracChangeset for help on using the changeset viewer.