- Timestamp:
- Feb 18, 2009 5:50:38 PM (16 years ago)
- Location:
- palm/trunk
- Files:
-
- 17 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/DOC/app/chapter_4.1.html
r217 r240 2811 2811 </tr> 2812 2812 2813 <tr> 2813 <tr><td style="font-weight: bold; vertical-align: top;"><a name="canyon_height"></a>canyon_height</td><td style="vertical-align: top;">R</td><td style="font-style: italic; vertical-align: top;">50.0</td><td>Street canyon height 2814 in m.<br> 2815 2816 2817 2818 2819 2820 2821 <br> 2822 2823 2824 2825 2826 2827 2828 <span style="font-weight: bold;">canyon_height</span> must 2829 be less than the height of the model domain. This parameter requires <a href="chapter_4.1.html#topography">topography</a> 2830 = <span style="font-style: italic;">'single_street_canyon'</span>.</td></tr><tr><td style="font-weight: bold; vertical-align: top;"><a name="canyon_width_x"></a>canyon_width_x</td><td style="vertical-align: top;">R</td><td style="font-style: italic; vertical-align: top;">9999999.9</td><td>Street canyon width in x-direction in m.<br> 2831 2832 2833 2834 2835 2836 2837 <br> 2838 2839 2840 2841 2842 2843 2844 2845 Currently, <span style="font-weight: bold;">canyon_width_x</span> 2846 must be at least <span style="font-style: italic;">3 2847 * </span><a style="font-style: italic;" href="chapter_4.1.html#dx">dx</a> and no more than <span style="font-style: italic;">( </span><a style="font-style: italic;" href="chapter_4.1.html#nx">nx</a><span style="font-style: italic;"> - 1 ) </span><span style="font-style: italic;"> * <a href="chapter_4.1.html#dx">dx</a> 2848 </span><span style="font-style: italic;">- <a href="chapter_4.1.html#canyon_wall_left">canyon_wall_left</a></span>. 2849 This parameter requires <a href="chapter_4.1.html#topography">topography</a> 2850 = <span style="font-style: italic;">'</span><span style="font-style: italic;">single_street_canyon</span><span style="font-style: italic;">'</span>. A non-default value implies a canyon orientation in y-direction.</td></tr><tr><td style="font-weight: bold; vertical-align: top;"><a name="canyon_width_y"></a>canyon_width_y</td><td style="vertical-align: top;">R</td><td style="font-style: italic; vertical-align: top;">9999999.9</td><td>Street canyon width in y-direction in m.<br> 2851 2852 2853 2854 2855 2856 2857 <br> 2858 2859 2860 2861 2862 2863 2864 2865 Currently, <span style="font-weight: bold;">canyon_width_y</span> 2866 must be at least <span style="font-style: italic;">3 2867 * </span><a style="font-style: italic;" href="chapter_4.1.html#dy">dy</a> and no more than <span style="font-style: italic;">( </span><a style="font-style: italic;" href="chapter_4.1.html#ny">ny</a><span style="font-style: italic;"> - 1 ) </span><span style="font-style: italic;"> * <a href="chapter_4.1.html#dy">dy</a></span><span style="font-style: italic;"> - <a href="chapter_4.1.html#canyon_wall_south">canyon_wall_south</a></span>. This parameter requires <a href="chapter_4.1.html#topography">topography</a> 2868 = <span style="font-style: italic;">'</span><span style="font-style: italic;">single_street_canyon</span>. A non-default value implies a canyon orientation in x-direction.</td></tr><tr><td style="font-weight: bold; vertical-align: top;"><a name="canyon_wall_left"></a>canyon_wall_left</td><td style="vertical-align: top;">R</td><td style="font-style: italic; vertical-align: top;"><span style="font-style: italic;">canyon centered in x-direction</span></td><td>x-coordinate of the left canyon wall (distance between the 2869 left canyon wall and the left border of the model domain) in m.<br> 2870 2871 2872 2873 2874 2875 2876 2877 <br> 2878 2879 2880 2881 2882 2883 2884 2885 Currently, <span style="font-weight: bold;">canyon_wall_left</span> 2886 must be at least <span style="font-style: italic;">1 2887 * </span><a style="font-style: italic;" href="chapter_4.1.html#dx">dx</a> and less than <span style="font-style: italic;">( <a href="chapter_4.1.html#nx">nx</a> 2888 - 1 ) * <a href="chapter_4.1.html#dx">dx</a> - <a href="chapter_4.1.html#canyon_width_x">canyon_width_x</a></span>. 2889 This parameter requires <a href="chapter_4.1.html#topography">topography</a> 2890 = <span style="font-style: italic;">'</span><span style="font-style: italic;">single_street_canyon</span><span style="font-style: italic;">'</span>.<br> 2891 2892 2893 2894 2895 2896 2897 2898 <br> 2899 2900 2901 2902 2903 2904 2905 2906 The default value <span style="font-weight: bold;">canyon_wall_left</span> 2907 = <span style="font-style: italic;">( ( <a href="chapter_4.1.html#nx">nx</a> + 2908 1 ) * <a href="chapter_4.1.html#dx">dx</a> - <a href="chapter_4.1.html#canyon_width_x">canyon_width_x</a> ) / 2</span> 2909 centers the canyon in x-direction.</td></tr><tr><td style="font-weight: bold; vertical-align: top;"><a name="canyon_wall_south"></a>canyon_wall_south</td><td style="vertical-align: top;">R</td><td style="font-style: italic; vertical-align: top;"><span style="font-style: italic;">canyon centered in y-direction</span></td><td>y-coordinate of the South canyon wall (distance between the 2910 South canyon wall and the South border of the model domain) in m.<br> 2911 2912 2913 2914 2915 2916 2917 2918 <br> 2919 2920 2921 2922 2923 2924 2925 2926 Currently, <span style="font-weight: bold;">canyon_wall_south</span> 2927 must be at least <span style="font-style: italic;">1 2928 * </span><a style="font-style: italic;" href="chapter_4.1.html#dy">dy</a> and less than <span style="font-style: italic;">( <a href="chapter_4.1.html#ny">ny</a> 2929 - 1 ) * <a href="chapter_4.1.html#dy">dy</a> - <a href="chapter_4.1.html#canyon_width_y">canyon_width_y</a></span>. 2930 This parameter requires <a href="chapter_4.1.html#topography">topography</a> 2931 = <span style="font-style: italic;">'</span><span style="font-style: italic;">single_street_canyon</span><span style="font-style: italic;">'</span>.<br> 2932 2933 2934 2935 2936 2937 2938 2939 <br> 2940 2941 2942 2943 2944 2945 2946 2947 The default value <span style="font-weight: bold;">canyon_wall_south</span> 2948 = <span style="font-style: italic;">( ( <a href="chapter_4.1.html#ny">ny</a> + 2949 1 ) * <a href="chapter_4.1.html#dy">dy</a> - </span><a href="chapter_4.1.html#building_length_y"><span style="font-style: italic;"></span></a><a style="font-style: italic;" href="chapter_4.1.html#canyon_width_y">canyon_wid</a><span style="font-style: italic;"><a style="font-style: italic;" href="chapter_4.1.html#canyon_width_y">th_y</a> ) / 2</span> 2950 centers the canyon in y-direction.</td></tr><tr> 2814 2951 2815 2952 … … 3118 3255 3119 3256 <span style="font-weight: bold;">conserve_volume_flow</span> 3120 = <span style="font-style: italic;">.T RUE.</span>3257 = <span style="font-style: italic;">.T.</span> 3121 3258 guarantees that the volume flow through the xz- or yz-cross-section of 3122 3259 the total model domain remains constant (equal to the initial value at 3123 t=0) throughout the run.<br> 3260 t=0) throughout the run.<br><br>Note that <span style="font-weight: bold;">conserve_volume_flow</span> 3261 = <span style="font-style: italic;">.T.</span> requires <a href="#dp_external">dp_external</a> = <span style="font-style: italic;">.F.</span> .<br> 3124 3262 3125 3263 … … 3519 3657 3520 3658 </tr> 3521 3659 <tr><td style="vertical-align: top;"><p><a name="dp_external"></a><b>dp_external</b></p></td><td style="vertical-align: top;">L</td><td style="vertical-align: top; font-style: italic;">.F.</td><td>External pressure gradient switch.<br><br>This 3660 parameter is used to switch on/off an external pressure gradient as 3661 driving force. The external pressure gradient is controlled by the 3662 parameters <a href="#dp_smooth">dp_smooth</a>, <a href="#dp_level_b">dp_level_b</a> and <a href="#dpdxy">dpdxy</a>.<br><br>Note that <span style="font-weight: bold;">dp_external</span> = <span style="font-style: italic;">.T.</span> requires <a href="#conserve_volume_flow">conserve_volume_flow</a> =<span style="font-style: italic;"> .F. </span>It is normally recommended to disable the Coriolis force by setting <a href="l#omega">omega</a> = 0.0.</td></tr><tr><td style="vertical-align: top;"><p><a name="dp_smooth"></a><b>dp_smooth</b></p></td><td style="vertical-align: top;">L</td><td style="vertical-align: top; font-style: italic;">.F.</td><td>Vertically smooth the external pressure gradient using a sinusoidal smoothing function.<br><br>This parameter only applies if <a href="#dp_external">dp_external</a> = <span style="font-style: italic;">.T. </span>. It is useful in combination with <a href="#dp_level_b">dp_level_b</a> >> 0 to generate a non-accelerated boundary layer well below <a href="#dp_level_b">dp_level_b</a>.</td></tr><tr><td style="vertical-align: top;"><p><a name="dp_level_b"></a><b>dp_level_b</b></p></td><td style="vertical-align: top;">R</td><td style="vertical-align: top; font-style: italic;">0.0</td><td><font size="3">Lower 3663 limit of the vertical range for which the external pressure gradient is applied (</font>in <font size="3">m).</font><br><br>This parameter only applies if <a href="#dp_external">dp_external</a> = <span style="font-style: italic;">.T. </span><span lang="en-GB">It 3664 must hold the condition zu(0) <= <b>dp_level_b</b> 3665 <= zu(</span><a href="#nz"><span lang="en-GB">nz</span></a><span lang="en-GB">)</span><span lang="en-GB">. </span>It can be used in combination with <a href="#dp_smooth">dp_smooth</a> = <span style="font-style: italic;">.T.</span> to generate a non-accelerated boundary layer well below <span style="font-weight: bold;">dp_level_b</span> if <span style="font-weight: bold;">dp_level_b</span> >> 0.<br><br>Note 3666 that there is no upper limit of the vertical range because the external 3667 pressure gradient is always applied up to the top of the model domain.</td></tr><tr><td style="vertical-align: top;"><p><a name="dpdxy"></a><b>dpdxy</b></p></td><td style="vertical-align: top;">R(2)</td><td style="font-style: italic; vertical-align: top;">2 * 0.0</td><td>Values of the external pressure gradient applied in x- and y-direction, respectively (in Pa/m).<br><br>This parameter only applies if <a href="#dp_external">dp_external</a> = <span style="font-style: italic;">.T. </span>It sets the pressure gradient values. Negative values mean an acceleration, positive values mean deceleration. For example, <span style="font-weight: bold;">dpdxy</span> = -0.0002, 0.0, drives the flow in positive x-direction, <span lang="en-GB"></span></td></tr> 3522 3668 3523 3669 … … 13985 14131 13986 14132 13987 The building size and location can be specified withthe parameters <a href="#building_height">building_height</a>, <a href="#building_length_x">building_length_x</a>, <a href="#building_length_y">building_length_y</a>, <a href="#building_wall_left">building_wall_left</a> and <a href="#building_wall_south">building_wall_south</a>.<font color="#000000"><br></font></div>14133 The building size and location can be specified by the parameters <a href="#building_height">building_height</a>, <a href="#building_length_x">building_length_x</a>, <a href="#building_length_y">building_length_y</a>, <a href="#building_wall_left">building_wall_left</a> and <a href="#building_wall_south">building_wall_south</a>.<font color="#000000"><br></font></div> 13988 14134 13989 14135 … … 14000 14146 14001 14147 14002 <p><span style="font-style: italic;">'read_from_file'</span><br> 14148 <p><span style="font-style: italic;">'single_street_canyon'</span><br> 14149 14150 14151 14152 14153 14154 14155 14156 </p> 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 <div style="margin-left: 40px;">Flow 14171 over a single, quasi-2D street canyon of infinite length oriented either in x- or in y-direction.<br> 14172 14173 14174 14175 14176 14177 14178 14179 The canyon size, orientation and location can be specified by the parameters <a href="chapter_4.1.html#canyon_height">canyon_height</a> plus <span style="font-weight: bold;">either</span> <a href="chapter_4.1.html#canyon_width_x">canyon_width_x</a> and <a href="chapter_4.1.html#canyon_wall_left">canyon_wall_left</a> <span style="font-weight: bold;">or</span> <a href="chapter_4.1.html#canyon_width_y">canyon_width_y</a> and <a href="chapter_4.1.html#canyon_wall_south">canyon_wall_south</a>.<font color="#000000"><br></font></div> 14180 14181 14182 14183 14184 14185 14186 14187 <span style="font-style: italic;"></span> <span style="font-style: italic;"></span><p><span style="font-style: italic;">'read_from_file'</span><br> 14003 14188 14004 14189 -
palm/trunk/DOC/app/chapter_4.2.html
r237 r240 3398 3398 3399 3399 3400 <td style="vertical-align: top; ">3400 <td style="vertical-align: top; font-family: Helvetica,Arial,sans-serif;"> 3401 3401 3402 3402 … … 3411 3411 3412 3412 3413 <p><span lang="en-GB"> <font face="Thorndale, serif">The parameter </font></span><a href="#create_disturbances"><span lang="en-GB"><font face="Thorndale, serif">create_disturbances</font></span></a><font face="Thorndale, serif"><span lang="en-GB">3413 <p><span lang="en-GB">The parameter </span><a href="#create_disturbances"><span lang="en-GB">create_disturbances</span></a><span lang="en-GB"> 3414 3414 describes how to impose 3415 3415 random perturbations to the horizontal velocity field. The perturbation … … 3420 3420 velocities are imposed no more. The value of this parameter usually 3421 3421 must be determined by trial and error (it depends e.g. on the total 3422 number of grid points).</span> </font></p>3422 number of grid points).</span> </p> 3423 3423 3424 3424 … … 3457 3457 3458 3458 3459 <td style="vertical-align: top; ">3460 3461 3462 <p lang="en-GB"><font face="Thorndale, serif"><fontsize="3">Lower3459 <td style="vertical-align: top; font-family: Helvetica,Arial,sans-serif;"> 3460 3461 3462 <p lang="en-GB"><font size="3">Lower 3463 3463 limit of the vertical range for which random perturbations are to be 3464 imposed on the horizontal wind field (</font> </font>in <font face="Thorndale, serif"><font size="3">m). 3465 </font> </font></p>3466 3467 3468 3469 3470 3471 <p><span lang="en-GB"> <font face="Thorndale, serif">This3464 imposed on the horizontal wind field (</font>in <font size="3">m). 3465 </font> </p> 3466 3467 3468 3469 3470 3471 <p><span lang="en-GB">This 3472 3472 parameter must hold the condition zu(3) <= <b>disturbance_level_b</b> 3473 <= zu(</ font></span><a href="chapter_4.1.html#nz"><span lang="en-GB"><font face="Thorndale, serif">nz-2</font></span></a><span lang="en-GB"><font face="Thorndale, serif">)</font></span><span lang="en-GB"><font face="Thorndale, serif">. Additionally, <b>disturbance_level_b</b>3474 <= </ font></span><a href="#disturbance_level_t"><span lang="en-GB"><font face="Thorndale, serif">disturbance_level_t</font></span></a>3475 <span lang="en-GB"> <font face="Thorndale, serif">must3476 also hold.</ font></span></p>3477 3478 3479 3480 3481 <p><span lang="en-GB"> <font face="Thorndale, serif">In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>) </font></span><span lang="en-GB"><span style="font-family: Thorndale,serif;">the default value is <span style="font-weight: bold;">disturbance_level_b</span> = <span style="font-style: italic;">zu(nz * 2 / 3) </span>(negative).</span></span><a href="chapter_4.1.html#nz"><span lang="en-GB"></span></a><span lang="en-GB"></span><span lang="en-GB"></span></p>3482 3483 3484 3485 3486 3487 <p><span lang="en-GB"> <font face="Thorndale, serif">The3488 parameter </ font></span><a href="#create_disturbances"><span lang="en-GB"><font face="Thorndale, serif">create_disturbances</font></span></a><font face="Thorndale, serif"><span lang="en-GB">3473 <= zu(</span><a href="chapter_4.1.html#nz"><span lang="en-GB">nz-2</span></a><span lang="en-GB">)</span><span lang="en-GB">. Additionally, <b>disturbance_level_b</b> 3474 <= </span><a href="#disturbance_level_t"><span lang="en-GB">disturbance_level_t</span></a> 3475 <span lang="en-GB">must 3476 also hold.</span></p> 3477 3478 3479 3480 3481 <p><span lang="en-GB">In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>) </span><span lang="en-GB">the default value is <span style="font-weight: bold;">disturbance_level_b</span> = <span style="font-style: italic;">zu(nz * 2 / 3) </span>(negative).</span><a href="chapter_4.1.html#nz"><span lang="en-GB"></span></a><span lang="en-GB"></span><span lang="en-GB"></span></p> 3482 3483 3484 3485 3486 3487 <p><span lang="en-GB">The 3488 parameter </span><a href="#create_disturbances"><span lang="en-GB">create_disturbances</span></a><span lang="en-GB"> 3489 3489 describes how to impose 3490 random perturbations to the horizontal velocity field</span></font><font face="Thorndale, serif"><span lang="en-GB">.</span> 3490 random perturbations to the horizontal velocity field</span><span lang="en-GB">.</span> 3491 </p> 3492 3493 3494 </td> 3495 3496 3497 </tr> 3498 3499 3500 <tr> 3501 3502 3503 <td style="vertical-align: top;"> 3504 3505 3506 <p><a name="disturbance_level_t"></a><b>disturbance_level_t</b></p> 3507 3508 3509 3510 </td> 3511 3512 3513 <td style="vertical-align: top;">R</td> 3514 3515 3516 3517 <td style="vertical-align: top;"><i>zu(nz/3) or<br> 3518 3519 3520 zu(nzt-3)<br> 3521 3522 3523 see right</i></td> 3524 3525 3526 3527 <td style="vertical-align: top; font-family: Helvetica,Arial,sans-serif;"> 3528 3529 3530 <p lang="en-GB"><font size="3">Upper 3531 limit of the vertical range for which random perturbations are to be 3532 imposed on the horizontal wind field (</font>in <font size="3">m). 3491 3533 </font> </p> 3492 3534 3493 3535 3536 3537 3538 3539 <p><span lang="en-GB">This 3540 parameter must hold the condition <b>disturbance_level_t</b> 3541 <= zu<i>(</i></span><i><a href="chapter_4.1.html#nz"><span lang="en-GB">nz-2</span></a><span lang="en-GB">)</span></i><span lang="en-GB">. 3542 Additionally, </span><a href="#disturbance_level_b"><span lang="en-GB">disturbance_level_b</span></a> 3543 <span lang="en-GB"><= 3544 <b>disturbance_level_t</b> 3545 must also hold.</span></p> 3546 3547 3548 <span lang="en-GB">In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>) </span><span lang="en-GB">the default value is <span style="font-weight: bold;">disturbance_level_t</span> = <span style="font-style: italic;">zu(nzt - 3</span>)</span><span lang="en-GB"><span style="font-style: italic;"> </span>(negative)</span><span lang="en-GB">.</span> 3549 3550 3551 <p><span lang="en-GB">The 3552 parameter </span><a href="#create_disturbances"><span lang="en-GB">create_disturbances</span></a><span lang="en-GB"> 3553 describes how to impose 3554 random perturbations to the horizontal velocity field</span><span lang="en-GB">.</span> 3555 </p> 3556 3557 3494 3558 </td> 3495 3559 … … 3504 3568 3505 3569 3506 <p><a name="disturbance_level_t"></a><b>disturbance_level_t</b></p>3507 3508 3509 3510 </td>3511 3512 3513 <td style="vertical-align: top;">R</td>3514 3515 3516 3517 <td style="vertical-align: top;"><i>zu(nz/3) or<br>3518 3519 3520 zu(nzt-3)<br>3521 3522 3523 see right</i></td>3524 3525 3526 3527 <td style="vertical-align: top;">3528 3529 3530 <p lang="en-GB"><font face="Thorndale, serif"><font size="3">Upper3531 limit of the vertical range for which random perturbations are to be3532 imposed on the horizontal wind field (</font></font>in <font face="Thorndale, serif"><font size="3">m). 3533 </font></font> </p>3534 3535 3536 3537 3538 3539 <p><span lang="en-GB"><font face="Thorndale, serif">This3540 parameter must hold the condition <b>disturbance_level_t</b>3541 <= zu<i>(</i></font></span><i><a href="chapter_4.1.html#nz"><span lang="en-GB"><font face="Thorndale, serif">nz-2</font></span></a><span lang="en-GB"><font face="Thorndale, serif">)</font></span></i><span lang="en-GB"><font face="Thorndale, serif">.3542 Additionally, </font></span><a href="#disturbance_level_b"><span lang="en-GB"><font face="Thorndale, serif">disturbance_level_b</font></span></a>3543 <span lang="en-GB"><font face="Thorndale, serif"><=3544 <b>disturbance_level_t</b>3545 must also hold.</font></span></p>3546 3547 3548 <span lang="en-GB"><font face="Thorndale, serif">In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>) </font></span><span lang="en-GB"><span style="font-family: Thorndale,serif;">the default value is <span style="font-weight: bold;">disturbance_level_t</span> = <span style="font-style: italic;">zu(nzt - 3</span>)</span></span><span lang="en-GB"><span style="font-family: Thorndale,serif;"><span style="font-style: italic;"> </span>(negative)</span></span><span lang="en-GB"><span style="font-family: Thorndale,serif;">.</span></span>3549 3550 3551 <p><span lang="en-GB"><font face="Thorndale, serif">The3552 parameter </font></span><a href="#create_disturbances"><span lang="en-GB"><font face="Thorndale, serif">create_disturbances</font></span></a><font face="Thorndale, serif"><span lang="en-GB">3553 describes how to impose3554 random perturbations to the horizontal velocity field</span></font><font face="Thorndale, serif"><span lang="en-GB">.</span>3555 </font> </p>3556 3557 3558 </td>3559 3560 3561 </tr>3562 3563 3564 <tr>3565 3566 3567 <td style="vertical-align: top;">3568 3569 3570 3570 <p><a name="do2d_at_begin"></a><b>do2d_at_begin</b></p> 3571 3571 … … 3582 3582 3583 3583 3584 <td style="vertical-align: top; ">.F.<br>3584 <td style="vertical-align: top; font-style: italic;">.F.<br> 3585 3585 3586 3586 … … 3637 3637 3638 3638 3639 <td style="vertical-align: top; ">.F.<br>3639 <td style="vertical-align: top; font-style: italic;">.F.<br> 3640 3640 3641 3641 … … 3685 3685 3686 3686 3687 <td style="vertical-align: top; ">.F.<br>3687 <td style="vertical-align: top; font-style: italic;">.F.<br> 3688 3688 3689 3689 … … 3762 3762 3763 3763 3764 <td style="vertical-align: top; ">see3764 <td style="vertical-align: top; font-style: italic;">see 3765 3765 right<br> 3766 3766 … … 3828 3828 3829 3829 3830 3830 <tr> 3831 3831 3832 3832 … … 3852 3852 3853 3853 3854 < p lang="en-GB"><fontface="Thorndale, serif"><font size="3">Time3855 step to be used by the 3d-model (</font></font> in <fontface="Thorndale, serif"><font size="3">s). 3856 </font></font> </p>3857 3858 3859 3860 3861 3862 <p ><span lang="en-GB"><font face="Thorndale, serif">This parameter</font></span>3863 < font face="Thorndale, serif"><span lang="en-GB">is3854 <font style="font-family: Helvetica,Arial,sans-serif;" face="Thorndale, serif"><font size="3">Time 3855 step to be used by the 3d-model (</font></font><span style="font-family: Helvetica,Arial,sans-serif;">in </span><font style="font-family: Helvetica,Arial,sans-serif;" face="Thorndale, serif"><font size="3">s). 3856 </font></font> 3857 3858 3859 3860 3861 3862 <p style="font-family: Helvetica,Arial,sans-serif;"><span lang="en-GB">This parameter</span> 3863 <span lang="en-GB">is 3864 3864 described in 3865 detail with the initialization parameters (see</span>< /font><span lang="en-GB"><font face="Thorndale, serif"> </font></span><a href="chapter_4.1.html#dt"><span lang="en-GB"><font face="Thorndale, serif">dt</font></span></a><font face="Thorndale, serif"><span lang="en-GB">).3865 detail with the initialization parameters (see</span><span lang="en-GB"> </span><a href="chapter_4.1.html#dt"><span lang="en-GB">dt</span></a><span lang="en-GB">). 3866 3866 Additionally, it may be 3867 3867 used as a run parameter and then applies to all restart runs (until it 3868 3868 is changed again). A switch from a constant time step to a variable 3869 time step can be achieved with <b>dt</b> = <i>-1.0</i>.</span> 3870 </font> </p>3869 time step can be achieved with <b>dt</b> = <i>-1.0</i>.</span></p><font face="Thorndale, serif"> 3870 </font> 3871 3871 3872 3872 … … 3917 3917 3918 3918 3919 <br >3920 3921 3922 <font face="Thorndale, serif"><span lang="en-GB">With3919 <br style="font-family: Helvetica,Arial,sans-serif;"> 3920 3921 3922 <font style="font-family: Helvetica,Arial,sans-serif;" face="Thorndale, serif"><span lang="en-GB">With 3923 3923 variable time step (see <span style="font-weight: bold;">dt</span>), 3924 3924 the number of time levels entering the average can vary from one 3925 averaging interval to the next (for a more detailed explanation see </span></font><font ><a href="#averaging_interval"><span lang="en-GB"><font face="Thorndale, serif">averaging_interval</font></span></a>)</font><fontface="Thorndale, serif"><span lang="en-GB">. It3925 averaging interval to the next (for a more detailed explanation see </span></font><font style="font-family: Helvetica,Arial,sans-serif;"><a href="#averaging_interval"><span lang="en-GB">averaging_interval</span></a>)</font><font style="font-family: Helvetica,Arial,sans-serif;" face="Thorndale, serif"><span lang="en-GB">. It 3926 3926 is approximately given by the quotient of <span style="font-weight: bold;">averaging_interval</span> / 3927 3927 MAX(<span style="font-weight: bold;"> dt_averaging_input</span>, 3928 3928 <span style="font-weight: bold;">dt</span>) (which 3929 3929 gives a more or less exact value if a fixed timestep is used and if 3930 this is an integral divisor of <span style="font-weight: bold;">dt_averaging_input</span>).</span></font> 3931 < br>3930 this is an integral divisor of <span style="font-weight: bold;">dt_averaging_input</span>).</span></font><span style="font-family: Helvetica,Arial,sans-serif;"> 3931 </span><br style="font-family: Helvetica,Arial,sans-serif;"> 3932 3932 3933 3933 -
palm/trunk/DOC/app/chapter_4.6.html
r237 r240 1830 1830 <td>Canopy mode</td> 1831 1831 </tr> 1832 <tr> 1832 <tr><td style="font-weight: bold;"><a href="chapter_4.1.html#canyon_height">canyon_height</a></td><td>I</td><td>R</td><td style="font-style: italic;">50.0</td><td>Street canyon height 1833 in m.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#canyon_width_x">canyon_width_x</a></td><td>I</td><td>R</td><td style="font-style: italic;">9999999.9</td><td>Street canyon width in x-direction in m.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#canyon_width_y">canyon_width_y</a></td><td>I</td><td>R</td><td style="font-style: italic;">9999999.9</td><td>Street canyon width in y-direction in m.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#canyon_wall_left">canyon_wall_left</a></td><td>I</td><td>R</td><td style="font-style: italic;">canyon centered in x-direction</td><td>x-coordinate of the left canyon wall in m.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#canyon_wall_south">canyon_wall_south</a></td><td>I</td><td>R</td><td style="font-style: italic;">canyon centered in y-direction</td><td>y-coordinate of the South canyon wall in m.</td></tr><tr> 1833 1834 1834 1835 … … 3471 3472 3472 3473 3473 <tr> 3474 <tr><td style="font-weight: bold;"><a href="chapter_4.1.html#dp_external">dp_external</a></td><td>R</td><td>L</td><td style="font-style: italic;">.F.</td><td>External pressure gradient switch.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#dp_smooth">dp_smooth</a></td><td>R</td><td>L</td><td style="font-style: italic;">.F.</td><td>Vertically smooth the external pressure gradient using a sinusoidal smoothing function.</td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#dp_level_b">dp_level_b</a></td><td>R</td><td>R</td><td style="font-style: italic;">0.0</td><td><font size="3">Lower 3475 limit of the vertical range for which the external pressure gradient is applied (</font>in <font size="3">m).</font></td></tr><tr><td style="font-weight: bold;"><a href="chapter_4.1.html#dpdxy">dpdxy</a></td><td>R</td><td>R (2)</td><td style="font-style: italic;">2 * 0.0</td><td>Values of the external pressure gradient applied in x- and y-direction, respectively (in Pa/m).<br></td></tr><tr> 3474 3476 <td><a href="chapter_4.1.html#drag_coefficient"><span style="font-weight: bold;">drag_coefficient</span></a></td> 3475 3477 <td>I</td> -
palm/trunk/DOC/tec/message_identifiers
r230 r240 230 230 PA0149 particle out of range: i=... j=... k=... 231 231 nxl=... nxr=... nys=... nyn=... nzb=... nzt=... 232 232 PA0150 Both dp_external and conserve_volume_flow are .TRUE. 233 but one of them must be .FALSE. 234 PA0151 dp_level_b = ... is out of range 235 PA0152 dp_external is .TRUE. but dpdxy is zero, i.e. the external 236 pressure gradient will not be applied 237 PA0153 dpdxy is nonzero but dp_external is .FALSE., i.e. the external 238 pressure gradient will not be applied 233 239 234 240 UI0001 The value for "topography_grid_convention" is not set. 235 241 Its default value is only valid for 236 "topography" = ''single_building'' 242 "topography" = ''single_building'', ''single_street_canyon''or 237 243 ''read_from_file'' Choose ''cell_edge'' or 238 244 ''cell_center''. -
palm/trunk/SOURCE/CURRENT_MODIFICATIONS
r239 r240 5 5 for buildings can be chosen with parameter cluster_size. (init_dvrp) 6 6 7 init_dvrp, header, modules, package_parin 7 External pressure gradient (check_parameters, header, init_3d_model, modules, 8 parin, prognostic_equations, read_var_list, write_var_list) 9 10 New topography case 'single_street_canyon' (header, init_grid, modules, parin, 11 read_var_list, user_check_parameters, user_header, user_init_grid, write_var_list) 12 13 check_parameters, init_dvrp, init_grid, init_3d_model, header, modules, package_parin, parin, prognostic_equations, read_var_list, user_check_parameters, user_header, user_init_grid, write_var_list 8 14 9 15 -
palm/trunk/SOURCE/check_parameters.f90
r232 r240 5 5 ! ----------------- 6 6 ! Bugfix: pressure included for profile output 7 ! Check pressure gradient conditions 7 8 ! 8 9 ! Former revisions: … … 2816 2817 2817 2818 ! 2819 !-- Check pressure gradient conditions 2820 IF ( dp_external .AND. conserve_volume_flow ) THEN 2821 WRITE( message_string, * ) 'Both dp_external and conserve_volume_flow', & 2822 ' are .TRUE. but one of them must be .FALSE.' 2823 CALL message( 'check_parameters', 'PA0150', 1, 2, 0, 6, 0 ) 2824 ENDIF 2825 IF ( dp_external ) THEN 2826 IF ( dp_level_b < zu(nzb) .OR. dp_level_b > zu(nzt) ) THEN 2827 WRITE( message_string, * ) 'dp_level_b = ', dp_level_b, ' is out ', & 2828 ' of range' 2829 CALL message( 'check_parameters', 'PA0151', 1, 2, 0, 6, 0 ) 2830 ENDIF 2831 IF ( .NOT. ANY( dpdxy /= 0.0 ) ) THEN 2832 WRITE( message_string, * ) 'dp_external is .TRUE. but dpdxy is zero',& 2833 ', i.e. the external pressure gradient & will not be applied' 2834 CALL message( 'check_parameters', 'PA0152', 0, 1, 0, 6, 0 ) 2835 ENDIF 2836 ENDIF 2837 IF ( ANY( dpdxy /= 0.0 ) .AND. .NOT. dp_external ) THEN 2838 WRITE( message_string, * ) 'dpdxy is nonzero but dp_external is ', & 2839 '.FALSE., i.e. the external pressure gradient & will not be applied' 2840 CALL message( 'check_parameters', 'PA0153', 0, 1, 0, 6, 0 ) 2841 ENDIF 2842 2843 ! 2818 2844 !-- Check &userpar parameters 2819 2845 CALL user_check_parameters -
palm/trunk/SOURCE/header.f90
r237 r240 5 5 ! ----------------- 6 6 ! Output of cluster_size 7 ! +dp_external, dp_level_b, dp_smooth, dpdxy 8 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 9 ! canyon_wall_south 7 10 ! 8 11 ! Former revisions: … … 99 102 CHARACTER (LEN=85) :: roben, runten 100 103 101 INTEGER :: av, bh, blx, bly, bxl, bxr, byn, bys, i, ihost, io, j, l, ll 104 INTEGER :: av, bh, blx, bly, bxl, bxr, byn, bys, ch, cwx, cwy, cxl, cxr, & 105 cyn, cys, i, ihost, io, j, l, ll 102 106 REAL :: cpuseconds_per_simulated_second 103 107 … … 285 289 ENDIF 286 290 IF ( passive_scalar ) WRITE ( io, 134 ) 287 IF ( conserve_volume_flow ) WRITE ( io, 150 ) 291 IF ( conserve_volume_flow ) THEN 292 WRITE ( io, 150 ) 293 ELSEIF ( dp_external ) THEN 294 IF ( dp_smooth ) THEN 295 WRITE ( io, 151 ) dpdxy, dp_level_b, ', vertically smoothed.' 296 ELSE 297 WRITE ( io, 151 ) dpdxy, dp_level_b, '.' 298 ENDIF 299 ENDIF 288 300 WRITE ( io, 99 ) 289 301 … … 381 393 WRITE ( io, 271 ) building_length_x, building_length_y, & 382 394 building_height, bxl, bxr, bys, byn 395 396 CASE ( 'single_street_canyon' ) 397 ch = NINT( canyon_height / dz ) 398 IF ( canyon_width_x /= 9999999.9 ) THEN 399 ! 400 !-- Street canyon in y direction 401 cwx = NINT( canyon_width_x / dx ) 402 IF ( canyon_wall_left == 9999999.9 ) THEN 403 canyon_wall_left = ( nx + 1 - cwx ) / 2 * dx 404 ENDIF 405 cxl = NINT( canyon_wall_left / dx ) 406 cxr = cxl + cwx 407 WRITE ( io, 272 ) 'y', canyon_height, ch, 'u', cxl, cxr 408 409 ELSEIF ( canyon_width_y /= 9999999.9 ) THEN 410 ! 411 !-- Street canyon in x direction 412 cwy = NINT( canyon_width_y / dy ) 413 IF ( canyon_wall_south == 9999999.9 ) THEN 414 canyon_wall_south = ( ny + 1 - cwy ) / 2 * dy 415 ENDIF 416 cys = NINT( canyon_wall_south / dy ) 417 cyn = cys + cwy 418 WRITE ( io, 272 ) 'x', canyon_height, ch, 'v', cys, cyn 419 ENDIF 383 420 384 421 END SELECT … … 1370 1407 150 FORMAT (' --> Volume flow at the right and north boundary will be ', & 1371 1408 'conserved') 1409 151 FORMAT (' --> External pressure gradient directly prescribed by the user:'/, & 1410 2(1X,E12.5),'Pa/m', & 1411 ' in x/y direction starting from dp_level_b =', F6.3, 'm', & 1412 A /) 1372 1413 200 FORMAT (//' Run time and time step information:'/ & 1373 1414 ' ----------------------------------'/) … … 1407 1448 ' Horizontal index bounds (l/r/s/n): ',I4,' / ',I4,' / ',I4, & 1408 1449 ' / ',I4) 1450 272 FORMAT ( ' Single quasi-2D street canyon of infinite length in ',A, & 1451 ' direction' / & 1452 ' Canyon height: ', F6.2, 'm, ch = ', I4, '.' / & 1453 ' Canyon position (',A,'-walls): cxl = ', I4,', cxr = ', I4, '.') 1409 1454 280 FORMAT (//' Vegetation canopy (drag) model:'/ & 1410 1455 ' ------------------------------'// & -
palm/trunk/SOURCE/init_3d_model.f90
r198 r240 7 7 ! Actual revisions: 8 8 ! ----------------- 9 ! 9 ! Set the starting level and the vertical smoothing factor used for 10 ! the external pressure gradient 10 11 ! 11 12 ! Former revisions: … … 91 92 IMPLICIT NONE 92 93 93 INTEGER :: i, j, k, sr94 INTEGER :: i, ind_array(1), j, k, sr 94 95 95 96 INTEGER, DIMENSION(:), ALLOCATABLE :: ngp_2dh_l, ngp_3d_inner_l … … 111 112 sums_divnew_l(0:statistic_regions), & 112 113 sums_divold_l(0:statistic_regions) ) 113 ALLOCATE( rdf(nzb+1:nzt) )114 ALLOCATE( dp_smooth_factor(nzb:nzt), rdf(nzb+1:nzt) ) 114 115 ALLOCATE( ngp_2dh_outer(nzb:nzt+1,0:statistic_regions), & 115 116 ngp_2dh_outer_l(nzb:nzt+1,0:statistic_regions), & … … 1264 1265 1265 1266 ! 1267 !-- Initialize the starting level and the vertical smoothing factor used for 1268 !-- the external pressure gradient 1269 dp_smooth_factor = 1.0 1270 IF ( dp_external ) THEN 1271 ! 1272 !-- Set the starting level dp_level_ind_b only if it has not been set before 1273 !-- (e.g. in init_grid). 1274 IF ( dp_level_ind_b == 0 ) THEN 1275 ind_array = MINLOC( ABS( dp_level_b - zu ) ) 1276 dp_level_ind_b = ind_array(1) - 1 + nzb 1277 ! MINLOC uses lower array bound 1 1278 ENDIF 1279 IF ( dp_smooth ) THEN 1280 dp_smooth_factor(:dp_level_ind_b) = 0.0 1281 DO k = dp_level_ind_b+1, nzt 1282 dp_smooth_factor(k) = 0.5 * ( 1.0 + SIN( pi * & 1283 ( REAL( k - dp_level_ind_b ) / & 1284 REAL( nzt - dp_level_ind_b ) - 0.5 ) ) ) 1285 ENDDO 1286 ENDIF 1287 ENDIF 1288 1289 ! 1266 1290 !-- Initialize diffusivities used within the outflow damping layer in case of 1267 1291 !-- non-cyclic lateral boundaries. A linear increase is assumed over the first -
palm/trunk/SOURCE/init_grid.f90
r226 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! new topography case 'single_street_canyon' 7 7 ! 8 8 ! Former revisions: … … 54 54 IMPLICIT NONE 55 55 56 INTEGER :: bh, blx, bly, bxl, bxr, byn, bys, gls, i, inc, i_center, j, & 57 j_center, k, l, nxl_l, nxr_l, nyn_l, nys_l, nzb_si, nzt_l, vi 56 INTEGER :: bh, blx, bly, bxl, bxr, byn, bys, ch, cwx, cwy, cxl, cxr, cyn, & 57 cys, gls, i, inc, i_center, j, j_center, k, l, nxl_l, nxr_l, & 58 nyn_l, nys_l, nzb_si, nzt_l, vi 58 59 59 60 INTEGER, DIMENSION(:), ALLOCATABLE :: vertical_influence … … 379 380 nzb_local(bys:byn,bxl:bxr) = bh 380 381 382 CASE ( 'single_street_canyon' ) 383 ! 384 !-- Single quasi-2D street canyon of infinite length in x or y direction. 385 !-- The canyon is centered in the other direction by default. 386 IF ( canyon_width_x /= 9999999.9 ) THEN 387 ! 388 !-- Street canyon in y direction 389 cwx = NINT( canyon_width_x / dx ) 390 IF ( canyon_wall_left == 9999999.9 ) THEN 391 canyon_wall_left = ( nx + 1 - cwx ) / 2 * dx 392 ENDIF 393 cxl = NINT( canyon_wall_left / dx ) 394 cxr = cxl + cwx 395 396 ELSEIF ( canyon_width_y /= 9999999.9 ) THEN 397 ! 398 !-- Street canyon in x direction 399 cwy = NINT( canyon_width_y / dy ) 400 IF ( canyon_wall_south == 9999999.9 ) THEN 401 canyon_wall_south = ( ny + 1 - cwy ) / 2 * dy 402 ENDIF 403 cys = NINT( canyon_wall_south / dy ) 404 cyn = cys + cwy 405 406 ELSE 407 IF ( myid == 0 ) THEN 408 PRINT*, '+++ user_init_grid: no street canyon width given' 409 ENDIF 410 CALL local_stop 411 ENDIF 412 413 ch = NINT( canyon_height / dz ) 414 dp_level_ind_b = ch 415 ! 416 !-- Street canyon size has to meet some requirements 417 IF ( canyon_width_x /= 9999999.9 ) THEN 418 IF ( ( cxl < 1 ) .OR. ( cxr > nx-1 ) .OR. ( cwx < 3 ) .OR. & 419 ( ch < 3 ) ) THEN 420 IF ( myid == 0 ) THEN 421 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 422 PRINT*, ' cxl=', cxl, 'cxr=', cxr, & 423 'cwx=', cwx, & 424 'ch=', ch, 'nx=', nx, 'ny=', ny 425 ENDIF 426 CALL local_stop 427 ENDIF 428 ELSEIF ( canyon_width_y /= 9999999.9 ) THEN 429 IF ( ( cys < 1 ) .OR. ( cyn > ny-1 ) .OR. ( cwy < 3 ) .OR. & 430 ( ch < 3 ) ) THEN 431 IF ( myid == 0 ) THEN 432 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 433 PRINT*, ' cys=', cys, 'cyn=', cyn, & 434 'cwy=', cwy, & 435 'ch=', ch, 'nx=', nx, 'ny=', ny 436 ENDIF 437 CALL local_stop 438 ENDIF 439 ENDIF 440 IF ( canyon_width_x /= 9999999.9 .AND. canyon_width_y /= 9999999.9 ) & 441 THEN 442 IF ( myid == 0 ) THEN 443 PRINT*, '+++ user_init_grid: inconsistent canyon parameters:' 444 PRINT*, ' street canyon can only be oriented' 445 PRINT*, ' either in x- or in y-direction' 446 ENDIF 447 CALL local_stop 448 ENDIF 449 450 nzb_local = ch 451 IF ( canyon_width_x /= 9999999.9 ) THEN 452 nzb_local(:,cxl+1:cxr-1) = 0 453 ELSEIF ( canyon_width_y /= 9999999.9 ) THEN 454 nzb_local(cys+1:cyn-1,:) = 0 455 ENDIF 456 381 457 CASE ( 'read_from_file' ) 382 458 ! -
palm/trunk/SOURCE/modules.f90
r237 r240 6 6 ! ----------------- 7 7 ! +cluster_size in dvrp_variables 8 ! +dp_external, dp_level_b, dp_level_ind_b, dp_smooth, dp_smooth_factor, dpdxy, 9 ! in control_parameters 10 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 11 ! canyon_wall_south in control_parameters 8 12 ! 9 13 ! Former revisions: … … 313 317 dosp_time_count = 0, dots_time_count = 0, & 314 318 do2d_xy_n = 0, do2d_xz_n = 0, do2d_yz_n = 0, do3d_avs_n = 0, & 319 dp_level_ind_b = 0, & 315 320 dvrp_filecount = 0, dz_stretch_level_index, gamma_mg, & 316 321 grid_level, ibc_e_b, ibc_p_b, ibc_p_t, ibc_pt_b, ibc_pt_t, & … … 323 328 nsor_ini = 100, n_sor, normalizing_region = 0, & 324 329 nz_do1d, nz_do3d = -9999, outflow_damping_width = -1, & 325 p rt_time_count = 0, recycling_plane, runnr = 0, &330 pch_index = 0, prt_time_count = 0, recycling_plane, runnr = 0, & 326 331 skip_do_avs = 0, terminate_coupled = 0, & 327 332 terminate_coupled_remote = 0, timestep_count = 0 … … 332 337 do3d_no(0:1) = 0, do3d_time_count(0:1), & 333 338 lad_vertical_gradient_level_ind(10) = -9999, & 334 pch_index = 0, &335 339 pt_vertical_gradient_level_ind(10) = -9999, & 336 340 q_vertical_gradient_level_ind(10) = -9999, & … … 354 358 data_output_2d_on_each_pe = .TRUE., do2d_at_begin = .FALSE., & 355 359 do3d_at_begin = .FALSE., do3d_compress = .FALSE., & 356 do_sum = .FALSE., dt_changed = .FALSE., dt_fixed = .FALSE., & 360 do_sum = .FALSE., dp_external = .FALSE., dp_smooth = .FALSE., & 361 dt_changed = .FALSE., dt_fixed = .FALSE., & 357 362 disturbance_created = .FALSE., & 358 363 first_call_advec_particles = .TRUE., & … … 388 393 building_height = 50.0, building_length_x = 50.0, & 389 394 building_length_y = 50.0, building_wall_left = 9999999.9, & 390 building_wall_south = 9999999.9, cthf = 0.0, cfl_factor = -1.0, & 395 building_wall_south = 9999999.9, canyon_height = 50.0, & 396 canyon_width_x = 9999999.9, canyon_width_y = 9999999.9, & 397 canyon_wall_left = 9999999.9, canyon_wall_south = 9999999.9, & 398 cthf = 0.0, cfl_factor = -1.0, & 391 399 cos_alpha_surface, disturbance_amplitude = 0.25, & 392 400 disturbance_energy_limit = 0.01, & 393 401 disturbance_level_b = -9999999.9, & 394 402 disturbance_level_t = -9999999.9, & 395 d rag_coefficient = 0.0, &403 dp_level_b = 0.0, drag_coefficient = 0.0, & 396 404 dt = -1.0, dt_averaging_input = 0.0, & 397 405 dt_averaging_input_pr = 9999999.9, dt_coupling = 9999999.9, & … … 452 460 453 461 REAL :: do2d_xy_last_time(0:1) = -1.0, do2d_xz_last_time(0:1) = -1.0, & 454 do2d_yz_last_time(0:1) = -1.0, &462 do2d_yz_last_time(0:1) = -1.0, dpdxy(1:2) = 0.0, & 455 463 lad_vertical_gradient(10) = 0.0, & 456 464 lad_vertical_gradient_level(10) = -9999999.9, & … … 472 480 wall_humidityflux(0:4) = 0.0, wall_qflux(0:4) = 0.0, & 473 481 wall_salinityflux(0:4) = 0.0, wall_scalarflux(0:4) = 0.0 482 483 REAL, DIMENSION(:), ALLOCATABLE :: dp_smooth_factor 474 484 475 485 -
palm/trunk/SOURCE/parin.f90
r199 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 7 ! canyon_wall_south, dp_external, dp_level_b, dp_smooth, dpdxy in inipar 7 8 ! 8 9 ! Former revisions: … … 84 85 bc_q_t,bc_s_b, bc_s_t, bc_sa_t, bc_uv_b, bc_uv_t, & 85 86 bottom_salinityflux, building_height, building_length_x, & 86 building_length_y, building_wall_left, & 87 building_wall_south, canopy_mode, cloud_droplets, cloud_physics, & 88 conserve_volume_flow, cthf, cut_spline_overshoot, damp_level_1d, & 89 dissipation_1d, drag_coefficient, dt, dt_pr_1d, & 87 building_length_y, building_wall_left, building_wall_south, & 88 canopy_mode, canyon_height, canyon_width_x, canyon_width_y, & 89 canyon_wall_left, canyon_wall_south, cloud_droplets, & 90 cloud_physics, conserve_volume_flow, cthf, cut_spline_overshoot, & 91 damp_level_1d, dissipation_1d, dp_external, dp_level_b, & 92 dp_smooth, dpdxy, drag_coefficient, dt, dt_pr_1d, & 90 93 dt_run_control_1d, dx, dy, dz, dz_max, dz_stretch_factor, & 91 94 dz_stretch_level, e_init, e_min, end_time_1d, fft_method, & -
palm/trunk/SOURCE/prognostic_equations.f90
r198 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! external pressure gradient 7 7 ! 8 8 ! Former revisions: … … 173 173 !-- Drag by plant canopy 174 174 IF ( plant_canopy ) CALL plant_canopy_model( i, j, 1 ) 175 176 ! 177 !-- External pressure gradient 178 IF ( dp_external ) THEN 179 DO k = dp_level_ind_b+1, nzt 180 tend(k,j,i) = tend(k,j,i) - dpdxy(1) * dp_smooth_factor(k) 181 ENDDO 182 ENDIF 183 175 184 CALL user_actions( i, j, 'u-tendency' ) 176 185 … … 244 253 !-- Drag by plant canopy 245 254 IF ( plant_canopy ) CALL plant_canopy_model( i, j, 2 ) 255 256 ! 257 !-- External pressure gradient 258 IF ( dp_external ) THEN 259 DO k = dp_level_ind_b+1, nzt 260 tend(k,j,i) = tend(k,j,i) - dpdxy(2) * dp_smooth_factor(k) 261 ENDDO 262 ENDIF 246 263 247 264 CALL user_actions( i, j, 'v-tendency' ) … … 878 895 IF ( plant_canopy ) CALL plant_canopy_model( i, j, 1 ) 879 896 897 ! 898 !-- External pressure gradient 899 IF ( dp_external ) THEN 900 DO k = dp_level_ind_b+1, nzt 901 tend(k,j,i) = tend(k,j,i) - dpdxy(1) * dp_smooth_factor(k) 902 ENDDO 903 ENDIF 904 880 905 CALL user_actions( i, j, 'u-tendency' ) 881 906 … … 931 956 !-- Drag by plant canopy 932 957 IF ( plant_canopy ) CALL plant_canopy_model( i, j, 2 ) 958 959 ! 960 !-- External pressure gradient 961 IF ( dp_external ) THEN 962 DO k = dp_level_ind_b+1, nzt 963 tend(k,j,i) = tend(k,j,i) - dpdxy(2) * dp_smooth_factor(k) 964 ENDDO 965 ENDIF 933 966 934 967 CALL user_actions( i, j, 'v-tendency' ) … … 1347 1380 IF ( plant_canopy ) CALL plant_canopy_model( 1 ) 1348 1381 1382 ! 1383 !-- External pressure gradient 1384 IF ( dp_external ) THEN 1385 DO i = nxlu, nxr 1386 DO j = nys, nyn 1387 DO k = dp_level_ind_b+1, nzt 1388 tend(k,j,i) = tend(k,j,i) - dpdxy(1) * dp_smooth_factor(k) 1389 ENDDO 1390 ENDDO 1391 ENDDO 1392 ENDIF 1393 1349 1394 CALL user_actions( 'u-tendency' ) 1350 1395 … … 1422 1467 !-- Drag by plant canopy 1423 1468 IF ( plant_canopy ) CALL plant_canopy_model( 2 ) 1469 1470 ! 1471 !-- External pressure gradient 1472 IF ( dp_external ) THEN 1473 DO i = nxl, nxr 1474 DO j = nysv, nyn 1475 DO k = dp_level_ind_b+1, nzt 1476 tend(k,j,i) = tend(k,j,i) - dpdxy(2) * dp_smooth_factor(k) 1477 ENDDO 1478 ENDDO 1479 ENDDO 1480 ENDIF 1481 1424 1482 CALL user_actions( 'v-tendency' ) 1425 1483 -
palm/trunk/SOURCE/read_var_list.f90
r226 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 7 ! canyon_wall_south, dp_external, dp_level_b, dp_smooth, dpdxy 7 8 ! 8 9 ! Former revisions: … … 80 81 !-- Make version number check first 81 82 READ ( 13 ) version_on_file 82 binary_version = '3. 2'83 binary_version = '3.3' 83 84 IF ( TRIM( version_on_file ) /= TRIM( binary_version ) ) THEN 84 85 IF ( myid == 0 ) THEN … … 223 224 CASE ( 'canopy_mode' ) 224 225 READ ( 13 ) canopy_mode 226 CASE ( 'canyon_height' ) 227 READ ( 13 ) canyon_height 228 CASE ( 'canyon_width_x' ) 229 READ ( 13 ) canyon_width_x 230 CASE ( 'canyon_width_y' ) 231 READ ( 13 ) canyon_width_y 232 CASE ( 'canyon_wall_left' ) 233 READ ( 13 ) canyon_wall_left 234 CASE ( 'canyon_wall_south' ) 235 READ ( 13 ) canyon_wall_south 225 236 CASE ( 'cloud_droplets' ) 226 237 READ ( 13 ) cloud_droplets … … 239 250 CASE ( 'dissipation_1d' ) 240 251 READ ( 13 ) dissipation_1d 252 CASE ( 'dp_external' ) 253 READ ( 13 ) dp_external 254 CASE ( 'dp_level_b' ) 255 READ ( 13 ) dp_level_b 256 CASE ( 'dp_smooth' ) 257 READ ( 13 ) dp_smooth 258 CASE ( 'dpdxy' ) 259 READ ( 13 ) dpdxy 241 260 CASE ( 'drag_coefficient' ) 242 261 READ ( 13 ) drag_coefficient -
palm/trunk/SOURCE/user_check_parameters.f90
r226 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! add default topography_grid_convention for the new topography case 7 ! 'single_street_canyon' 7 8 ! 8 9 ! Former revisions: … … 30 31 IF ( TRIM( topography_grid_convention ) == ' ' ) THEN 31 32 IF ( TRIM( topography ) /= 'single_building' .AND. & 33 TRIM( topography ) /= 'single_street_canyon' .AND. & 32 34 TRIM( topography ) /= 'read_from_file' ) THEN 33 35 !-- The default value is not applicable here, because it is only valid 34 36 !-- for the two standard cases 'single_building' and 'read_from_file' 35 37 !-- defined in init_grid. 36 message_string = 'The value for "topography_grid_convention" '// & 37 'is not set. Its default value is & only valid for '// & 38 '"topography" = ''single_building'' or ''read_from_file''.'//& 38 WRITE( message_string, * ) & 39 'The value for "topography_grid_convention" ', & 40 'is not set. Its default value is & only valid for ', & 41 '"topography" = ''single_building'', ', & 42 '''single_street_canyon'' & or ''read_from_file''.', & 39 43 ' & Choose ''cell_edge'' or ''cell_center''.' 40 44 CALL message( 'user_check_parameters', 'UI0001', 1, 2, 0, 6, 0 ) … … 42 46 !-- The default value is applicable here. 43 47 !-- Set convention according to topography. 44 IF ( TRIM( topography ) == 'single_building' ) THEN 48 IF ( TRIM( topography ) == 'single_building' .OR. & 49 TRIM( topography ) == 'single_street_canyon' ) THEN 45 50 topography_grid_convention = 'cell_edge' 46 51 ELSEIF ( TRIM( topography ) == 'read_from_file' ) THEN … … 50 55 ELSEIF ( TRIM( topography_grid_convention ) /= 'cell_edge' .AND. & 51 56 TRIM( topography_grid_convention ) /= 'cell_center' ) THEN 52 message_string = 'The value for "topography_grid_convention" is '// & 57 WRITE( message_string, * ) & 58 'The value for "topography_grid_convention" is ', & 53 59 'not recognized. & Choose ''cell_edge'' or ''cell_center''.' 54 60 CALL message( 'user_check_parameters', 'UI0002', 1, 2, 0, 6, 0 ) -
palm/trunk/SOURCE/user_header.f90
r226 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! new topography case 'single_street_canyon' 7 7 ! 8 8 ! Former revisions: … … 49 49 WRITE ( io, 300 ) 50 50 IF ( TRIM( topography_grid_convention ) == ' ' ) THEN 51 IF ( TRIM( topography ) == 'single_building' ) THEN 51 IF ( TRIM( topography ) == 'single_building' .OR. & 52 TRIM( topography ) == 'single_street_canyon' ) THEN 52 53 WRITE ( io, 301 ) 53 54 ELSEIF ( TRIM( topography ) == 'read_from_file' ) THEN -
palm/trunk/SOURCE/user_init_grid.f90
r226 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! add 'single_street_canyon' as standard topography case 7 7 ! 8 8 ! Former revisions: … … 39 39 SELECT CASE ( TRIM( topography ) ) 40 40 41 CASE ( 'flat', 'single_building' )41 CASE ( 'flat', 'single_building', 'single_street_canyon' ) 42 42 ! 43 43 !-- Not allowed here since these are the standard cases used in init_grid. -
palm/trunk/SOURCE/write_var_list.f90
r198 r240 4 4 ! Actual revisions: 5 5 ! ----------------- 6 ! 6 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 7 ! canyon_wall_south, dp_external, dp_level_b, dp_smooth, dpdxy 7 8 ! 8 9 ! Former revisions: … … 70 71 71 72 72 binary_version = '3. 2'73 binary_version = '3.3' 73 74 74 75 WRITE ( 14 ) binary_version … … 151 152 WRITE ( 14 ) 'canopy_mode ' 152 153 WRITE ( 14 ) canopy_mode 154 WRITE ( 14 ) 'canyon_height ' 155 WRITE ( 14 ) canyon_height 156 WRITE ( 14 ) 'canyon_width_x ' 157 WRITE ( 14 ) canyon_width_x 158 WRITE ( 14 ) 'canyon_width_y ' 159 WRITE ( 14 ) canyon_width_y 160 WRITE ( 14 ) 'canyon_wall_left ' 161 WRITE ( 14 ) canyon_wall_left 162 WRITE ( 14 ) 'canyon_wall_south ' 163 WRITE ( 14 ) canyon_wall_south 153 164 WRITE ( 14 ) 'cloud_droplets ' 154 165 WRITE ( 14 ) cloud_droplets … … 167 178 WRITE ( 14 ) 'dissipation_1d ' 168 179 WRITE ( 14 ) dissipation_1d 180 WRITE ( 14 ) 'dp_external ' 181 WRITE ( 14 ) dp_external 182 WRITE ( 14 ) 'dp_level_b ' 183 WRITE ( 14 ) dp_level_b 184 WRITE ( 14 ) 'dp_smooth ' 185 WRITE ( 14 ) dp_smooth 186 WRITE ( 14 ) 'dpdxy ' 187 WRITE ( 14 ) dpdxy 169 188 WRITE ( 14 ) 'drag_coefficient ' 170 189 WRITE ( 14 ) drag_coefficient
Note: See TracChangeset
for help on using the changeset viewer.