Changeset 266 for palm


Ignore:
Timestamp:
Mar 25, 2009 7:43:59 AM (16 years ago)
Author:
raasch
Message:

further updates concerning new dvr-features + documentation

Location:
palm/trunk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/DOC/app/chapter_4.2.html

    r262 r266  
    79767976For visualization
    79777977purposes particles can be given a
    7978 diameter by the parameter <a href="chapter_4.2.html#dvrp_psize">dvrp_psize</a>
    7979 (this diameter only affects the visualization). All particles have the
     7978diameter using the parameters <a href="chapter_4.2.html#dvrp_psize">dvrp_psize</a>
     7979and <a href="#particle_dvrpsize">particle_dvrpsize</a> (this diameter only affects the visualization). All particles have the
    79807980same size. Alternatively, particles can be given an individual size and
    79817981a </span>color <span lang="en-GB">by modifying the
     
    87998799
    88008800
    8801     <tr>
    8802 
    8803 
    8804  <td style="vertical-align: top;">
    8805      
    8806      
    8807       <p><a name="dvrp_psize"></a><b>dvrp_psize</b></p>
    8808 
    8809 
    8810 
    8811       </td>
    8812 
    8813 
    8814  <td style="vertical-align: top;">R<br>
    8815 
    8816 
    8817  </td>
    8818 
    8819 
    8820 
    8821       <td style="vertical-align: top;">0.2 * dx<br>
    8822 
    8823 
    8824  </td>
    8825 
    8826 
    8827 
    8828       <td style="vertical-align: top;">
    8829      
    8830      
    8831       <p>Diameter that
    8832 the particles is given in visualizations with
    8833 the <span style="font-weight: bold;">dvrp</span>
    8834 software (in
    8835 m).&nbsp; </p>
    8836 
    8837 
    8838  
    8839      
    8840      
    8841       <p>In case that particles are
    8842 visualized with the <span style="font-weight: bold;">dvrp</span>
    8843 software (see <a href="chapter_4.5.7.html">chapter
    8844 4.5.7</a>), their size can be set by parameter <b>dvrp_psize</b>.
    8845 All
    8846 particles are displayed with this same size.<br>
    8847 
    8848 
    8849  </p>
    8850 
    8851 
    8852  
    8853      
    8854      
    8855       <p>Alternatively,
    8856 the particle diameters can be set with the
    8857 user-interface in routine <span style="font-family: monospace;">user_init_particles</span>
    8858 (at the beginning of the simulation) and/or can be redefined after each
    8859 timestep in routine <tt>user<font style="font-size: 11pt;" size="2">_particle_attributes</font></tt>
    8860 (both routines can be found in file <tt><font style="font-size: 11pt;" size="2">user_interface.f90</font></tt><font style="font-size: 11pt;" size="2">)</font>.&nbsp;</p>
    8861 
    8862 
    8863 
    8864      
    8865      
    8866       <p><b>Note:</b> This parameter determines exclusively
    8867 the size
    8868 under which particles appear in the <span style="font-weight: bold;">dvrp</span>
    8869 visualization. The flow relevant particle radius is determined via the
    8870 particle package parameter <a href="#radius">radius</a>!</p>
    8871 
    8872 
    8873 
    8874       </td>
    8875 
    8876 
    8877  </tr>
     8801   
    88788802
    88798803
     
    1023610160
    1023710161
    10238  <tr><td style="vertical-align: top;"><a name="cluster_size"></a><span style="font-weight: bold;">cluster_size</span></td><td style="vertical-align: top;">I</td><td style="vertical-align: top;"><span style="font-style: italic;">1</span></td><td>Vertex cluster size for polygon reduction of topography.<br><br>This
     10162 <tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="clip_dvrp_l"></a>clip_dvrp_l</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">0.0</span></td><td style="vertical-align: top;">Left boundary of the displayed domain (in m).<br><br>This
     10163parameter can be used to restrict the display of the total horizontal
     10164domain, e.g. to reduce the data size of the dvr-output in order to
     10165speed-up&nbsp;the animated sequence.</td></tr><tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="clip_dvrp_n"></a>clip_dvrp_n</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">(<a href="chapter_4.1.html#ny">ny</a>+1)*<a href="chapter_4.1.html#dy">dy</a></span></td><td style="vertical-align: top;">North boundary of the displayed domain (in m).<br><br>This parameter can
     10166be used to restrict the display of the total horizontal domain, e.g. to
     10167reduce the data size of the dvr-output in order to speed-up&nbsp;the
     10168animated sequence.</td></tr><tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="clip_dvrp_r"></a>clip_dvrp_r</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">(<a href="chapter_4.1.html#nx">nx</a>+1)*<a href="chapter_4.1.html#dx">dx</a></span></td><td style="vertical-align: top;">Right boundary of the displayed domain (in m).<br><br>This parameter can
     10169be used to restrict the display of the total horizontal domain, e.g. to
     10170reduce the data size of the dvr-output in order to speed-up&nbsp;the
     10171animated sequence.</td></tr><tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="clip_dvrp_s"></a>clip_dvrp_s</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">0.0</span></td><td style="vertical-align: top;">South boundary of the displayed domain (in m).<br><br>This parameter can
     10172be used to restrict the display of the total horizontal domain, e.g. to
     10173reduce the data size of the dvr-output in order to speed-up&nbsp;the
     10174animated sequence.</td></tr><tr><td style="vertical-align: top;"><a name="cluster_size"></a><span style="font-weight: bold;">cluster_size</span></td><td style="vertical-align: top;">I</td><td style="vertical-align: top;"><span style="font-style: italic;">1</span></td><td>Vertex cluster size for polygon reduction of topography.<br><br>This
    1023910175parameter can be used to reduce the number of polygones which form the
    1024010176topography isosurface. In case of large numerical grids (large number
    1024110177of gridpoints) and /or complex topography, cluster_size &gt; 1 may
    1024210178speed up the animation significantly. Disadvantage: buildings may loose
    10243 their strict rectangular shape.<br><br>The allowed range of values is 1 &lt;= <span style="font-weight: bold;">cluster_size</span> &lt;= 5.<br><br> <span style="font-weight: bold;">Warning:</span> The allowed range of values is not checked. Wrong values may lead to unforseen effects or even aborts! </td></tr><tr>
     10179their strict rectangular shape.<br><br>The allowed range of values is 1 &lt;= <span style="font-weight: bold;">cluster_size</span> &lt;= 5.<br><br> <span style="font-weight: bold;">Warning:</span> The allowed range of values is not checked. Wrong values may lead to unforseen effects or even aborts! </td></tr><tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="color_interval"></a>color_interval</span></td><td style="vertical-align: top;">R(2)</td><td style="vertical-align: top;"><span style="font-style: italic;">0.0, 1.0</span></td><td style="vertical-align: top;">Interval of values used for determining the particle color displayed in the animation.<br><br>See <a href="#particle_color">particle_color</a> for further explanation.</td></tr><tr>
    1024410180
    1024510181
     
    1030710243
    1030810244
    10309  <tr>
     10245 <tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="dvrpsize_interval"></a>dvrpsize_interval</span></td><td style="vertical-align: top;">R(2)</td><td style="vertical-align: top;"><span style="font-style: italic;">0.0, 1.0</span></td><td style="vertical-align: top;">Interval of values used for determining the particle size displayed in the animation.<br><br>See <a href="#particle_dvrpsize">particle_dvrpsize</a> for further explanation.</td></tr><tr>
    1031010246
    1031110247
     
    1063910575
    1064010576
    10641  <tr>
     10577 <tr><td style="vertical-align: top;"><p><a name="dvrp_psize"></a><b>dvrp_psize</b></p></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">0.2 * <a href="chapter_4.1.html#dx">dx</a></span></td><td style="vertical-align: top;"><p>Diameter that particles are given in visualizations with
     10578the <span style="font-weight: bold;">dvrp</span>
     10579software (in
     10580m).&nbsp; </p>
     10581
     10582
     10583 
     10584     
     10585     
     10586      <p>In case that particles are
     10587visualized with the <span style="font-weight: bold;">dvrp</span>
     10588software (see <a href="chapter_4.5.7.html">chapter
     105894.5.7</a>), their size can be set by parameter <b>dvrp_psize</b>.
     10590All
     10591particles are displayed with this same size.<br>
     10592
     10593
     10594 </p>
     10595
     10596
     10597 
     10598     
     10599     
     10600      <p>Alternatively, the particle size can be controlled by certain flow parameters using parameter <a href="#particle_dvrpsize">particle_dvrpsize</a>.</p><p>Another way to control
     10601the particles diameter is to set it with the
     10602user-interface in routine <span style="font-family: monospace;">user_init_particles</span>
     10603(at the beginning of the simulation) and/or to redefine it after each
     10604timestep in routine <tt>user<font style="font-size: 11pt;" size="2">_particle_attributes</font></tt>.&nbsp;</p>
     10605
     10606
     10607
     10608     
     10609     
     10610      <p><b>Note:</b> This parameter determines exclusively
     10611the size
     10612under which particles appear in the <span style="font-weight: bold;">dvrp</span>
     10613visualization. The flow relevant particle radius is determined via the
     10614particle parameter <a href="chapter_4.2.html#radius">radius</a>!</p></td></tr><tr>
    1064210615
    1064310616
     
    1077910752     
    1078010753     
    10781       <p>The vertical extension of the displayed domain is
    10782 given by <a href="#nz_do3d">nz_do3d</a>.</p><p>If user-defined dvrp objects exist (see <a href="chapter_3.5.4.html">chapter 3.5.4</a>), then&nbsp;<span style="font-weight: bold;">mode_dvrp</span> may also refer to quantities selected with the parameter&nbsp;<a href="chapter_4.3.html#data_output_user">data_output_user</a> (internally PALM appends them to those selected&nbsp;with
     10754      <p>The particles color and size can be set using parameters <a href="#particle_color">particle_color</a> and <a href="#particle_dvrpsize">particle_dvrpsize</a>.</p><p>The vertical extension of the displayed domain is
     10755given by <a href="#nz_do3d">nz_do3d</a>.</p><p>The displayed horizontal domain can be restricted using parameters <a href="#clip_dvrp_l">clip_dvrp_l</a>, <a href="#clip_dvrp_r">clip_dvrp_r</a>, <a href="#clip_dvrp_n">clip_dvrp_n</a>, <a href="#clip_dvrp_s">clip_dvrp_s</a>.</p><p>If user-defined dvrp objects exist (see <a href="chapter_3.5.4.html">chapter 3.5.4</a>), then&nbsp;<span style="font-weight: bold;">mode_dvrp</span> may also refer to quantities selected with the parameter&nbsp;<a href="chapter_4.3.html#data_output_user">data_output_user</a> (internally PALM appends them to those selected&nbsp;with
    1078310756the parameter <a href="chapter_4.2.html#data_output">data_output</a>).
    1078410757
     
    1082710800
    1082810801
    10829  <tr>
     10802 <tr><td style="vertical-align: top;"><a style="font-weight: bold;" name="particle_color"></a><span style="font-weight: bold;">particle_color</span></td><td style="vertical-align: top;">C*10</td><td style="vertical-align: top;"><span style="font-style: italic;">'none'</span></td><td style="vertical-align: top;">Parameter, which allows to bind the displayed particle color to certain flow quantities.<br><br>By default, particles have a black color.<br><br>Allowed values for <span style="font-weight: bold;">particle_color</span> are:<br><br><table style="text-align: left; width: 100%;" border="0" cellpadding="2" cellspacing="2"><tbody><tr><td style="vertical-align: top;"><span style="font-style: italic;">'absuv'</span></td><td style="vertical-align: top;">Particle color depends on the absolute value of the resolved-scale horizontal velocity (SQRT(u<sup>2</sup>+v<sup>2</sup>) at the particle position.</td></tr><tr><td style="vertical-align: top;"><span style="font-style: italic;">'pt*'</span></td><td style="vertical-align: top;">Particle
     10803color depends on the deviation of the resolved-scale potential
     10804temperature at the particle position from the horizontally averaged
     10805potential temperature (total domain).</td></tr><tr><td style="vertical-align: top;"><span style="font-style: italic;">'z'</span></td><td style="vertical-align: top;">Particle color depends on the height of the particle with respect to the bottom boundary (z=0).</td></tr></tbody></table><br>The
     10806colortable used for particles ranges from deep blue to deep red with
     10807yellow in between. The interval of values from the above listed
     10808quantities to be mapped to these colors is defined by parameter <a href="#color_interval">color_interval</a>.<br><br><span style="font-weight: bold;">Example:<br></span>If <span style="font-weight: bold;">particle_color</span> = <span style="font-style: italic;">'pt*'</span> and <a href="#color_interval">color_interval</a> = <span style="font-style: italic;">-0.5</span>, <span style="font-style: italic;">+0.5</span>, then all particles at positions with <span style="font-style: italic;">pt* </span>&lt;=<span style="font-style: italic;"> -0.5 K</span> will have a deep blue color and those at positions with <span style="font-style: italic;">pt*</span> &gt;= <span style="font-style: italic;">+0.5 K</span> will have a deep red color, while those with <span style="font-style: italic;">-0.5</span> &lt; <span style="font-style: italic;">pt*</span> &lt; <span style="font-style: italic;">+0.5</span> will vary in color from deep blue to deep red and transition from yellow to blue indicate <span style="font-style: italic;">pt*</span> ~ <span style="font-style: italic;">0.0</span>.</td></tr><tr><td style="vertical-align: top;"><span style="font-weight: bold;"><a name="particle_dvrpsize"></a>particle_dvrpsize</span></td><td style="vertical-align: top;">C*10</td><td style="vertical-align: top;"><span style="font-style: italic;">'none'</span></td><td style="vertical-align: top;">Parameter, which allows to bind the displayed particle size to certain flow quantities.<br><br>The default particle size (diameter) is determined with parameter <a href="#dvrp_psize">dvrp_psize</a>.<br><br>Allowed values for <span style="font-weight: bold;">particle_dvrpsize</span> are:<br><table style="text-align: left; width: 100%;" border="0" cellpadding="2" cellspacing="2"><tbody><tr><td style="vertical-align: top;"><span style="font-style: italic;">'absw'</span></td><td style="vertical-align: top;">The particle size depends on the absolute value of the resolved-scale vertical velocity w at the particle position.</td></tr></tbody></table><br>The particle sizes ranges from 0.25*<a href="chapter_4.1.html#dx">dx</a> m to 0.85*<a href="chapter_4.1.html#dx">dx</a> m. The interval of values from the above listed quantities to be mapped to these sizes is defined by parameter <a href="#dvrpsize_interval">dvrpsize_interval</a>.<br><br><span style="font-weight: bold;">Example:</span><br>If <span style="font-weight: bold;">particle_dvrpsize</span> = <span style="font-style: italic;">'absw'</span> and <a href="#dvrpsize_interval">dvrpsize_interval</a> = <span style="font-style: italic;">1.0</span>, <span style="font-style: italic;">2.0</span>, then all particles at positions where the absolute value of w is &lt;= <span style="font-style: italic;">1.0</span> m/s will have a size of <span style="font-style: italic;">0.25*dx</span> m and those at positions with |w| &gt;= <span style="font-style: italic;">2.0</span> m/s will have a size of <span style="font-style: italic;">0.85*dx</span> m, while those with <span style="font-style: italic;">1.0</span> m/s &lt; |w| &lt; <span style="font-style: italic;">2.0</span> m/s will linearly vary in size from <span style="font-style: italic;">0.25*dx</span> m to <span style="font-style: italic;">0.85*dx</span> m.</td></tr><tr>
    1083010809
    1083110810
  • palm/trunk/DOC/app/chapter_4.6.html

    r262 r266  
    18631863
    18641864
    1865  <tr>
     1865 <tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#clip_dvrp_l"><span style="font-weight: bold;">clip_dvrp_l</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">R</td><td align="undefined" valign="undefined"><span style="font-style: italic;">0.0</span></td><td align="undefined" valign="undefined">Left boundary of the displayed domain (in m).</td></tr><tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#clip_dvrp_n"><span style="font-weight: bold;">clip_dvrp_n</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">R</td><td align="undefined" valign="undefined"><span style="font-style: italic;">(ny+1)*dy</span></td><td align="undefined" valign="undefined">North boundary of the displayed domain (in m).</td></tr><tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#clip_dvrp_r"><span style="font-weight: bold;">clip_dvrp_r</span></a></td><td align="undefined" valign="undefined">P</td><td style="font-style: italic;" align="undefined" valign="undefined">R</td><td style="font-style: italic;" align="undefined" valign="undefined">(nx+1)*dx</td><td align="undefined" valign="undefined">Right boundary of the displayed domain (in m).</td></tr><tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#clip_dvrp_s"><span style="font-weight: bold;">clip_dvrp_s</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">R</td><td align="undefined" valign="undefined">0.0</td><td align="undefined" valign="undefined">South boundary of the displayed domain (in m).</td></tr><tr>
    18661866
    18671867
     
    19871987
    19881988
    1989  <tr><td><a href="chapter_4.2.html#cluster_size"><span style="font-weight: bold;">cluster_size</span></a></td><td>P</td><td>I</td><td><span style="font-style: italic;">1</span></td><td>Vertex cluster size for polygon reduction of topography.</td></tr><tr>
     1989 <tr><td><a href="chapter_4.2.html#cluster_size"><span style="font-weight: bold;">cluster_size</span></a></td><td>P</td><td>I</td><td><span style="font-style: italic;">1</span></td><td>Vertex cluster size for polygon reduction of topography.</td></tr><tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#color_interval"><span style="font-weight: bold;">color_interval</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">R(2)</td><td align="undefined" valign="undefined"><span style="font-style: italic;">0.0</span>, <span style="font-style: italic;">1.0</span></td><td align="undefined" valign="undefined">Interval of values used for determining the particle color displayed in the animation.</td></tr><tr>
    19901990
    19911991
     
    53585358
    53595359
    5360  <tr valign="top">
     5360 <tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#dvrpsize_interval"><span style="font-weight: bold;">dvrpsize_interval</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">R(2)</td><td align="undefined" valign="undefined"><span style="font-style: italic;">0.0</span>, <span style="font-style: italic;">1.0</span></td><td align="undefined" valign="undefined">Interval of values used for determining the particle size displayed in the animation.</td></tr><tr valign="top">
    53615361
    53625362
     
    89918991
    89928992
    8993  <tr>
     8993 <tr><td align="undefined" valign="undefined"><a href="chapter_4.2.html#particle_color"><span style="font-weight: bold;">particle_color</span></a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">C*10</td><td align="undefined" valign="undefined"><span style="font-style: italic;">'none'</span></td><td align="undefined" valign="undefined">Parameter, which allows to bind the displayed particle color to certain flow quantities.</td></tr><tr><td align="undefined" valign="undefined"><a style="font-weight: bold;" href="chapter_4.2.html#particle_dvrpsize">particle_dvrpsize</a></td><td align="undefined" valign="undefined">P</td><td align="undefined" valign="undefined">C*10</td><td align="undefined" valign="undefined"><span style="font-style: italic;">'none'</span></td><td align="undefined" valign="undefined">Parameter, which allows to bind the displayed particle size to certain flow quantities.</td></tr><tr>
    89948994
    89958995
  • palm/trunk/SCRIPTS/mbuild

    r224 r266  
    9797     # 14/11/08 - Siggi - update mechanism completely revised: source tarfile
    9898     #                    remains in source directory, one depository per block
    99      #                    (given in the config-file) is created, always all files
    100      #                    from the source directory are copied to the respective
    101      #                    depository, no additional file checks are done any more
    102      #                    (version 2.1)
     99     #                    (given in the config-file) is created, allways all
     100     #                    files from the source directory are copied to the
     101     #                    respective depository, no additional file checks are
     102     #                    done any more (version 2.1)
    103103     # 13/01/09 - Marcus- re-enable compilation more than once on lcmuk (as on
    104104     #                    other machines)
     105     # 21/03/09 - Siggi - -u copies also copies process_dvr_output and
     106     #                    .dvrserver.config
    105107
    106108
     
    11851187                   # KOENNEN DOLLAR-ZEICHEN NICHT BENUTZT WERDEN
    11861188                remote_ud=`echo $remote_ud | sed 's/\$HOME\///'`
    1187                 /bin/scp  batch_scp mbuild mrun subjob  ${remote_username}@${remote_addres}:${remote_ud}/../SCRIPTS  >  /dev/null
     1189                /bin/scp  batch_scp mbuild mrun process_dvr_output .dvrserver.config subjob  ${remote_username}@${remote_addres}:${remote_ud}/../SCRIPTS  >  /dev/null
    11881190             else
    1189                 scp  batch_scp mbuild mrun subjob  ${remote_username}@${remote_addres}:${remote_ud}/../SCRIPTS  >  /dev/null
     1191                scp  batch_scp mbuild mrun process_dvr_output .dvrserver.config subjob  ${remote_username}@${remote_addres}:${remote_ud}/../SCRIPTS  >  /dev/null
    11901192             fi
    11911193
  • palm/trunk/SOURCE/CURRENT_MODIFICATIONS

    r264 r266  
    4242First constant in array den also defined as type double. (eqn_state_seawater)
    4343
     44Parameter dvrp_psize moved from particles_par to dvrp_graphics_par. (package_parin)
     45
    4446topography_grid_convention moved from userpar to inipar (check_parameters,
    4547header, parin, read_var_list, user_check_parameters, user_header,
    4648user_init_grid, user_parin, write_var_list)
    4749
    48 advec_particles, advec_s_bc, buoyancy, calc_spectra, check_for_restart, check_open, check_parameters, close_file, coriolis, cpu_log, data_output_2d, data_output_3d, data_output_dvrp, data_output_profiles, data_output_ptseries, data_output_spectra, data_output_tseries, eqn_state_seawater, fft_xy, flow_statistics, header, init_1d_model, init_3d_model, init_dvrp, init_grid, init_particles, init_pegrid, netcdf, output_particles_netcdf, parin, plant_canopy_model, poisfft_hybrid, poismg, read_3d_binary, read_var_list, sort_particles, user_check_parameters, user_header, user_init_grid, user_parin, surface_coupler, temperton_fft, timestep, user_actions, user_data_output_dvrp, user_dvrp_coltab, user_init_grid, user_init_plant_canopy, user_parin, user_read_restart_data, user_spectra, write_var_list
     50advec_particles, advec_s_bc, buoyancy, calc_spectra, check_for_restart, check_open, check_parameters, close_file, coriolis, cpu_log, data_output_2d, data_output_3d, data_output_dvrp, data_output_profiles, data_output_ptseries, data_output_spectra, data_output_tseries, eqn_state_seawater, fft_xy, flow_statistics, header, init_1d_model, init_3d_model, init_dvrp, init_grid, init_particles, init_pegrid, netcdf, output_particles_netcdf, package_parin, parin, plant_canopy_model, poisfft_hybrid, poismg, read_3d_binary, read_var_list, sort_particles, user_check_parameters, user_header, user_init_grid, user_parin, surface_coupler, temperton_fft, timestep, user_actions, user_data_output_dvrp, user_dvrp_coltab, user_init_grid, user_init_plant_canopy, user_parin, user_read_restart_data, user_spectra, write_var_list
    4951
    5052
  • palm/trunk/SOURCE/package_parin.f90

    r264 r266  
    55! -----------------
    66! +clip_dvrp_*, cluster_size, color_interval, dvrpsize_interval, particle_color,
    7 ! dvrpsize_color in dvrp_graphics_par
     7! particle_dvrpsize in dvrp_graphics_par,
     8! parameter dvrp_psize moved from particles_par to dvrp_graphics_par
    89! Variables for dvrp-mode pathlines added
    910!
  • palm/trunk/SOURCE/set_particle_attributes.f90

    r264 r266  
    3232
    3333    INTEGER ::  i, j, k, n
    34     REAL    ::  aa, bb, cc, dd, gg, pt_int, pt_int_l, pt_int_u, w_int, &
    35                 w_int_l, w_int_u, x, y
     34    REAL    ::  aa, absuv, bb, cc, dd, gg, pt_int, pt_int_l, pt_int_u, u_int, &
     35                u_int_l, u_int_u, v_int, v_int_l, v_int_u, w_int, w_int_l,    &
     36                w_int_u, x, y
    3637
    3738
     
    4142!-- Set particle color
    4243    IF ( particle_color == 'absuv' )  THEN
     44
     45!
     46!--    Set particle color depending on the absolute value of the horizontal
     47!--    velocity
     48       DO  n = 1, number_of_particles
     49!
     50!--       Interpolate u velocity-component, determine left, front, bottom
     51!--       index of u-array
     52          i = ( particles(n)%x + 0.5 * dx ) * ddx
     53          j =   particles(n)%y * ddy
     54          k = ( particles(n)%z + 0.5 * dz * atmos_ocean_sign ) / dz  &
     55              + offset_ocean_nzt                     ! only exact if equidistant
     56
     57!
     58!--       Interpolation of the velocity components in the xy-plane
     59          x  = particles(n)%x + ( 0.5 - i ) * dx
     60          y  = particles(n)%y - j * dy
     61          aa = x**2          + y**2
     62          bb = ( dx - x )**2 + y**2
     63          cc = x**2          + ( dy - y )**2
     64          dd = ( dx - x )**2 + ( dy - y )**2
     65          gg = aa + bb + cc + dd
     66
     67          u_int_l = ( ( gg - aa ) * u(k,j,i)   + ( gg - bb ) * u(k,j,i+1)   &
     68                    + ( gg - cc ) * u(k,j+1,i) + ( gg - dd ) * u(k,j+1,i+1) &
     69                    ) / ( 3.0 * gg ) - u_gtrans
     70          IF ( k+1 == nzt+1 )  THEN
     71             u_int = u_int_l
     72          ELSE
     73             u_int_u = ( ( gg-aa ) * u(k+1,j,i)   + ( gg-bb ) * u(k+1,j,i+1)   &
     74                       + ( gg-cc ) * u(k+1,j+1,i) + ( gg-dd ) * u(k+1,j+1,i+1) &
     75                       ) / ( 3.0 * gg ) - u_gtrans
     76             u_int = u_int_l + ( particles(n)%z - zu(k) ) / dz * &
     77                               ( u_int_u - u_int_l )
     78          ENDIF
     79
     80!
     81!--       Same procedure for interpolation of the v velocity-component (adopt
     82!--       index k from u velocity-component)
     83          i =   particles(n)%x * ddx
     84          j = ( particles(n)%y + 0.5 * dy ) * ddy
     85
     86          x  = particles(n)%x - i * dx
     87          y  = particles(n)%y + ( 0.5 - j ) * dy
     88          aa = x**2          + y**2
     89          bb = ( dx - x )**2 + y**2
     90          cc = x**2          + ( dy - y )**2
     91          dd = ( dx - x )**2 + ( dy - y )**2
     92          gg = aa + bb + cc + dd
     93
     94          v_int_l = ( ( gg - aa ) * v(k,j,i)   + ( gg - bb ) * v(k,j,i+1)   &
     95                 + ( gg - cc ) * v(k,j+1,i) + ( gg - dd ) * v(k,j+1,i+1) &
     96                 ) / ( 3.0 * gg ) - v_gtrans
     97          IF ( k+1 == nzt+1 )  THEN
     98             v_int = v_int_l
     99          ELSE
     100             v_int_u = ( ( gg-aa ) * v(k+1,j,i)   + ( gg-bb ) * v(k+1,j,i+1)   &
     101                       + ( gg-cc ) * v(k+1,j+1,i) + ( gg-dd ) * v(k+1,j+1,i+1) &
     102                       ) / ( 3.0 * gg ) - v_gtrans
     103             v_int = v_int_l + ( particles(n)%z - zu(k) ) / dz * &
     104                               ( v_int_u - v_int_l )
     105          ENDIF
     106
     107          absuv = SQRT( u_int**2 + v_int**2 )
     108
     109!
     110!--       Limit values by the given interval and normalize to interval [0,1]
     111          absuv = MIN( absuv, color_interval(2) )
     112          absuv = MAX( absuv, color_interval(1) )
     113
     114          absuv = ( absuv - color_interval(1) ) / &
     115                  ( color_interval(2) - color_interval(1) )
     116
     117!
     118!--       Number of available colors is defined in init_dvrp
     119          particles(n)%color = 1 + absuv * ( dvrp_colortable_entries_prt - 1 )
     120
     121       ENDDO
    43122
    44123    ELSEIF ( particle_color == 'pt*' )  THEN
     
    110189          particles(n)%color = 1 + pt_int * ( dvrp_colortable_entries_prt - 1 )
    111190
    112     ENDDO
     191       ENDDO
    113192
    114193    ELSEIF ( particle_color == 'z' )  THEN
     194!
     195!--    Set particle color depending on the height above the bottom
     196!--    boundary (z=0)
     197       DO  n = 1, number_of_particles
     198
     199          height = particles(n)%z
     200!
     201!--       Limit values by the given interval and normalize to interval [0,1]
     202          height = MIN( height, color_interval(2) )
     203          height = MAX( height, color_interval(1) )
     204
     205          height = ( height - color_interval(1) ) / &
     206                   ( color_interval(2) - color_interval(1) )
     207
     208!
     209!--       Number of available colors is defined in init_dvrp
     210          particles(n)%color = 1 + height * ( dvrp_colortable_entries_prt - 1 )
     211
     212       ENDDO
    115213
    116214    ENDIF
     
    149247          ENDIF
    150248
    151           particles(n)%dvrp_psize = ( 0.2 + MIN( 0.6, ABS( w_int ) / 6.0 ) ) * &
    152                                     dx * 1.4
     249!
     250!--       Limit values by the given interval and normalize to interval [0,1]
     251          w_int = ABS( w_int )
     252          w_int = MIN( w_int, dvrpsize_interval(2) )
     253          w_int = MAX( w_int, dvrpsize_interval(1) )
     254
     255          w_int = ( w_int - dvrpsize_interval(1) ) / &
     256                  ( dvrpsize_interval(2) - dvrpsize_interval(1) )
     257
     258          particles(n)%dvrp_psize = ( 0.25 + w_int * 0.6 ) * dx
    153259
    154260       ENDDO
Note: See TracChangeset for help on using the changeset viewer.