1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
---|
2 | <html><head> |
---|
3 | |
---|
4 | <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252"> |
---|
5 | |
---|
6 | |
---|
7 | |
---|
8 | <title>PALM chapter 3.8</title><meta name="GENERATOR" content="StarOffice 7 (Win32)"> |
---|
9 | |
---|
10 | <meta name="AUTHOR" content="Siegfried Raasch"> |
---|
11 | |
---|
12 | <meta name="CREATED" content="20040809;13460943"> |
---|
13 | |
---|
14 | <meta name="CHANGED" content="20041112;15085727"> |
---|
15 | |
---|
16 | <meta name="KEYWORDS" content="parallel LES model"> |
---|
17 | |
---|
18 | <style> |
---|
19 | <!-- |
---|
20 | @page { size: 21cm 29.7cm } |
---|
21 | --> |
---|
22 | </style></head> |
---|
23 | |
---|
24 | <body style="direction: ltr;" lang="en-US"> |
---|
25 | |
---|
26 | <h3 style="line-height: 100%;">3.8 Coupled model runs</h3> |
---|
27 | |
---|
28 | <p style="line-height: 100%;">Starting from version 3.4 |
---|
29 | PALM allows coupled atmosphere-ocean model runs. By analogy with the |
---|
30 | modular structure of PALM, <span style="font-weight: bold;">mrun</span> |
---|
31 | starts the coupled model as two concurrent executables, the atmosphere |
---|
32 | version and the ocean version of PALM.</p> |
---|
33 | |
---|
34 | <p style="line-height: 100%;">Currently, the coupler |
---|
35 | is at an experimental stage using a simple MPI2 intercommunicator that |
---|
36 | matches the atmosphere and ocean processors one-to-one. This approach |
---|
37 | has limited flexibility and performance, because it requires |
---|
38 | identical horizontal numerical grids and it uses the same number of |
---|
39 | atmosphere and ocean processors, which does not necessarily guarrantee |
---|
40 | a good load balancing.</p> |
---|
41 | |
---|
42 | <p style="line-height: 100%;">The coupler establishes a |
---|
43 | one-way interaction between the |
---|
44 | atmosphere and the ocean. The atmosphere sends its bottom surface |
---|
45 | fluxes |
---|
46 | (temperature, humidity, momentum) to the ocean. The ocean sends its top |
---|
47 | surface temperature to the atmosphere. The atmosphere assumes |
---|
48 | saturation of humidity and zero wind speed at its bottom surface. For |
---|
49 | calculations with <a href="chapter_4.1.html#humidity">humidity</a> |
---|
50 | = .T. the atmospheric evaporation leads to a salinity flux in the ocean |
---|
51 | (see e.g. Steinhorn 1991, JPO 21, p. 1681).</p> |
---|
52 | |
---|
53 | <p style="line-height: 100%;">The full MPI-2 |
---|
54 | standard must be available in order to use the coupling, and it must be |
---|
55 | activated by adding the preprocessor directive <tt><font style="font-size: 10pt;" size="2">-D__mpi2</font></tt> |
---|
56 | to <tt><font style="font-size: 10pt;" size="2">cpp_options</font></tt> |
---|
57 | in the .mrun.config configuration file. (Note: MPI-2 is |
---|
58 | not available for the IBM-Regatta systems.) To start a |
---|
59 | coupled model run, |
---|
60 | this must be requested with the <b>mrun</b> option <tt><font style="font-size: 10pt;" size="2">-Y</font>.</tt> |
---|
61 | This tells <span style="font-weight: bold;">mrun</span> |
---|
62 | to start two PALM executables. Coupled runs are only possible in |
---|
63 | parallel mode, which means that the <b>mrun</b> option <tt><font style="font-size: 10pt;" size="2">-K parallel</font></tt> |
---|
64 | must also be set. The <b>mrun</b> call |
---|
65 | for coupled runs has to include the following coupling-related options: |
---|
66 | </p> |
---|
67 | |
---|
68 | <ul> |
---|
69 | |
---|
70 | <p style="line-height: 100%;"><tt><font style="font-size: 10pt;" size="2">mrun </font></tt><font style="font-size: 10pt;" size="2">...</font><tt><font style="font-size: 10pt;" size="2"> -K parallel -r |
---|
71 | “d3# d3o# </font></tt><font style="font-size: 10pt;" size="2">...</font><tt><font style="font-size: 10pt;" size="2">”</font></tt><tt><font style="font-size: 10pt;" size="2"> </font></tt><tt><font style="font-size: 10pt;" size="2">-X </font></tt><font style="font-size: 10pt;" size="2">...</font><tt><font style="font-size: 10pt;" size="2"> -Y</font></tt><tt>.</tt></p> |
---|
72 | |
---|
73 | </ul> |
---|
74 | |
---|
75 | <p style="line-height: 100%;">The <tt><font style="font-size: 10pt;" size="2">-X </font></tt><font style="font-size: 10pt;" size="2">...</font><tt><font style="font-size: 10pt;" size="2"> </font></tt>option |
---|
76 | here specifies the total number of processors assigned to the coupled |
---|
77 | model. Currently, half of them are assigned to each of the two coupled |
---|
78 | executables. Therefore it is advisable to specify an even number |
---|
79 | with <tt><font style="font-size: 10pt;" size="2">-X </font></tt><font style="font-size: 10pt;" size="2">...</font><tt> |
---|
80 | </tt>. Otherwise, in case of an odd total number of processors, |
---|
81 | one processor remains idle.</p> |
---|
82 | |
---|
83 | <p style="line-height: 100%;">Each coupled executable has |
---|
84 | its own, unique set of I/O filenames; <a href="chapter_3.4.html#coupled">chapter 3.4</a> gives |
---|
85 | information on file name conventions of coupled runs. The configuration |
---|
86 | file .mrun.config has to be extended for coupled runs. It is |
---|
87 | recommended to duplicate existing file connection identifiers such as |
---|
88 | "d3#", "pr#" etc. using the coupled ocean filenames accordingly. For |
---|
89 | example, the example of the previous chapters could be |
---|
90 | duplicated as follows:</p> |
---|
91 | |
---|
92 | <pre style="line-height: 100%;"><a href="chapter_3.4.html#PARIN"><font style="font-size: 10pt;" size="2">PARIN</font></a><font style="font-size: 10pt;" size="2"> in:job:npe d3# ~/palm/current_version/JOBS/$fname/INPUT _p3d</font><br><font style="font-size: 10pt;" size="2">PARIN in:job:npe d3f ~/palm/current_version/JOBS/$fname/INPUT _p3df</font><br><a href="chapter_3.4.html#BININ"><font style="font-size: 10pt;" size="2">BININ</font></a><font style="font-size: 10pt;" size="2"> in:loc d3f ~/palm/current_version/JOBS/$fname/OUTPUT _d3d</font><br><font style="font-size: 10pt;" size="2">#</font><br><a href="chapter_3.4.html#BINOUT"><font style="font-size: 10pt;" size="2">BINOUT</font></a><font style="font-size: 10pt;" size="2"> out:loc restart ~/palm/current_version/JOBS/$fname/OUTPUT _d3d<br>#</font><br><a href="chapter_3.4.html#RUN_CONTROL"><font style="font-size: 10pt;" size="2">RUN_CONTROL</font></a><font style="font-size: 10pt;" size="2"> out:loc:tr d3# ~/palm/current_version/JOBS/$fname/MONITORING _rc</font><br><a href="chapter_3.4.html#HEADER"><font style="font-size: 10pt;" size="2">HEADER</font></a><font style="font-size: 10pt;" size="2"> out:loc:tr d3# ~/palm/current_version/JOBS/$fname/MONITORING _header</font><br><a href="chapter_3.4.html#PLOT1D_PAR"><font style="font-size: 10pt;" size="2">PLOT1D_PAR</font></a><font style="font-size: 10pt;" size="2"> out:loc:tr pr# ~/palm/current_version/JOBS/$fname/OUTPUT _pr_par</font><br><a href="chapter_3.4.html#PLOT1D_DATA"><font style="font-size: 10pt;" size="2">PLOT1D_DATA</font></a><font style="font-size: 10pt;" size="2"> out:loc:tr pr# ~/palm/current_version/JOBS/$fname/OUTPUT _pr_in<br>#<br></font><font style="font-size: 10pt;" size="2">PARIN</font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">_O</span> in:job:npe d3<span style="font-weight: bold;">o</span># ~/palm/current_version/JOBS/$fname/INPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">p3d</font><br><font style="font-size: 10pt;" size="2">PARIN<span style="font-weight: bold;">_O</span> in:job:npe d3<span style="font-weight: bold;">o</span>f ~/palm/current_version/JOBS/$fname/INPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">p3df</font><br><font style="font-size: 10pt;" size="2">BININ</font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">_O</span> in:loc d3<span style="font-weight: bold;">o</span>f ~/palm/current_version/JOBS/$fname/OUTPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">d3d</font><br><font style="font-size: 10pt;" size="2">#</font><br><font style="font-size: 10pt;" size="2">BINOUT</font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">_O</span> out:loc restart ~/palm/current_version/JOBS/$fname/OUTPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">d3d</font><br><font style="font-size: 10pt;" size="2">#</font><br><font style="font-size: 10pt;" size="2">RUN_CONTROL<span style="font-weight: bold;">_O</span></font><font style="font-size: 10pt;" size="2"> out:loc:tr d3<span style="font-weight: bold;">o</span># ~/palm/current_version/JOBS/$fname/MONITORING <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">rc</font><br><font style="font-size: 10pt;" size="2">HEADER</font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">_O</span> out:loc:tr d3<span style="font-weight: bold;">o</span># ~/palm/current_version/JOBS/$fname/MONITORING <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">header</font><br><font style="font-size: 10pt;" size="2">PLOT1D_PAR<span style="font-weight: bold;">_O</span></font><font style="font-size: 10pt;" size="2"> out:loc:tr pr<span style="font-weight: bold;">o</span># ~/palm/current_version/JOBS/$fname/OUTPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">pr_par</font><br><font style="font-size: 10pt;" size="2">PLOT1D_DATA</font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">_O</span> out:loc:tr pr<span style="font-weight: bold;">o</span># ~/palm/current_version/JOBS/$fname/OUTPUT <span style="font-weight: bold;">_</span></font><font style="font-size: 10pt;" size="2"><span style="font-weight: bold;">o</span>_</font><font style="font-size: 10pt;" size="2">pr_in</font><br></pre> |
---|
93 | |
---|
94 | <p style="line-height: 100%;">The coupled ocean model |
---|
95 | filenames in the first column (e.g.<font style="font-size: 10pt;" size="2"><span style="font-family: mon;"> </span><a href="chapter_3.4.html#PARIN">PARIN_O</a></font>) must |
---|
96 | be specified as given in <a href="chapter_3.4.html#coupled">chapter |
---|
97 | 3.4</a>; the file connection identifiers (e.g. <font style="font-size: 10pt;" size="2">d3o#</font>) |
---|
98 | and the file name extension (e.g. <font style="font-size: 10pt;" size="2"><span style="font-weight: bold;"><span style="font-family: mon;"></span></span>_</font><font style="font-size: 10pt;" size="2">o_</font><font style="font-size: 10pt;" size="2">p3d</font>) |
---|
99 | may be changed at the user's discretion.</p> |
---|
100 | |
---|
101 | <p style="line-height: 100%;">The coupler requires the |
---|
102 | following parameters to be equal in both <a href="chapter_3.4.html#PARIN"><font style="font-size: 10pt;" size="2"><span style="font-family: mon;"></span>PARIN</font></a> |
---|
103 | and <a href="chapter_3.4.html#PARIN"><font style="font-size: 10pt;" size="2">PARIN_O</font></a>: |
---|
104 | <a href="chapter_4.1.html#dx">dx</a>, <a href="chapter_4.1.html#dy">dy</a>, <a href="chapter_4.1.html#nx">nx</a>, <a href="chapter_4.1.html#ny">ny</a>, <a href="chapter_4.2.html#dt_coupling">dt_coupling</a>, <a href="chapter_4.2.html#end_time">end_time</a>, <a href="chapter_4.2.html#restart_time">restart_time</a>, |
---|
105 | <a href="chapter_4.2.html#dt_restart">dt_restart</a>. |
---|
106 | In the coupled atmosphere executable, <a href="chapter_4.2.html#bc_pt_b">bc_pt_b</a> is |
---|
107 | internally set and does not need to be prescribed; in the coupled ocean |
---|
108 | executable, <a href="chapter_4.2.html#bc_uv_t">bc_uv_t</a> is |
---|
109 | internally set ('neumann') and does not need to be prescribed. The |
---|
110 | coupled ocean parameter file <a href="chapter_3.4.html#PARIN"><font style="font-size: 10pt;" size="2">PARIN_O</font></a> |
---|
111 | should include dummy REAL value assignments to both <a href="chapter_4.1.html#top_momentumflux_u">top_momentumflux_u</a> |
---|
112 | and <a href="chapter_4.1.html#top_momentumflux_v">top_momentumflux_v</a> |
---|
113 | (e.g. top_momentumflux_u = 0.0, top_momentumflux_v = 0.0) to |
---|
114 | enable the momentum flux coupling.</p> |
---|
115 | |
---|
116 | <p style="line-height: 100%;">The coupling interval <a href="chapter_4.2.html#dt_coupling">dt_coupling</a> |
---|
117 | must be explicity set. In order to ensure synchronous coupling |
---|
118 | throughout the simulation, <a href="chapter_4.2.html#dt_coupling">dt_coupling</a> |
---|
119 | should be chosen larger than |
---|
120 | <a href="chapter_4.2.html#dt_max">dt_max</a>.</p> |
---|
121 | |
---|
122 | <hr> |
---|
123 | <p style="line-height: 100%;"><br> |
---|
124 | |
---|
125 | <font color="#000080"><font color="#000080"><a href="chapter_3.7.html"><font color="#000080"><img style="border: 2px solid ; width: 32px; height: 32px;" alt="" src="left.gif" name="Grafik1"></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.9.html"><font color="#000080"><img style="border: 2px solid ; width: 32px; height: 32px;" alt="" src="right.gif" name="Grafik3"></font></a></font></font></p> |
---|
126 | |
---|
127 | <p style="line-height: 100%;"><i>Last |
---|
128 | change: </i> $Id: chapter_3.8.html 197 2008-09-16 15:29:03Z weinreis $</p> |
---|
129 | |
---|
130 | </body></html> |
---|