Changeset 130
- Timestamp:
- Nov 13, 2007 2:08:40 PM (17 years ago)
- Location:
- palm/trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/DOC/app/chapter_3.5.1.html
r90 r130 296 296 <span style="font-style: italic;">'sum'</span>, or <span style="font-style: italic;">'average'</span>.<br><br>See 297 297 <a href="chapter_3.5.4.html">chapter 3.5.4</a> about 298 creating user-defined output quantities. </td></tr><tr valign="top"> <td width="211"> <p>End 298 creating user-defined output quantities. </td></tr><tr><td style="vertical-align: top;"><tt><font style="font-size: 10pt;" size="2">DEFAULT</font></tt> 299 case of <tt><font style="font-size: 10pt;" size="2">SELECT 300 CASE( </font></tt><font style="font-size: 10pt; font-family: Courier New,Courier,monospace;" size="2"><code></code></font><tt><font style="font-size: 10pt;" size="2"><code>output_variable</code> ) </font></tt>command near the end of <code>data_output_dvrp.f90</code></td><td style="vertical-align: top;"><code><a name="user_data_output_dvrp"></a>user_data_<br>output_dvrp(<br>output_variable, local_pf )</code></td><td style="vertical-align: top;">Resorts user-defined quantities 301 (to be output as dvrp objects; see <a href="chapter_4.3.html#data_output_user">data_output_user</a> and <a href="chapter_4.2.html#mode_dvrp">mode_dvrp</a>) 302 with indices (k,j,i) to a temporary array <span style="font-family: monospace;">local_pf</span> with 303 indices (i,j,k). The array <span style="font-family: monospace;">local_pf</span> is then handed back to the calling subroutine <code>data_output_dvrp.f90</code>.<br><br>See 304 <a href="chapter_3.5.4.html">chapter 3.5.4</a> about 305 creating user-defined output quantities.</td></tr><tr valign="top"> <td width="211"> <p>End 299 306 of <tt><font style="font-size: 10pt;" size="2">palm.f90</font></tt></p> 300 307 </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> -
palm/trunk/DOC/app/chapter_3.5.4.html
r129 r130 13 13 quantities which are not part of PALM's standard output. The basic user 14 14 interface includes a number of subroutines which allow the calculation 15 of user-defined quantities and output of these quantities as (horizontally averaged) <a href="#vertical_profiles">vertical profiles</a>, <a href="#time_series">time series</a>,<a href="#2D_and_3D">2d cross16 section</a> or <a href="#2D_and_3D">3d volume data</a> . The respective subroutines15 of user-defined quantities and output of these quantities as 1. (horizontally averaged) <a href="#vertical_profiles">vertical profiles</a>, 2. <a href="#time_series">time series</a>, 3. <a href="#2D_and_3D">2d cross 16 section</a> or <a href="#2D_and_3D">3d volume data</a> and 4. <a href="#dvrp">dvrp</a> objects. The respective subroutines 17 17 contain sample code lines (written as comment lines) for defining, calculating and 18 18 output of such quantities.<br><br>Output times, averaging intervals, etc. are steered by the same variables as used for the standard PALM output quantities, e.g. <a href="chapter_4.2.html#dt_data_output">dt_data_output</a>.<br><br>The 19 19 rest of this chapter explains step-by-step how to modify/extend the 20 default file user_interface.f90 in order to generate the respective output.<br><br><br><h4><a name="vertical_profiles"></a> Output of vertical profiles</h4>This example shows the output of the20 default file user_interface.f90 in order to generate the respective output.<br><br><br><h4><a name="vertical_profiles"></a>1. Output of vertical profiles</h4>This example shows the output of the 21 21 quantity "turbulent resolved-scale horizontal momentum flux" (u*v*). If more than one user-defined 22 22 quantity shall be output, the following steps have to be carried out in the … … 49 49 calculation is stored in array <span style="font-family: Courier New,Courier,monospace;">sums_l</span>. 50 50 The second index of this array is the identification number of the 51 profile which must match the one given in the previous step 2.</li></ol><br><h4><a name="time_series"></a> Output of timeseries</h4>This example shows the output of two time series for the absolut extremal values of the horizontal velocities <span style="font-style: italic;">u</span> and <span style="font-style: italic;">v</span>. If more than one user-defined52 quantity shall be output, the following steps have to be carried out in the 53 same way for each of the quantities.<br><br><ol><li>For each time series quantity you have to give a label and a unit (subroutine <a href="chapter_3.5.1.html#user_init">user_init</a>), which will be used for the NetCDF file. They must not contain more than seven characters. The value of <code>dots_num</code> has to be increased by the number of new time series quantities. Its old value has to be stored in <code>dots_num_palm</code>.<br><br><code> dots_label(dots_num<span style="color: rgb(255, 0, 0);">+1</span>) = '<span style="color: rgb(255, 0, 0);">abs_umx</span>'<br> dots_unit(dots_num<span style="color: rgb(255, 0, 0);">+1</span>) = '<span style="color: rgb(255, 0, 0);">m/s</span>'<br> dots_label(dots_num<span style="color: rgb(255, 0, 0);">+2</span>) = '<span style="color: rgb(255, 0, 0);">abs_vmx</span>'<br> dots_unit(dots_num<span style="color: rgb(255, 0, 0);">+2</span>) = '<span style="color: rgb(255, 0, 0);">m/s</span>'<br><br> dots_num_palm = dots_num<br> dots_num = dots_num <span style="color: rgb(255, 0, 0);">+ 2</span><br><br></code>Only those parts in <span style="color: rgb(255, 0, 0);">red</span> have to be adjusted by the user.<br><br></li><li>These quantities are calculated and output in subroutine <a href="chapter_3.5.1.html#user_statistics">user_statistics</a> for every statistic region <code>sr</code> defined by the user, but at least for the region <span style="font-style: italic;">"total domain"</span>:<br> <br><code> ts_value(dots_num_palm+1,sr) = ABS( u_max )<br> ts_value(dots_num_palm+2,sr) = ABS( v_max )<br></code> <br></li></ol><h4><span style="font-weight: bold;"><a name="2D_and_3D"></a>Output of 2d cross sections or 3d volume data</span></h4><br>This example shows the output of the51 profile which must match the one given in the previous step 2.</li></ol><br><h4><a name="time_series"></a>2. Output of timeseries</h4>This example shows the output of two time series for the absolut extremal values of the horizontal velocities <span style="font-style: italic;">u</span> and <span style="font-style: italic;">v</span>. If more than one user-defined 52 quantity shall be output, the following steps have to be carried out in the 53 same way for each of the quantities.<br><br><ol><li>For each time series quantity you have to give a label and a unit (subroutine <a href="chapter_3.5.1.html#user_init">user_init</a>), which will be used for the NetCDF file. They must not contain more than seven characters. The value of <code>dots_num</code> has to be increased by the number of new time series quantities. Its old value has to be stored in <code>dots_num_palm</code>.<br><br><code> dots_label(dots_num<span style="color: rgb(255, 0, 0);">+1</span>) = '<span style="color: rgb(255, 0, 0);">abs_umx</span>'<br> dots_unit(dots_num<span style="color: rgb(255, 0, 0);">+1</span>) = '<span style="color: rgb(255, 0, 0);">m/s</span>'<br> dots_label(dots_num<span style="color: rgb(255, 0, 0);">+2</span>) = '<span style="color: rgb(255, 0, 0);">abs_vmx</span>'<br> dots_unit(dots_num<span style="color: rgb(255, 0, 0);">+2</span>) = '<span style="color: rgb(255, 0, 0);">m/s</span>'<br><br> dots_num_palm = dots_num<br> dots_num = dots_num <span style="color: rgb(255, 0, 0);">+ 2</span><br><br></code>Only those parts in <span style="color: rgb(255, 0, 0);">red</span> have to be adjusted by the user.<br><br></li><li>These quantities are calculated and output in subroutine <a href="chapter_3.5.1.html#user_statistics">user_statistics</a> for every statistic region <code>sr</code> defined by the user, but at least for the region <span style="font-style: italic;">"total domain"</span>:<br> <br><code> ts_value(dots_num_palm+1,sr) = ABS( u_max )<br> ts_value(dots_num_palm+2,sr) = ABS( v_max )<br></code></li></ol> <br><h4><span style="font-weight: bold;"><a name="2D_and_3D"></a>3. Output of 2d cross sections or 3d volume data</span></h4><br>This example shows the output of the 54 54 quantity "square of the u-component" (<span style="font-weight: bold;">Note:</span> this quantity 55 55 could of course easily be calculated from the u-component by … … 223 223 '; WRITE ( 14 ) u2_av</span><br style="font-family: monospace;"><span style="font-family: monospace;"> 224 224 ENDIF</span><br><br>Otherwise, the calculated 225 time-average may be wrong. </li></ol><hr> 225 time-average may be wrong.</li></ol><br><h4><a name="dvrp"></a>4. Output of DVRP objects</h4>This example shows the output of the 226 quantity "square of the u-component", <span style="font-style: italic;">u<sup>2</sup></span>. If more than one user-defined 227 quantity shall be output, the following steps have to be carried out in the 228 same way for each of the quantities. First, steps 1 - 6 of <a href="chapter_3.5.4.html#2D_and_3D">2d cross 229 section</a> or <a href="chapter_3.5.4.html#2D_and_3D">3d volume data</a> are required. Second, the gridpoint data of the quantity has to 230 be resorted to array <span style="font-family: monospace;">local_pf</span> 231 in subroutine <a href="chapter_3.5.1.html#user_data_output_dvrp"><span style="font-family: monospace;">user_data_output_dvrp</span></a> as follows:<br><br><code> CASE ( '<span style="color: rgb(255, 0, 0);">u2</span>', '<span style="color: rgb(255, 0, 0);">u2</span>_xy', '<span style="color: rgb(255, 0, 0);">u2</span>_xz', '<span style="color: rgb(255, 0, 0);">u2</span>_yz', )<br> DO i = nxl, nxr+1<br> DO j = nys, nyn+1<br> DO k = nzb, nz_do3d<br> local_pf(i,j,k) = <span style="color: rgb(255, 0, 0);">u2</span>(k,j,i)<br> ENDDO<br> ENDDO<br> ENDDO</code><br><br>Only those parts in <span style="color: rgb(255, 0, 0);">red</span> have to be adjusted by the user.<br><br>After performing these steps, the user-defined quantity <code>'u2'</code> can be selected like standard model quantities by the <a href="chapter_4.2.html#dvrp_graphics">dvrp_graphics</a> package parameter <a href="chapter_4.2.html#mode_dvrp">mode_dvrp</a>.<hr> 226 232 <p style="line-height: 100%;"><br><font color="#000080"><font color="#000080"><a href="chapter_3.5.3.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.5.html"><font color="#000080"><img style="border: 2px solid ; width: 32px; height: 32px;" alt="" src="right.gif" name="Grafik3"></font></a></font></font></p> 227 233 <p style="line-height: 100%;"><i>Last -
palm/trunk/DOC/app/chapter_4.2.html
r129 r130 10678 10678 <p>Several different objects can 10679 10679 be assigned simultaneously and 10680 will be displayed in the same scene. Allowed values for <span style="font-weight: bold;">mode_dvrp</span> are <span style="font-style: italic;">'isosurface# '</span>10681 (isosurface), <span style="font-style: italic;">'slicer# '</span>10680 will be displayed in the same scene. Allowed values for <span style="font-weight: bold;">mode_dvrp</span> are <span style="font-style: italic;">'isosurface##'</span> 10681 (isosurface), <span style="font-style: italic;">'slicer##'</span> 10682 10682 (cross sections), and <span style="font-style: italic;">'particles'</span>. 10683 Within the strings the hash character ("#") has to be replaced by a10684 digit 1≤#≤9. Up to 10 objects10683 Within the strings the hash characters ("##") have to be replaced by two 10684 digits 01≤##≤99. Up to 10 objects 10685 10685 can be assigned at the same time, e.g.: </p> 10686 10686 … … 10690 10690 10691 10691 <blockquote><b>mode_dvrp</b> 10692 = <span style="font-style: italic;">'isosurface 2'</span><i>,10693 'slicer 1',10694 'particles', 'slicer 2'</i></blockquote>10692 = <span style="font-style: italic;">'isosurface02'</span><i>, 10693 'slicer01', 10694 'particles', 'slicer02'</i></blockquote> 10695 10695 10696 10696 … … 10706 10706 orientation of the cross section, thus xy, xz, or yz). Since for <span style="font-weight: bold;">data_output</span> <span style="font-weight: bold;"></span>lists of 10707 10707 variables may be 10708 assigned, the digit at the end of the <span style="font-weight: bold;">mode_dvrp</span>-string10709 select sthe quantity, which is given10710 at the respective position in the respective list (e.g. <span style="font-style: italic;">'isosurface 2'</span>10708 assigned, the digits at the end of the <span style="font-weight: bold;">mode_dvrp</span>-string 10709 select the quantity, which is given 10710 at the respective position in the respective list (e.g. <span style="font-style: italic;">'isosurface02'</span> 10711 10711 selects the second 3D quantity 10712 of <span style="font-weight: bold;">data_output</span>, <span style="font-style: italic;">'slicer 1'</span> selects the first 2D quantity10712 of <span style="font-weight: bold;">data_output</span>, <span style="font-style: italic;">'slicer01'</span> selects the first 2D quantity 10713 10713 of <span style="font-weight: bold;">data_output</span>). 10714 10714 If e.g. <span style="font-weight: bold;">data_output</span> is assigned as <b>data_output</b> = <span style="font-style: italic;">'u_xy'</span><i>, … … 10731 10731 10732 10732 <p>The vertical extension of the displayed domain is 10733 given by <a href="#nz_do3d">nz_do3d</a>.<br> 10733 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 <span style="font-weight: bold;">mode_dvrp</span> may also refer to quantities selected with the parameter <a href="chapter_4.3.html#data_output_user">data_output_user</a> (internally PALM appends them to those selected with 10734 the parameter <a href="chapter_4.2.html#data_output">data_output</a>). 10734 10735 10735 10736 … … 10737 10738 of mode_dvrp must correspond to those of data_output 10738 10739 and 10739 data_output ! </b>If e.g. <b>data_output</b> = <span style="font-style: italic;">'pt_xy'</span>,<span style="font-style: italic;"> 'w'</span><i> </i>was set, then only the digit "1" isallowed10740 data_output_user! </b>If e.g. <b>data_output</b> = <span style="font-style: italic;">'pt_xy'</span>,<span style="font-style: italic;"> 'w'</span><i> </i>was set, then only the digits "01" are allowed 10740 10741 for <b>mode_dvrp</b>, 10741 thus <span style="font-style: italic;">'isosurface 1'</span>10742 and/or <span style="font-style: italic;">'slicer 1'</span><i>.</i>10742 thus <span style="font-style: italic;">'isosurface01'</span> 10743 and/or <span style="font-style: italic;">'slicer01'</span><i>.</i> 10743 10744 </p> 10744 10745 … … 10760 10761 10761 10762 The declaration color charts to be 10762 used still have to be given "manually" in subroutine < span style="font-family: monospace;">user_dvrp_coltab</span>10763 used still have to be given "manually" in subroutine <a href="chapter_3.4.html#user_dvrp_coltab"><span style="font-family: monospace;">user_dvrp_coltab</span></a> 10763 10764 (file <tt><font style="font-size: 11pt;" size="2">user_interface.f90</font></tt>). 10764 10765 <br> … … 10769 10770 to the local characteristics of the flow field) to be used for the 10770 10771 visualization, must be carried out by adding respective code extensions 10771 to < tt><font style="font-size: 11pt;" size="2">user_particle_attributes</font></tt>10772 to <a href="chapter_3.4.html#user_particle_attributes"><tt><font style="font-size: 11pt;" size="2">user_particle_attributes</font></tt></a> 10772 10773 (in file <tt><font style="font-size: 11pt;" size="2">user_interface.f90</font></tt>). </td> 10773 10774 -
palm/trunk/DOC/misc/Tsubame.html
r129 r130 15 15 support information for PALM users on the Linux Cluster <span style="font-weight: bold;">Tsubame</span> of the Tokyo 16 16 Institute of Technology, Tokyo, Japan (<a href="http://www.gsic.titech.ac.jp/%7Eccwww">http://www.gsic.titech.ac.jp/~ccwww</a>). 17 Japanese and English user manuals are available for download (<a href="http://www.gsic.titech.ac.jp/%7Eccwww/tebiki">http://www.gsic.titech.ac.jp/~ccwww/tebiki</a>).</p><h4>Subversion</h4><p><span style="text-decoration: underline;">Installation:</span><br>Please 18 install a recent version of subversion or simply copy <code><span style="font-family: Courier New,Courier,monospace;">svn-tyamanas.tgz</span></code> 19 (subversion 1.4.3) from <code><span style="font-family: Courier New,Courier,monospace;">/work</span></code> 20 on Tsubame (login). By using following commands subversion will be 21 installed under your home directory.</p><code><span style="font-family: Courier New,Courier,monospace;">cd ~<br>cp /work/</span><span style="font-family: Courier New,Courier,monospace;">svn-tyamanas.tgz 22 ~</span><br></code><span style="font-family: Courier New,Courier,monospace;"><code>tar 23 xvzf svn-tyamanas.tgz</code><br></span><p><span style="font-family: Courier New,Courier,monospace;"></span>The 24 following lines should be added to <code><span style="font-family: Courier New,Courier,monospace;">.profile</span></code> 25 (and should be executed manually on first-time installation):<span style="font-family: Courier New,Courier,monospace;"></span></p><span style="font-family: Courier New,Courier,monospace;"><code>export 26 LD_LIBRARY_PATH=$HOME/svn/lib</code></span><code><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;"> 27 export PATH=$HOME/svn/bin:$PATH</span></code><span style="text-decoration: underline;"><br></span><p><span style="text-decoration: underline;">Usage:</span><br>Since 17 Japanese and English user manuals are available for download (<a href="http://www.gsic.titech.ac.jp/%7Eccwww/tebiki">http://www.gsic.titech.ac.jp/~ccwww/tebiki</a>).</p><h4>Subversion</h4><p><span style="text-decoration: underline;">Installation:</span><br>The 18 following lines should be added to your <code><span style="font-family: Courier New,Courier,monospace;">~/.profile</span></code> (for ksh users - create if necessary) or <code>~/.bashrc</code> (for bash users). These settings will be active from the next login.<span style="font-family: Courier New,Courier,monospace;"></span></p><span style="font-family: Courier New,Courier,monospace;"><code>export 19 LD_LIBRARY_PATH=~mkanda/svn/lib</code></span><code><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;"> 20 export PATH=~mkanda/svn/bin:$PATH</span></code><span style="text-decoration: underline;"><br></span><p><span style="text-decoration: underline;">Usage:</span><br>Since 28 21 Tsubame is located behind a firewall, the usual address <a class="fixed" href="svn://130.75.105.45" target="_blank">svn://130.75.105.45</a> is unreachable from Tsubame. Instead, please login to media-o 29 22 and use <a class="fixed" href="svn://p9c.cc.titech.ac.jp:36900" target="_blank">svn://p9c.cc.titech.ac.jp:36900</a>. 30 This port works in both directions, i.e. for <code>svn update</code> as well as <code>svn commit</code> commands.</p><h4> Batch system<br></h4><p>The implementation of the <span style="font-weight: bold;">n1ge</span> command on23 This port works in both directions, i.e. for <code>svn update</code> as well as <code>svn commit</code> commands.</p><h4>Combine plot fields</h4><p>Please add the following line to the output command (<code>OC:</code>) section of your <code>.mrun.config</code> to ensure correct output of 2D and 3D data for PALM runs on more than one CPU :</p><code>OC:[[ \$( echo \$localhost | cut -c1-3 ) = lct ]] && combine_plot_fields.x</code><br><h4>Batch system<br></h4><p>The implementation of the <span style="font-weight: bold;">n1ge</span> command on 31 24 Tsubame requires modifications to <span style="font-weight: bold;">mrun</span> and <span style="font-weight: bold;">subjob</span> for PALM to 32 25 run on Tsubame. Since <span style="font-weight: bold;">mrun</span> … … 49 42 not always be the best choice. For code development, debugging or short 50 43 test runs the value "novice" for both options may be suitable. 51 Production runs should use the respective production queues (see <a href="http://www.gsic.titech.ac.jp/%7Eccwww/tgc/q_e.html">http://www.gsic.titech.ac.jp/~ccwww/tgc/q_e.html</a> for details). </p><p>The computer center advised us that due to restrictions of the batch system the value "novice" should not be mixed with the other queues. Please specify either a combination of sla<span style="font-style: italic;">n</span> for <code>-n</code> and sla<span style="font-style: italic;">n</span> or RAM<span style="font-style: italic;">*</span> for <code>-q</code>, or specify the combination "novice" + "novice".<span style="font-style: italic;"></span></p><p>The <span style="font-weight: bold;">mrun</span> option <code><span style="font-family: Courier New,Courier,monospace;">-t</span></code> 52 contains the CPU time demand for the main job in s which will be 44 Production runs should use the respective production queues (see <a href="http://www.gsic.titech.ac.jp/%7Eccwww/tgc/q_e.html">http://www.gsic.titech.ac.jp/~ccwww/tgc/q_e.html</a> for details). </p><p>The 45 computer center advised us that due to restrictions of the batch system 46 the value "novice" should not be mixed with the other queues. Please 47 specify either a combination of sla<span style="font-style: italic;">n</span> for <code>-n</code> and sla<span style="font-style: italic;">n</span> or RAM<span style="font-style: italic;">*</span> for <code>-q</code>, or specify the combination "novice" + "novice".</p><p>The group number contains the accounting information. You must specify it using the <span style="font-weight: bold;">mrun</span> option <code>-g</code>. Alternatively, you may set also a default value in your <code><span style="font-family: Courier New,Courier,monospace;">.mrun.config </span></code>file like this:</p><p><code>%group_number 48 12345678 49 50 lctit parallel<br></code></p><p>The <span style="font-weight: bold;">mrun</span> option <code><span style="font-family: Courier New,Courier,monospace;">-t</span></code> 51 contains the CPU time demand for the main job<span style="font-weight: bold;"> in s</span> which will be 53 52 automatically converted into min for the <span style="font-weight: bold;">n1ge</span> command. The 54 53 option <code><span style="font-family: Courier New,Courier,monospace;">-m</span></code> 55 contains the memory demand for the main job in MBwhich will be56 automatically converted into GB for the <span style="font-weight: bold;">n1ge</span> command.</p>< br><i>Last54 contains the memory demand for the main job <span style="font-weight: bold;">in MB</span> which will be 55 automatically converted into GB for the <span style="font-weight: bold;">n1ge</span> command.</p><p>Finally, PALM batch jobs on Tsubame require the <span style="font-weight: bold;">mrun</span> option <code>-b</code>.</p><h4>NetCDF</h4><p>In order to use NetCDF commands like <code>ncdump</code> and the graphical NetCDF tools <a href="http://www.ncl.ucar.edu" target="_top">NCL</a> and <a href="http://meteora.ucsd.edu/%7Epierce/ncview_home_page.html" target="_top">Ncview</a>, please add the following lines to <code><span style="font-family: Courier New,Courier,monospace;">~/.profile</span></code> (for ksh users) or <code>~/.bashrc</code> (for bash users):</p><p><code># NetCDF<br>export PATH=$PATH:~mkanda/netcdf-3.6.2/bin:~mkanda/netcdf-3.6.2/include<br><br></code><code># NCL<br>export NCARG_ROOT=~mkanda/ncl<br>PATH=~mkanda/ncl/bin:$PATH<br><br># Ncview<br>export PATH=$PATH:~mkanda/ncview/bin<br>export XAPPLRESDIR=~mkanda/.app-defaults</code></p><i><br>Last 57 56 change:</i> $Id$</body></html> -
palm/trunk/SOURCE/CURRENT_MODIFICATIONS
r129 r130 1 1 New: 2 2 --- 3 4 For unknown variables (CASE DEFAULT) call new subroutine user_data_output_dvrp 3 5 4 6 Pressure boundary conditions for vertical walls added to the multigrid solver. … … 11 13 advec_particles after the end of this loop. 12 14 13 advec_particles, check_parameters, header, init_grid, init_particles, init_pegrid, modules, package_parin, read_var_list, user_interface, write_var_list15 advec_particles, check_parameters, data_output_dvrp, header, init_grid, init_particles, init_pegrid, modules, package_parin, read_var_list, user_interface, write_var_list 14 16 15 17 16 18 Changed: 17 19 ------- 20 21 Allow two instead of one digit to specify isosurface and slicer variables. 18 22 19 23 Status of 3D-volume NetCDF data file only depends on switch netcdf_64bit_3d (check_open) … … 29 33 humidity/scalar/salinity in a future release. 30 34 31 check_open, d iffusion_s, modules, prognostic_equations35 check_open, data_output_dvrp, diffusion_s, header, init_dvrp, modules, prognostic_equations 32 36 33 37 -
palm/trunk/SOURCE/data_output_dvrp.f90
r106 r130 32 32 ! Actual revisions: 33 33 ! ----------------- 34 ! allow two instead of one digit to specify isosurface and slicer variables 35 ! for unknown variables (CASE DEFAULT) call new subroutine 36 ! user_data_output_dvrp 34 37 ! TEST: different colours for isosurfaces 35 38 ! TEST: write statements … … 116 119 !-- isosurfaces) 117 120 IF ( mode_dvrp(m)(1:10) == 'isosurface' ) THEN 118 READ ( mode_dvrp(m), '(10X,I 1)' ) vn121 READ ( mode_dvrp(m), '(10X,I2)' ) vn 119 122 output_variable = do3d(0,vn) 120 123 tv = tv + 1 121 124 ELSEIF ( mode_dvrp(m)(1:6) == 'slicer' ) THEN 122 READ ( mode_dvrp(m), '(6X,I 1)' ) vn125 READ ( mode_dvrp(m), '(6X,I2)' ) vn 123 126 output_variable = do2d(0,vn) 124 127 l = MAX( 2, LEN_TRIM( do2d(0,vn) ) ) … … 410 413 411 414 CASE DEFAULT 412 IF ( myid == 0 ) THEN 413 PRINT*,'+++ data_output_dvrp: no output possible for: ', & 414 output_variable 415 ENDIF 415 ! 416 !-- The DEFAULT case is reached either if output_variable contains 417 !-- unsupported variable or if the user has coded a special case in 418 !-- the user interface. There, the subroutine user_data_output_dvrp 419 !-- checks which of these two conditions applies. 420 CALL user_data_output_dvrp( output_variable, local_pf ) 421 416 422 417 423 END SELECT -
palm/trunk/SOURCE/header.f90
r117 r130 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! allow two instead of one digit to specify isosurface and slicer variables 6 7 ! Output of sorting frequency of particles 7 8 ! … … 866 867 DO WHILE ( mode_dvrp(i) /= ' ' ) 867 868 IF ( mode_dvrp(i)(1:10) == 'isosurface' ) THEN 868 READ ( mode_dvrp(i), '(10X,I 1)' ) j869 READ ( mode_dvrp(i), '(10X,I2)' ) j 869 870 l = l + 1 870 871 IF ( do3d(0,j) /= ' ' ) THEN … … 872 873 ENDIF 873 874 ELSEIF ( mode_dvrp(i)(1:6) == 'slicer' ) THEN 874 READ ( mode_dvrp(i), '(6X,I 1)' ) j875 READ ( mode_dvrp(i), '(6X,I2)' ) j 875 876 IF ( do2d(0,j) /= ' ' ) WRITE ( io, 362 ) TRIM( do2d(0,j) ) 876 877 ELSEIF ( mode_dvrp(i)(1:9) == 'particles' ) THEN -
palm/trunk/SOURCE/init_dvrp.f90
r83 r130 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! allow two instead of one digit to specify isosurface and slicer variables 6 7 ! Test output of isosurface on camera file 7 8 ! TEST: print* statements … … 395 396 IF ( mode_dvrp(pn)(1:10) == 'isosurface' ) THEN 396 397 397 READ ( mode_dvrp(pn), '(10X,I 1)' ) vn398 READ ( mode_dvrp(pn), '(10X,I2)' ) vn 398 399 steering_dvrp(pn)%name = do3d(0,vn) 399 400 tv = tv + 1 … … 417 418 ELSEIF ( mode_dvrp(pn)(1:6) == 'slicer' ) THEN 418 419 419 READ ( mode_dvrp(pn), '(6X,I 1)' ) vn420 READ ( mode_dvrp(pn), '(6X,I2)' ) vn 420 421 steering_dvrp(pn)%name = do2d(0,vn) 421 422 name_c = TRIM( do2d(0,vn) ) -
palm/trunk/SOURCE/user_interface.f90
r114 r130 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! new subroutine user_data_output_dvrp 6 7 ! +argument gls in user_init_grid 7 8 ! … … 833 834 834 835 836 SUBROUTINE user_data_output_dvrp( output_variable, local_pf ) 837 838 !------------------------------------------------------------------------------! 839 ! 840 ! Description: 841 ! ------------ 842 ! Execution of user-defined dvrp output 843 !------------------------------------------------------------------------------! 844 845 USE control_parameters 846 USE indices 847 USE pegrid 848 USE user 849 850 IMPLICIT NONE 851 852 CHARACTER (LEN=*) :: output_variable 853 854 INTEGER :: i, j, k 855 856 REAL, DIMENSION(nxl:nxr+1,nys:nyn+1,nzb:nz_do3d) :: local_pf 857 858 ! 859 !-- Here the user-defined DVRP output follows: 860 861 ! 862 !-- Move original array to intermediate array 863 SELECT CASE ( output_variable ) 864 865 ! CASE ( 'u2', 'u2_xy', 'u2_xz', 'u2_yz', ) 866 !! 867 !!-- Here the user can add user_defined output quantities. 868 !!-- Uncomment and extend the following lines, if necessary. 869 ! DO i = nxl, nxr+1 870 ! DO j = nys, nyn+1 871 ! DO k = nzb, nz_do3d 872 ! local_pf(i,j,k) = u2(k,j,i) 873 ! ENDDO 874 ! ENDDO 875 ! ENDDO 876 877 878 CASE DEFAULT 879 ! 880 !-- The DEFAULT case is reached if output_variable contains a 881 !-- wrong character string that is neither recognized in data_output_dvrp 882 !-- nor here in user_data_output_dvrp. 883 IF ( myid == 0 ) THEN 884 PRINT*,'+++ (user_)data_output_dvrp: no output possible for: ', & 885 output_variable 886 ENDIF 887 888 END SELECT 889 890 891 END SUBROUTINE user_data_output_dvrp 892 893 894 835 895 SUBROUTINE user_data_output_2d( av, variable, found, grid, local_pf ) 836 896
Note: See TracChangeset
for help on using the changeset viewer.