Ignore:
Timestamp:
Mar 6, 2007 12:28:36 PM (17 years ago)
Author:
raasch
Message:

preliminary version, several changes to be explained later

File:
1 edited

Legend:

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

    r5 r48  
    11<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    2 <html>
    3 <head>
    4   <meta http-equiv="CONTENT-TYPE"
    5  content="text/html; charset=windows-1252">
    6   <title>PALM chapter 3.5.3</title>
    7   <meta name="GENERATOR" content="StarOffice 7  (Win32)">
     2<html><head>
     3  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
     4 
     5  <title>PALM chapter 3.5.3</title><meta name="GENERATOR" content="StarOffice 7  (Win32)">
    86  <meta name="AUTHOR" content="Siegfried Raasch">
    97  <meta name="CREATED" content="20040802;14001660">
     
    1412                @page { size: 21cm 29.7cm }
    1513        -->
    16         </style>
    17 </head>
     14        </style></head>
     15
    1816<body dir="ltr" lang="en-US">
    1917<h3 style="line-height: 100%;">3.5.3 Definition of user-defined
    2018subdomains</h3>
    21 <p style="line-height: 100%;">By default, the values of the time
    22 series (saved in local file <a href="chapter_3.4.html#PLOTTS_DATA">PLOTTS_DATA</a>)
    23 and the horizontally averaged vertical profiles (saved in local files
     19<p style="line-height: 100%;">By default, the values of the timeseries quantities and the horizontally averaged vertical profiles (saved in local files
    2420<a href="chapter_3.4.html#PLOT1D_DATA">PLOT1D_DATA</a>
    2521and <a href="chapter_3.4.html#LIST_PROFIL">LIST_PROFIL</a>)
     
    2723series or profiles for different user-defined subdomains can be
    2824computed and plotted additionally. Steering in principle is done
    29 via the initialization parameter <a
    30  href="chapter_4.1.html#statistic_regions">statistic_regions</a>.
     25via the initialization parameter <a href="chapter_4.1.html#statistic_regions">statistic_regions</a>.
    3126</p>
    3227<p style="line-height: 100%;">The exact definition of these subdomains
    3328has to be made by the user within the user-defined subroutine
    3429<tt><font style="font-size: 10pt;" size="2">init_user</font></tt>. The
    35 subdomains are defined with a mask array named <tt><font
    36  style="font-size: 10pt;" size="2">rmask</font></tt>,
     30subdomains are defined with a mask array named <tt><font style="font-size: 10pt;" size="2">rmask</font></tt>,
    3731which has to be given the value 1.0 for all horizontal grid points
    3832belonging to
     
    4337declared as: </p>
    4438<ul>
    45   <p style="line-height: 100%;"><tt><font style="font-size: 10pt;"
    46  size="2">REAL :: rmask (nys-1:nyn+1,nxl-1,nxr+1,0:9) .</font></tt></p>
     39  <p style="line-height: 100%;"><tt><font style="font-size: 10pt;" size="2">REAL :: rmask (nys-1:nyn+1,nxl-1,nxr+1,0:9) .</font></tt></p>
    4740</ul>
    4841<p style="line-height: 100%;">The first two indices are the grid point
    49 indices in y and x-direction. With parallel model runs <tt><font
    50  style="font-size: 10pt;" size="2">nxl</font></tt><font
    51  style="font-size: 10pt;" size="2">,
    52 </font><tt><font style="font-size: 10pt;" size="2">nxr</font></tt><font
    53  style="font-size: 10pt;" size="2">,
    54 </font><tt><font style="font-size: 10pt;" size="2">nys</font></tt><font
    55  style="font-size: 10pt;" size="2">
    56 <font size="3">and</font> </font><tt><font style="font-size: 10pt;"
    57  size="2">nyn</font></tt>
     42indices in y and x-direction. With parallel model runs <tt><font style="font-size: 10pt;" size="2">nxl</font></tt><font style="font-size: 10pt;" size="2">,
     43</font><tt><font style="font-size: 10pt;" size="2">nxr</font></tt><font style="font-size: 10pt;" size="2">,
     44</font><tt><font style="font-size: 10pt;" size="2">nys</font></tt><font style="font-size: 10pt;" size="2">
     45<font size="3">and</font> </font><tt><font style="font-size: 10pt;" size="2">nyn</font></tt>
    5846are the array bounds of the respective subdomain (don't confuse this
    5947with the user-defined subdomain!) on the
    60 respective processor. With runs on one processor <tt><font
    61  style="font-size: 10pt;" size="2">nys</font></tt><font
    62  style="font-size: 10pt;" size="2">
    63 = </font><tt><font style="font-size: 10pt;" size="2">nxl</font></tt><font
    64  style="font-size: 10pt;" size="2">
    65 = 0</font> and <font style="font-size: 10pt;" size="2"><font
    66  face="Cumberland, monospace">nxr
     48respective processor. With runs on one processor <tt><font style="font-size: 10pt;" size="2">nys</font></tt><font style="font-size: 10pt;" size="2">
     49= </font><tt><font style="font-size: 10pt;" size="2">nxl</font></tt><font style="font-size: 10pt;" size="2">
     50= 0</font> and <font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">nxr
    6751=</font> </font><a href="chapter_4.1.html#nx">nx</a>
    68 and <font style="font-size: 10pt;" size="2"><font
    69  face="Cumberland, monospace">nyn
     52and <font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">nyn
    7053=</font></font> <a href="chapter_4.1.html#ny">ny</a>.
    7154The third index determines the user-defined subdomain. The total model
     
    8164assumed).
    8265The second subdomain should be defined by all points outside of this
    83 domain. This may be obtained by the following lines of code in <tt><font
    84  style="font-size: 10pt;" size="2">user_init</font></tt>:
     66domain. This may be obtained by the following lines of code in <tt><font style="font-size: 10pt;" size="2">user_init</font></tt>:
    8567</p>
    8668<ul>
    87   <p style="line-height: 100%;"><tt><font style="font-size: 10pt;"
    88  size="2"><font face="Cumberland, monospace">USE
    89 grid_variables</font></font></tt><font style="font-size: 10pt;" size="2"><font
    90  face="Cumberland, monospace"> <br>
    91   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    92  face="Cumberland, monospace">USE indices</font></font></tt><font
    93  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    94   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    95  face="Cumberland, monospace">USE statistics</font></font></tt><font
    96  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    97   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    98  face="Cumberland, monospace">.</font></font></tt><font
    99  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    100   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    101  face="Cumberland, monospace">.</font></font></tt><font
    102  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    103   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    104  face="Cumberland, monospace">.</font></font></tt><font
    105  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    106   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    107  face="Cumberland, monospace">disc_center_x = dx * (nx + 1)/2</font></font></tt><font
    108  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    109   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    110  face="Cumberland, monospace">disc_center_y = dy * (ny + 1)/2</font></font></tt><font
    111  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    112   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    113  face="Cumberland, monospace">disc_radius = 0.5 * disc_center_x</font></font></tt><font
    114  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    115   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    116  face="Cumberland, monospace">DO&nbsp; i = nxl-1, nxr+1</font></font></tt><font
    117  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    118   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    119  face="Cumberland, monospace">&nbsp;&nbsp; x = i * dx</font></font></tt><br>
    120   <tt><font style="font-size: 10pt;" size="2"><font
    121  face="Cumberland, monospace">&nbsp;&nbsp; DO&nbsp; j = nys-1, nyn+1</font></font></tt><font
    122  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    123   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    124  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; y = j * dy</font></font></tt><font
    125  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    126   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    127  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    128 radial_distance = SQRT( ( x - disc_center_x )**2 + &amp;</font></font></tt><font
    129  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    130   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    131  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    132 ( y - disc_center_y )**2 )</font></font></tt><font
    133  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    134   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    135  face="Cumberland, monospace">&nbsp; &nbsp; &nbsp; IF ( radial_distance
    136 &gt; disc_radius )&nbsp; THEN</font></font></tt><font
    137  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    138   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    139  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    140 rmask(j,i,1) = 0.0</font></font></tt><font style="font-size: 10pt;"
    141  size="2"><font face="Cumberland, monospace"><br>
    142   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    143  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    144 rmask(j,i,2) = 1.0</font></font></tt><font style="font-size: 10pt;"
    145  size="2"><font face="Cumberland, monospace"><br>
    146   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    147  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ELSE</font></font></tt><font
    148  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    149   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    150  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    151 rmask(j,i,1) = 1.0</font></font></tt><font style="font-size: 10pt;"
    152  size="2"><font face="Cumberland, monospace"><br>
    153   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    154  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    155 rmask(j,i,2) = 0.0</font></font></tt><font style="font-size: 10pt;"
    156  size="2"><font face="Cumberland, monospace"><br>
    157   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    158  face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ENDIF</font></font></tt><font
    159  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
    160   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    161  face="Cumberland, monospace">&nbsp;&nbsp; ENDDO</font></font></tt><font
    162  style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
    163   </font></font><tt><font style="font-size: 10pt;" size="2"><font
    164  face="Cumberland, monospace">ENDDO</font></font></tt></p>
     69  <p style="line-height: 100%;"><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">USE
     70grid_variables</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     71  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">USE indices</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     72  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">USE statistics</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     73  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">.</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     74  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">.</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     75  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">.</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     76  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">disc_center_x = dx * (nx + 1)/2</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     77  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">disc_center_y = dy * (ny + 1)/2</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     78  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">disc_radius = 0.5 * disc_center_x</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     79  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">DO&nbsp; i = nxl-1, nxr+1</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     80  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp; x = i * dx</font></font></tt><br>
     81  <tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp; DO&nbsp; j = nys-1, nyn+1</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     82  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; y = j * dy</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     83  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     84radial_distance = SQRT( ( x - disc_center_x )**2 + &amp;</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     85  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     86( y - disc_center_y )**2 )</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     87  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp; &nbsp; &nbsp; IF ( radial_distance
     88&gt; disc_radius )&nbsp; THEN</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     89  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     90rmask(j,i,1) = 0.0</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     91  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     92rmask(j,i,2) = 1.0</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     93  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ELSE</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     94  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     95rmask(j,i,1) = 1.0</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     96  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
     97rmask(j,i,2) = 0.0</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     98  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ENDIF</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"> <br>
     99  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">&nbsp;&nbsp; ENDDO</font></font></tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace"><br>
     100  </font></font><tt><font style="font-size: 10pt;" size="2"><font face="Cumberland, monospace">ENDDO</font></font></tt></p>
    165101</ul>
    166 <p style="line-height: 100%;">The module <span
    167  style="font-family: monospace;">statistics</span> must be used,
     102<p style="line-height: 100%;">The module <span style="font-family: monospace;">statistics</span> must be used,
    168103because it contains <span style="font-family: monospace;">rmask</span>
    169104and the modules <span style="font-family: monospace;">grid_variables</span>
     
    177112if
    178113the user sets <a href="chapter_4.1.html#statistic_regions">statistic_regions</a>
    179 &#8805; <i>1</i>. Beyond that, names for the user-defined subdomains can be
     114&ge; <i>1</i>. Beyond that, names for the user-defined subdomains can be
    180115assigned
    181116via the initialization parameter <a href="chapter_4.3.html#region">region</a>.
     
    183118the local files <a href="chapter_3.4.html#HEADER">HEADER</a>
    184119and <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>
    185 within the user-defined subroutine <tt><font style="font-size: 10pt;"
    186  size="2">user_header</font></tt>.
     120within the user-defined subroutine <tt><font style="font-size: 10pt;" size="2">user_header</font></tt>.
    187121<br>
    188122&nbsp; </p>
    189123<hr>
    190124<p style="line-height: 100%;"><br>
    191 <font color="#000080"><font color="#000080"><a href="chapter_3.5.2.html"><font
    192  color="#000080"><img src="left.gif" name="Grafik1" align="bottom"
    193  border="2" height="32" width="32"></font></a><a href="index.html"><font
    194  color="#000080"><img src="up.gif" name="Grafik2" align="bottom"
    195  border="2" height="32" width="32"></font></a><a
    196  href="chapter_3.5.4.html"><font color="#000080"><img src="right.gif"
    197  name="Grafik3" align="bottom" border="2" height="32" width="32"></font></a></font></font></p>
    198 <p style="line-height: 100%;"><i>Last change:&nbsp;</i> 15/04/05 (SR)</p>
    199 </body>
    200 </html>
     125<font color="#000080"><font color="#000080"><a href="chapter_3.5.2.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.4.html"><font color="#000080"><img src="right.gif" name="Grafik3" align="bottom" border="2" height="32" width="32"></font></a></font></font></p>
     126<p style="line-height: 100%;"><i>Last change:&nbsp;</i> 07/03/07 (SR)</p>
     127</body></html>
Note: See TracChangeset for help on using the changeset viewer.