source: palm/trunk/TUTORIAL/SOURCE/non_cyclic_boundary_conditions.tex @ 1531

Last change on this file since 1531 was 1531, checked in by keck, 7 years ago

several updates in the tutorial

  • Property svn:keywords set to Id
File size: 20.0 KB
Line 
1% $Id: non_cyclic_boundary_conditions.tex 1531 2015-01-26 13:58:29Z keck $
2\input{header_tmp.tex}
3%\input{header_lectures.tex}
4
5\usepackage[utf8]{inputenc}
6\usepackage{ngerman}
7\usepackage{pgf}
8\usepackage{subfigure}
9\usepackage{units}
10\usepackage{multimedia}
11\usepackage{hyperref}
12\newcommand{\event}[1]{\newcommand{\eventname}{#1}}
13\usepackage{xmpmulti}
14\usepackage{tikz}
15\usetikzlibrary{shapes,arrows,positioning}
16\def\Tiny{\fontsize{4pt}{4pt}\selectfont}
17
18%---------- neue Pakete
19\usepackage{amsmath}
20\usepackage{amssymb}
21\usepackage{multicol}
22\usepackage{pdfcomment}
23
24\institute{Institute of Meteorology and Climatology, Leibniz UniversitÀt Hannover}
25\selectlanguage{english}
26\date{last update: \today}
27\event{PALM Seminar}
28\setbeamertemplate{navigation symbols}{}
29
30\setbeamertemplate{footline}
31  {%
32    \begin{beamercolorbox}[rightskip=-0.1cm]&
33     {\includegraphics[height=0.65cm]{imuk_logo.pdf}\hfill \includegraphics[height=0.65cm]{luh_logo.pdf}}
34    \end{beamercolorbox}
35    \begin{beamercolorbox}[ht=2.5ex,dp=1.125ex,%
36      leftskip=.3cm,rightskip=0.3cm plus1fil]{title in head/foot}%
37      {\leavevmode{\usebeamerfont{author in head/foot}\insertshortauthor} \hfill \eventname \hfill \insertframenumber \; / \inserttotalframenumber}%
38    \end{beamercolorbox}%
39%    \begin{beamercolorbox}[colsep=1.5pt]{lower separation line foot}%
40%    \end{beamercolorbox}
41  }%\logo{\includegraphics[width=0.3\textwidth]{luhimuk_logo.eps}}
42
43\title[PALM - Using Non-Cyclic Boundary Conditions]{PALM - Using Non-Cyclic Boundary Conditions}
44\author{PALM group}
45
46% Notes:
47% jede subsection bekommt einen punkt im menu (vertikal ausgerichtet.
48% jeder frame in einer subsection bekommt einen punkt (horizontal ausgerichtet)
49\begin{document}
50
51% Folie 1
52\begin{frame}
53\titlepage
54\end{frame}
55
56% Folie 2
57\begin{frame}
58   \frametitle{Cyclic Horizontal Boundary Conditions}
59   In many cases, LES models are using cyclic horizontal boundary conditions.
60   \par\bigskip
61   \textbf{Why?}
62   \par\bigskip
63   \begin{itemize}
64      \item<2->{LES requires that the main energy containing eddies are resolved by the model.}
65      \item<3->{With cyclic boundary conditions, turbulence can freely develop and is not effected by the side walls (because there are no walls!).}
66      \item<4->{Non-cyclic boundary conditions give problems:}
67      \begin{itemize}
68         \par\smallskip
69         \item<5->{If Dirichlet conditions (fixed vertical profiles) are used at the inflow, the inflow is laminar and some (significant) domain space is needed in order to develop                         turbulence.}
70         \par\smallskip
71         \item<6->{At the outflow, a boundary condition is required which allows the eddies to freely leave the domain.}
72      \end{itemize}
73   \end{itemize}   
74\end{frame}
75
76\section{Motivation}
77\subsection{Motivation}
78
79%Folie 3
80\begin{frame}
81   \frametitle{Motivation for Non-Cyclic Boundary Conditions}
82   \footnotesize
83   The main motivation for non-cyclic boundary conditions are studies of isolated phenomena.
84   \begin{tabbing}
85   \uncover<2->{\textbf{Example:} \= Turbulence generated by a single obstacle. \\}   
86                    \\
87                    \uncover<6->{ \> Cyclic boundary conditions along x would allow the generated turbulence\\
88                     \>  to enter the domain again, and so finally to modify the turbulence \\
89                     \>  on the leeward side of the building. \\ }     
90                     \\ 
91                     \uncover<9>{ \> This wouldn't be a simulation of a single building, but of an\\
92                     \> infinite row of buildings!   }
93   \end{tabbing}
94   \begin{center}
95   \includegraphics<3|handout:0>[width=0.7\textwidth]{non_cyclic_figures/motivation_non_cyclic_1.png}
96   \includegraphics<4|handout:0>[width=0.7\textwidth]{non_cyclic_figures/motivation_non_cyclic_2.png}
97   \includegraphics<5-6|handout:0>[width=0.7\textwidth]{non_cyclic_figures/motivation_non_cyclic_3.png}
98   \includegraphics<7|handout:0>[width=0.7\textwidth]{non_cyclic_figures/motivation_non_cyclic_4.png}
99   \uncover<8-|handout:1>{\begin{center} \includegraphics[width=0.7\textwidth]{non_cyclic_figures/motivation_non_cyclic_5.png} \end{center}}
100   \end{center}
101   \normalsize
102\end{frame}
103
104% Folie 4
105\begin{frame}
106   \frametitle{Implications of Non-Cyclic Boundary Conditions}
107   \footnotesize
108   \onslide<2->{Using Dirichlet-conditions (e.g u(z) = const.), there is no turbulence at the inflow. \quad $\rightarrow$ the flow is laminar \quad $\rightarrow$ LES approach fails!}
109   \par\bigskip
110   \includegraphics<3|handout:0>[width=0.8\textwidth]{non_cyclic_figures/implications_non_cyclic_1.png}
111   \includegraphics<4|handout:0>[width=0.8\textwidth]{non_cyclic_figures/implications_non_cyclic_2.png}
112   \uncover<5-|handout:1>{\includegraphics[width=0.8\textwidth]{non_cyclic_figures/implications_non_cyclic_3.png}}
113   \par\bigskip
114   \onslide<6->{Flow internal turbulence may develop, but this may require a very long model domain.}
115   \par\bigskip
116   \includegraphics<7|handout:0>[width=\textwidth]{non_cyclic_figures/implications_non_cyclic_4.png}
117   \includegraphics<8|handout:0>[width=\textwidth]{non_cyclic_figures/implications_non_cyclic_5.png}
118   \uncover<9-|handout:1>{\includegraphics[width=\textwidth]{non_cyclic_figures/implications_non_cyclic_6.png}}
119   \onslide<10->{There is a need to supply turbulence information at the inflow.}
120\end{frame}
121
122\section{How to Create a Turbulent Inflow}
123\subsection{How to Create a Turbulent Inflow}
124
125% Folie 5
126\begin{frame}
127   \frametitle{How to Create a Turbulent Inflow (I)}
128   Two methods:
129   \begin{itemize}
130      \item<2->{by a statistical model}
131      \item<3->{by recycling-method  (Lund et al., 1998)}
132   \end{itemize}
133   \includegraphics<4|handout:0>[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_1_neu.png}
134   \includegraphics<5|handout:0>[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_2_neu.png}
135   \includegraphics<6|handout:0>[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_3_neu.png}
136   \includegraphics<7|handout:0>[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_4_neu.png}
137   \includegraphics<8|handout:0>[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_5_neu.png}
138   \uncover<9-|handout:1>{\includegraphics[width=\textwidth]{non_cyclic_figures/create_turbulent_inflow_1/create_turbulent_inflow_6.png}}
139   \par\bigskip
140   \uncover<10>{How do we get the initial turbulence in the recycle area? \\
141   If there is no turbulence, there is nothing to recycle!}
142\end{frame}
143
144%Folie 6
145\begin{frame}
146   \frametitle{How to Create a Turbulent Inflow (II)}
147   \footnotesize
148   Initial  turbulence is created by a precursor run with cyclic boundary conditions and much smaller domain size than used for the main run.
149   \tikzstyle{line} = [draw, blue, thick, dashed, -latex']   
150   \begin{tikzpicture}     
151      \uncover<1>{\node(picture) {\includegraphics[width=0.4\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_1.png}};}
152      \uncover<2>{\node(picture) {\includegraphics[width=0.4\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_2.png}};}
153      \uncover<3->{\node(picture) {\includegraphics[width=0.4\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_3.png}};}
154      \node(text) [right=0.1cm of picture]{
155         \parbox{5cm}{
156         \scriptsize
157         \begin{itemize}
158         \item<4->{When the precursor run is finished, data of the last timestep are stored on disc.}
159         \item<5->{These data are then read by the main run and repeatedly mapped to the main run domain, until it is completely filled.}
160         \end{itemize}}};
161     \uncover<6>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_4.png}};}
162     \uncover<7>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_5.png}};}
163     \uncover<8>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_6.png}};}
164     \uncover<9>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_7.png}};} 
165     \uncover<10>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_8.png}};} 
166     \uncover<11>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.9\textwidth]{non_cyclic_figures/create_turbulent_inflow_2/create_turbulent_inflow_9.png}};} 
167    \path<7->[line] (-0.45,-1) -- (-0.7,-2.6);
168    \path<7->[line] (1.78,-1) -- (1.68,-2.6); 
169    \path<8->[line] (-0.45,-1) -- (1.68,-2.6);
170    \path<8->[line] (1.78,-1) -- (4,-2.6);
171    \path<9->[line] (-0.45,-1) -- (4,-2.6);
172    \path<9->[line] (1.78,-1) -- (6.4,-2.6);
173    \path<10->[line] (-0.45,-1) -- (6.4,-2.6);
174    \path<10->[line] (1.78,-1) -- (6.9,-2.6);
175   \end{tikzpicture} 
176\end{frame}
177
178% Folie 7
179\begin{frame}
180   \frametitle{How to Create a Turbulent Inflow (III)}
181   \scriptsize
182   \begin{itemize}
183      \item{Inflow profiles for the main run have to be taken from the precursor run. It is recommended to use the horizontally averaged profiles from
184            the last time step of the precursor run.}
185      \item<2->{Alternatively, $u$,$v$-profiles can be prescribed by parameters \texttt{u\_profile}, \texttt{v\_profile}. They should match the turbulence state of the flow.}
186   \end{itemize}
187   \vspace{-4mm}
188   \tikzstyle{line1} = [draw, red, thick, -latex']
189   \tikzstyle{line2} = [draw, red, thick, -]
190   \begin{tikzpicture}
191      \uncover<3>{\node(picture) {\includegraphics[width=0.4\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_1.png}};}
192      \uncover<4->{\node(picture) {\includegraphics[width=0.4\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_2.png}};}
193      \node(text) [right=0.1cm of picture]{
194         \parbox{6.5cm}{
195         \scriptsize
196         \vspace{3mm}
197         \begin{itemize}
198         \item<7->{Since the height of the turbulent boundary layer may increase with increasing distance from the inflow boundary, recycling has
199               to be limited to the height of the turbulent boundary layer at the inflow. Otherwise, the boundary layer height will continuously increase with time.}
200         \end{itemize}}};
201   \uncover<5>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.8\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_3.png}};}
202   \uncover<6-7>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.8\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_4.png}};}
203   \uncover<8>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.8\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_5.png}};}
204   \uncover<9>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.8\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_6.png}};}
205   \uncover<10>{\node(picture2) [below=1.8cm of picture.east] {\includegraphics[width=0.8\textwidth]{non_cyclic_figures/create_turbulent_inflow_3/create_turbulent_inflow_7.png}};}
206     
207   \path<6->[line2] (picture.east) -- (2.25,-1.3);
208   \path<6->[line2] (2.25,-1.3)    -- (-1.2,-1.3);
209   \path<6->[line2] (-1.2,-1.3)    -- (-1.2,-3.2);
210   \path<6->[line1] (-1.2,-3.2)      -- (-0.8,-3.2);
211   \end{tikzpicture}
212\end{frame}
213
214\section{Implementation in PALM}
215\subsection{Implementation in PALM}
216
217% Folie 8
218\begin{frame}
219   \frametitle{Non-Cyclic Boundary Conditions in PALM (I)}
220   \textbf{Status of availability:}
221   \begin{itemize}
222      \item<2->{Non-cyclic boundary conditions along \textbf{one} of the horizontal directions (\textit{x} \textbf{or} \textit{y}).}
223      \begin{itemize}
224         \item<3->{Dirichlet conditions at inflow (stationary vertical profiles, \textit{u}(\textit{z}), \textit{v}(\textit{z}),
225                   \textit{pt}(\textit{z}), \textit{q}(\textit{z}), \textit{w}=0).}
226         \item<4->{Radiation conditions at outflow. Tendencies at the boundary are replaced by e.g.}
227      \end{itemize}     
228      \uncover<4->{\begin{math} \frac{\partial u}{\partial t} = -\left(c_g + u\right) \frac{\partial u}{\partial x} = -u^* \frac{\partial u}{\partial x} 
229                     \qquad \textnormal with \qquad u^* = \frac{\Delta x}{\Delta t} \frac{u_{b-1}^t - u_{b-1}^{t-1}}{u_{b-1}^{t-1} - u_{b-2}^{t-1}} \end{math}}
230      \par\bigskip
231      \item<5->{Turbulence recycling method for inflow \textbf{from left}.}
232   \end{itemize} 
233\end{frame}
234
235% Folie 9
236\begin{frame}
237   \frametitle{Non-Cyclic Boundary Conditions in PALM (II)}
238   \par\bigskip
239   \small
240   \textbf{Further requirements for PALM runs using non-cyclic boundary conditions:}
241   \par\smallskip
242   \begin{itemize}
243      \item<2->{The \textbf{multigrid-method} has to be used for solving the Poisson-equation.}
244      \item<3->{A \textbf{damping zone} has sometimes to be activated in the vicinity of the in- and outflow in order to avoid reflection of gravity waves.}
245      \item<4->{\textbf{Volume flow conservation} may have to be activated, because flow acceleration or deceleration may appear along the non-cyclic direction. The resulting horizontal divergence creates a mean vertical velocity.}
246      \item<5->{If turbulence recycling is not used, it may be neccessary to \textbf{continuously impose perturbations} on the horizontal velocity field in the vicinity of the
247                inflow throughout the whole run, in order to maintain a turbulent state of the flow.}
248   \end{itemize}
249   \normalsize
250\end{frame}
251
252\section{Current Applications}
253\subsection{Current Applications}
254
255
256% Folie 10
257\begin{frame}
258   \frametitle{Current Applications of Non-Cyclic BCs (I)}
259   \textbf{Cold air outbreaks}
260   \par\bigskip
261   \includegraphics[width=\textwidth]{non_cyclic_figures/cold_air_outbreaks.png} \\
262   \par\bigskip
263   \tiny
264   \textbf{Gryschka, M., C. Dr\"ue, D. Etling and S. Raasch. 2008}: On the influence of sea-ice inhomogeneities onto roll convection in cold-air outbreaks. Geophys. Res. Lett.,
265   \textbf{35}, L23804, doi:10.1029/2008GL035845. \\
266   \par\bigskip
267   \textbf{Gryschka, M. and S. Raasch, 2005}: Roll Convection During a Cold Air Outbreak: A Large Eddy Simulation with Stationary Model Domain. Geophys. Res. Lett., \textbf{32}, L14805,
268    doi:10.1029/2005GL022872. \\
269   \normalsize
270   \begin{center} \uncover<2->{\textbf{Turbulence recycling has not been used!}} \end{center}
271\end{frame}
272
273% Folie 11
274\begin{frame}
275   \frametitle{Current Applications of Non-Cyclic BCs (II)}
276   \textbf{Cold air outbreaks}
277   \begin{center} 
278   \includegraphics[width=0.85\textwidth]{non_cyclic_figures/cold_air_outbreaks_2.png} \\
279   liquid water content (vertically intgrated) 
280   \end{center}
281\end{frame}
282
283\section{How to set up}
284\subsection{How to set up}
285
286% Folie 12
287\begin{frame}
288   \frametitle{How to set up non-cyclic runs with PALM}
289   \begin{itemize}
290      \item{\textbf{required} / recommended parameter settings:}
291   \end{itemize}
292   \par\bigskip
293   \tikzstyle{box} = [rectangle, draw, text width=\textwidth, font=\small]
294   \begin{tikzpicture}     
295      \node[box](inipar){ \begin{tabbing} 
296         \&inipar \= ....... \\
297                  \\
298                  \> \textbf{bc\_lr = 'dirichlet/radiation'}, (bc\_ns = 'dirichlet/radiation',) \\ 
299                  \> \textbf{psolver = 'multigrid'}, \\
300                  \\
301                  \> initializing\_actions = 'set\_1d-model\_profiles', \\
302                  \> conserve\_volume\_flow = .T., \\
303                  \\
304                  \> ...... / \\ \end{tabbing}};
305   \end{tikzpicture}
306\end{frame}
307
308% Folie 13
309\begin{frame}
310   \frametitle{How to set up turbulence recycling with PALM (I)}
311   \small
312   \begin{itemize}
313      \item<1->{First, a prerun has to be carried out. The domain size of the prerun has to be large enough to capture all relevant scales of turbulence.}
314      \item<2->{Restart data has to be output and output of instantaneous, horizontally averaged profiles has to be switched on and performed at the end of the run.
315                This enables writing of profiles to the restart file, which can then be used by the main run.}
316      \item<3->{Instead of using averaged profiles from the prerun, inflow profiles for the main run can also be prescribed using parameters \texttt{u\_profile}, \texttt{v\_profile}, and \texttt{uv\_heights}.}
317   \end{itemize}
318   \tikzstyle{box} = [rectangle, draw, text width=\textwidth, font=\small]
319   \onslide<2->{
320   \begin{tikzpicture}     
321      \node[box](inipar){ \begin{tabbing} 
322         \&d3par \= end\_time = 3600.0, \\
323                 \> dt\_dopr = 3600.0, data\_output\_pr = 'u', \\
324                 \> ....... / \\ \end{tabbing}};
325   \end{tikzpicture}}
326   \normalsize
327\end{frame}
328
329% Folie 14
330\begin{frame}
331   \frametitle{How to set up turbulence recycling with PALM (II)}
332   \small
333   \begin{itemize}
334      \item{The main run has to read the data from the precursor run (however, it is not a restart run!). This requires an extra activating string (e.g. turrec) in
335            the file connection statement for restart data.}           
336   \end{itemize}
337   \begin{center}
338   \includegraphics[width=0.8\textwidth]{non_cyclic_figures/list_of_input_files.png}
339   \end{center} 
340   \begin{itemize}
341      \item<2->{The mrun-command to start the main run then has to look like \par\bigskip
342          {\tt mrun ... -r \dq d3\# turrec\dq}   \par\bigskip
343          The main run is allowed to use a different number of processors and a different domain decomposition than the precursor run!}
344   \end{itemize}
345\end{frame}
346
347\begin{frame}
348   \frametitle{How to set up turbulence recycling with PALM (III)}
349   \begin{itemize}
350      \item{\textbf{required} / recommended parameter settings for the main run:}
351   \end{itemize}
352   \tikzstyle{box} = [rectangle, draw, text width=\textwidth, font=\footnotesize]
353   \tikzstyle{box2} = [rectangle, draw, text width=0.4\textwidth, font=\tiny]
354   \tikzstyle{line} = [draw, -latex']
355   \begin{tikzpicture}     
356      \node[box](inipar){ \begin{tabbing} 
357         \&inipar \= ....... \\
358                  \\
359                  \> \textbf{turbulent\_inflow = .TRUE.}, \\ 
360                  \> \textbf{bc\_lr = 'dirichlet/radiation'}, \\
361                  \> \textbf{psolver = 'multigrid'}, \\
362                  \> \textbf{initializing\_actions = 'cyclic\_fill'}, \\
363                  \> \textbf{recycling\_width = ...}, \\
364                  \> inflow\_damping\_height = ..., \\
365                  \> conserve\_volume\_flow = .T., \\
366                  \\
367                  \> ...... / \\ \end{tabbing}};
368      \uncover<2->{\node[box2] (horizontal_width) at (3,-0.6) {\textbf{Horizontal width of the recycling domain.}};}
369      \uncover<3->{\node[box2] (vertical_extend)  at (3,-2) {\textbf{Vertical extent of the recycling domain. If the precursor run simulated a convective boundary layer,
370                                                information is automatically taken from the precursor data.}};}
371
372      \path<2->[line] (horizontal_width.west) -- (-1.2,-0.4);
373      \path<3->[line] (vertical_extend.west)  -- (-0.4,-0.9);
374   \end{tikzpicture}
375\end{frame}
376
377\section{Final remarks}
378\subsection{Final remarks}
379
380% Folie 16
381\begin{frame}
382   \frametitle{Final remarks}
383   \begin{itemize}
384      \item<1->{Non-cyclic boundary conditions and turbulence recycling method require extreme care with setting of the respective parameters.}
385      \item<2->{So far, these methods have been applied only to a few special cases (cold air outbreaks, urban canopy layer for neutral stratification). Other setups may require modifications.}
386      \item<3->{Biggest problems are caused by gravity waves in capping inversions. Simulations with pure neutral stratification cause less problems.}
387      \item<4->{A synthetic turbulence generator will be available around mid 2015 as an additional option for creating inflow turbulence}
388   \end{itemize}
389\end{frame}
390
391\end{document}
Note: See TracBrowser for help on using the repository browser.