SFEMaNS  version 5.3
Reference documentation for SFEMaNS
doc_intro.h
Go to the documentation of this file.
1 // ---------------------------------------------------------------------
2 // $Id$
3 //
4 // This file is part of SFEMaNS.
5 //
6 // SFEMaNS is free software: you can redistribute it and/or modify
7 // it under the terms of the GNU General Public License as published by
8 // the Free Software Foundation, either version 3 of the License, or
9 // (at your option) any later version.
10 //
11 // SFEMaNS is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 //
16 // You should have received a copy of the GNU General Public License
17 // along with SFEMaNS. If not, see <http://www.gnu.org/licenses/>.
18 // ---------------------------------------------------------------------
19 
20 
21 
184 @section doc_intro_frame_work_num_app Numerical approximation
185 
186 
187 @subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier/Finite element representation
188 The SFEMaNS code uses a hybrid Fourier/Finite element formulation.
189  The Fourier decomposition allows to approximate the problem’s
190  solutions for each Fourier mode independently, modulo nonlinear
191  terms that are made explicit. The variables are then approximated
192  on a meridian section of the domain with a finite element method.
193 
194 The numerical approximation of a function \f$f\f$ is written in the following generic form:
195 @f{align*}
196 f(r,\theta,z,t)=f_h^{0,\cos}(r,z,t) +
197  \sum_{m=1}^M f_h^{m,\cos} \cos(m\theta) + f_h^{m,\sin} \sin(m\theta),
198 
199 @f}
200 with \f$(r,\theta,z)\f$ the cylindrical coordinates, \f$t\f$ the time and \f$M\f$
201  the number of Fourier modes considered. The unknown \f$f_h^{m,\cos}\f$ and
202  \f$f_h^{m,\sin}\f$ can be approximated independtly modulo the computation
203  of nonlinear terms. Introducing the functions \f$\cos_m = \cos(m\theta)\f$,
204  \f$\sin_m = \sin(m\theta)\f$ and a basis functions \f$(\phi_j)_{j \in J}\f$
205  of the finite element space of the meridian section results in
206  \f$(\phi_j \cos_m)_{j\in J, m \in [|0,M|]} \cup (\phi_j \sin_m)_{j\in J, m \in [|1,M|]}\f$
207  being a basis of the space of approximation.
208 
209 @subsection doc_intro_fram_work_num_app_space Space of approximation
210  We set the number of Fourier mode to \f$M\f$. We define the meridian sections
211  \f$\Omega_{c,f}^{2D}\f$, \f$\Omega_{T}^{2D}\f$,
212  \f$\Omega_{c}^{2D}\f$, \f$\Omega_v^{2D}\f$ and \f$\Omega^{2D}\f$ of
213  the domains \f$\Omega_{c,f}\f$, \f$\Omega_{T}\f$, \f$\Omega_{c}\f$,
215  We also consider \f$\left\{ \mathcal{T}_h \right\}_{h > 0}\f$
216  a family of meshes of the meridian plane \f$\Omega^{2D}\f$
217  composed of disjoint triangular cells \f$K\f$ of diameters at most \f$h\f$.
218  For a given \f$h>0\f$, we assume that the mesh \f$\mathcal{T}_h\f$
219  can be restricted to each sub domain of interests. These sub-meshes are denoted
220  \f$\mathcal{T}_h^{c,f}\f$, \f$\mathcal{T}_h^{T}\f$, \f$\mathcal{T}_h^{c}\f$
221  and \f$\mathcal{T}_h^{v}\f$. The approximation of the solutions of the
222  Navier-Stokes, heat and Maxwell equations either involve \f$\mathbb{P}_1\f$ or
223  \f$\mathbb{P}_2\f$ Lagrange finite elements. The following defines
224  the space of approximation used for each dependent variable.
225 
226 <ol>
227 <li>The velocity field \f$\bu\f$ and the pressure \f$p\f$ are
228  respectively approximated in the following spaces:
229 \f{align*}{
230 \textbf{V}_{h}^\bu := \left\{ \textbf{v} =\sum\limits_{k=-M}^M \textbf{v}_h^k (r,z)
231 e^{ik \theta} ; \textbf{v}_h^k \in \textbf{V}_{h}^{\bu,2D} \text{, }
232  \overline{\textbf{v}_h^k}=\textbf{v}_h^{-k} \text{, } -M \leq k \leq M \right\} ,\\
233 S_{h}^p := \left\{ q_h= \sum\limits_{k=-M}^M q_h^k (r,z) e^{i k \theta} ;
234  q_h^k \in S_{h}^{p,2D} \text{, } \overline{q_h^k}=q_h^{-k} \text{, }
235  -M \leq k \leq M \right\},
236 \f}
237 where we introduce the following finite element space:
238 \f{align*}{
239 \textbf{V}_{h}^{\bu,2D} : = \left\{ \textbf{v}_h \in C^0(\overline{\Omega_{c,f}^{2D}}) ;
240  \textbf{v}_h|_K \in \mathbb{P}_2^6 \text{ } \forall K \in \mathcal{T}_h^{c,f}
241  \right\} ,\\
242 S_{h}^{p,2D} : = \left\{ q_h \in C^0(\overline{\Omega_{c,f}^{2D}}) ;
243  q_h|_K \in \mathbb{P}_1^2 \text{ } \forall K \in \mathcal{T}_h^{c,f} \right\} .
244 \f}
245 We also introduce the subspace \f$\textbf{V}_{h,0}^{2D}\f$
246  of \f$\textbf{V}_{h}^\bu\f$ composed of vector field that are
247  zero on the boundaries of \f$\Omega_{c,f}\f$.
248 <li>The temperature \f$T\f$ is approximated in the following space:
249 \f{align*}{
250 S_h^T := \left\{ q_h= \sum\limits_{k=-M}^M q_h^k (r,z) e^{i k \theta} ;
251  q_h^k \in S_{h}^{T,2D} \text{, } \overline{q_h^k}=q_h^{-k} \text{, }
252  -M \leq k \leq M \right\},
253 \f}
254 where we introduce the following finite element space:
255 \f{align*}{
256 S_{h}^{T,2D} : = \left\{ q_h \in C^0(\overline{\Omega_{T}^{2D}}) ;
257  q_h|_K \in \mathbb{P}_2^2 \text{ } \forall K \in \mathcal{T}_h^{T} \right\} .
258 \f}
259 <li>The magnetic field \f$\bH^c\f$ and the scalar potentiel \f$\phi\f$
260  are respectively approximated in the following spaces:
261 \f{align*}{
262 \textbf{V}_h^{\bH^c} :=
263 \left\{
264 \textbf{b}=
265 \sum\limits_{k=-M}^M \textbf{b}_h^k (r,z) e^{ik \theta} ;
266  \textbf{b}_h^k \in \textbf{V}_h^{\bH^c,2D}, \; -M \leq k \leq M \right\},
267 \\
268 S_h^{\phi} :=
269 \left\{
270 \varphi=
271 \sum\limits_{k=-M}^M \varphi_h^k (r,z) e^{ik \theta} ;
272  \varphi_h^k \in S_{h}^{\phi,2D}, \; -M \leq k \leq M
273 \right\},
274 \f}
275 where we introduce the following finite element spaces:
276 \f{align*}{
277 \textbf{V}_{h}^{\bH^c, 2D} : = \left\{ \textbf{b}_h \in
278 C^0(\overline{\Omega_{c}^{2D}});
279  \textbf{b}_h|_K \in \mathbb{P}_{l_\bH}^6 \text{ }
280  \forall K \in \mathcal{T}_h^{c} \right\} ,\\
281 S_{h}^{\phi, 2D} : = \left\{ \varphi_h \in C^0(\overline{\Omega_{v}^{2D}}) ;
282  \varphi_h|_K \in \mathbb{P}_{l_\phi}^2 \text{ } \forall K \in \mathcal{T}_h^v , \right\}
283 \f}
284 with \f$l_\bH\in\{1,2\}\f$ and \f$l_\phi\in\{1,2\}\f$ such that \f$l_\phi \geq l_\bH\f$.
285 </ol>
286 
287 @subsection doc_intro_fram_work_num_app_time_marching Time marching
288 
289 To present the time marching, we introduce a time step \f$\tau\f$ and denote
290  by \f$f^n\f$ the approximation of a function at the time \f$t_n=n \tau\f$.
291  When approximating the Navier-Stokes, heat and Maxwell equations, the time marching
292  can be summarized by the four following steps:
293 <ol>
294 <li>Initialization of the temperature \f$T^0, T^1\f$, velocity fields \f$\bu^0, \bu^1\f$ , the dynamical pressure \f$p^0, p^1\f$ , the magnetic field \f$\bH^0, \bH^1\f$ and the scalar potential \f$\phi^0, \phi^1\f$.
295 <li>Approximation of \f$T^{n+1}\f$ after the nonlinear terms are computed with extroplation involving \f$T^n, T^{n-1}, \bu^n\f$ and \f$\bu^{n-1}\f$.
296 <li>Approximation of \f$\bu^{n+1}\f$ and \f$p^{n+1}\f$ after the nonlinear terms are computed with extroplation involving \f$\bu^n, \bu^{n-1}, \bH^n\f$ and \f$\bH^{n-1}\f$.
297 <li>Approximation of \f$\bH^{n+1}\f$ and \f$\phi^{n+1}\f$ after the nonlinear terms are computed with extroplation involving \f$\bu^{n+1}, \bH^n\f$ and \f$\bH^{n-1}\f$.
298 </ol>
299 
300 
301 @section doc_intro_SFEMaNS_weak_form_extensions Weak formulation and extensions
302 
303 This section introduces the weak formulations implemented in SFEMaNS and
304  additional features/extensions of the code. The notations introduced
305  previously, such as the domain of approximation for each equations or
306  the time step \f$\tau\f$, are unchanged.
307 
308 @subsection doc_intro_SFEMaNS_possibilities_nst Hydrodynamic setting
309 
310 
311 @subsubsection doc_intro_SFEMaNS_possibilities_nst_1 Approximation of the Navier-Stokes equations
312 
313 The approximation of the Navier-Stokes equations is based on a
314  rotational form of the prediction-correction projection method
315  detailed in <a href='http://www.ams.org/journals/mcom/2004-73-248/S0025-5718-03-01621-1/'>
316 <code>Guermond and Shen (2004)</code></a>. As the code SFEMaNS
317  approximates the predicted velocity, a penalty method of the
318  divergence of the velocity field is also implemented.
319 
320  The method proceeds as follows:
321 <ol>
322 <li>Initialization of the velocity field, the pressure
323  and the pressure increments.
324 <li>For \f$n\geq0\f$ let \f$\bu^{n+1}\f$, that
325  matches the Dirichlet boundary conditions of the
326  problem, be the solutions of the following formulation for all
328 \f{equation}{
329 \label{eq:SFEMaNS_weak_from_NS_1}
330 \int_{\Omega_{c,f}} \frac{3}{2 \tau} \textbf{u}^{n+1} \cdot \textbf{v}
331  + \frac{1}{\Re} \GRAD \textbf{u}^{n+1} : \GRAD \textbf{v}
332  + \text{c}_\text{div} h^{-1} \DIV\bu^{n+1} \DIV \bv=
333  - \int_{\Omega_{c,f}} ( \frac{-4 \textbf{u}^n
334  + \textbf{u}^{n-1}}{2 \tau}
335  + \GRAD ( p^n +\frac{4\psi^n - \psi^{n-1}}{3} ) ) \cdot \textbf{v} \\
336  + \int_{\Omega_{c,f}} ( \textbf{f}^{n+1} - (\ROT \textbf{u}^{*,n+1} )
337  \times \textbf{u}^{*,n+1} ) \cdot \textbf{v} ,
338 \f}
339 where \f$h\f$ is the local mesh size, \f$\text{c}_\text{div}\f$
340  is a penalty coefficent,
341  \f$\textbf{u}^{*,n+1}=2\textbf{u}^n-\textbf{u}^{n-1}\f$ and
342 \f$\GRAD \textbf{u} : \GRAD \textbf{v} = \sum_{i,j} \partial_i u_j \partial_i v_j\f$.
343 We remind that \f$\Re\f$ is the kinetic Reynolds number
344  and \f$\textbf{f}\f$ a source term.
345 <li>Computation of \f$\psi^{n+1}\f$ and \f$\delta^{n+1}\f$
346  solutions in \f$S_h^p\f$ of:
347 \f{equation}{
348 \label{eq:SFEMaNS_weak_from_NS_2}
349 \int_{\Omega_{c,f}} \GRAD \psi^{n+1} \cdot \GRAD q
350 = \frac{3}{2 \tau} \int_{\Omega_{c,f}} \textbf{u}^{n+1} \cdot \GRAD q,
351 \f}
352 \f{equation}{
353 \label{eq:SFEMaNS_weak_from_NS_3}
354 \int_{\Omega_{c,f}} q \delta^{n+1} = \int_{\Omega_{c,f}} q \DIV \textbf{u} ^{n+1},
355 \f}
356  for all \f$q\f$ in \f$S_h^p\f$.
357 <li>The pressure is updated as follows:
358 \f{equation}{
359 \label{eq:SFEMaNS_weak_from_NS_4}
360  p^{n+1} = p^n + \psi^{n+1} - \frac{1}{\Re} \delta^{n+1} .
361 \f}
362 </ol>
363 
364 @subsubsection doc_intro_SFEMaNS_possibilities_nst_2 Entropy viscosity for under resolved computation
365 
366 Hydrodynamic problems with large kinetic Reynolds number
367  introduce extremely complex flows. Approximating all of
368  the dynamics's scales of such problems is not always possible
369  with present computational ressources. To address this problem,
370  a nonlinear stabilization method called entropy viscosity is
371  implemented in SFEMaNS. This method has been introduced by
372  <a href='http://link.springer.com/article/10.1007%2Fs10915-010-9445-3'>
373  <code>Guermond et al. (2011)</code></a>. It consists of introducing an artifical
374  viscosity, denoted \f$\nu_{E}\f$, that is taken proportional
375  to the default of equilibrium of an energy equation.
376 
377 This implementation of this method in SFEMaNS can be summarized
378  in the three following steps:
379 <ol>
380 <li>Define the residual of the Navier-Stokes at
381  the time \f$t_n\f$ as follows:
382 \f{equation}{
383 \textbf{Res}_\text{NS}^n:=
384 \frac{\bu^n-\bu^{n-2}}{ 2 \tau}
385 -\frac{1}{\Re} \LAP \bu^{n-1}
386 + \ROT (\bu^{*,n-1}) \times \bu^{*,n-1}
387  + \GRAD p^{n-1} -\textbf{f}^{n-1} ,
388 \f}
389 <li>Compute the entropy viscosity on each mesh cell K as follows:
390 \f{equation}{
391 \label{eq:SFEMaNS_NS_entropy_viscosity}
392 \nu_{E|K}^{n}:=\min\left(c_\text{max} h \|\bu^{n-1}\|_{\bL^\infty(K)},
393  c_\text{e} h^2 \frac{\|\textbf{Res}_\text{NS}^n \cdot
394  \bu^{n-1}\|_{\bL^\infty(K)}}{\|\bu^{n-1}\|_{\bL^\infty(K)}^2}\right),
395 \f}
396 with \f$h\f$ the local mesh size of the cell K,
397  \f$c_\text{max}=\frac{1}{2}\f$ for \f${\mathbb P}_1\f$
398 finite elements and \f$c_{\max}=\frac{1}{8}\f$ for \f${\mathbb P}_2\f$
399  finite elements. The coefficient \f$c_\text{e}\f$ is a tunable
400  constant in the interval \f$(0,1)\f$. It is generally set to one.
401 <li>When approximating \f$\bu^{n+1}\f$, the term
402  \f$-\DIV(\nu_{E}^n \GRAD \bu^n)\f$
403  is added in the left handside of the Navier-Stokes equations.
404 </ol>
405 
406 Thus defined, the entropy viscosity is expected to be smaller
407  than the consistency error in the smooth regions. In regions
408  with large gradients, the entropy viscosity switches to the first
409  order viscosity \f$\nu_{\max|K}^n:=c_\text{max} h_K \|\bu^{n-1}\|_{\bL^\infty(K)}\f$.
410  Note that \f$\nu_\max^n\f$ corresponds to the artifical viscosity
411  induces by first order up-wind scheme in the finite difference
412  and finite volume litterature.
413 
414 Remark: To facilitate the explicit treatment of the entropy viscosity,
415 the following term can be added in the left handside of the Navier-Stokes
416 equations:
417 \f{equation}{
418 \label{eq:SFEMaNS_NS_LES_c1}
419 - \DIV( c_1 h \GRAD (\bu^{n+1}-\bu^{*,n+1})).
420 \f}
421 with \f$h\f$ the local mesh size and \f$c_1\f$ is a tunable constant.
422  The coefficient \f$c_1\f$ should be of the same order of
423  \f$c_\text{max} \|\bu\|_{\bL^\infty(\Omega_{c,f})}\f$.
424 
425 @subsubsection doc_intro_SFEMaNS_possibilities_nst_3 Extension to non axisymmetric geometry
426 
427 A penalty method of <a href='http://www.sciencedirect.com/science/article/pii/S0168927407000815'>
428 <code>Pasquetti et al. (2008)</code></a>) is implemented so
429  the code SFEMaNS can report of the presence of non axisymmetric
430  solid domain in \f$\Omega_{c,f}\f$. Such solid domains can either
431  be driving the fluid or represents an obtacle to the fluid motion
432  when their velocity is zero. The domain \f$\Omega_{c,f}\f$, where
433  the Navier-Stokes equations are approximated, is splitted into a
434  fluid domain \f$\Omega_\text{fluid}\f$ and a solid
435  domain \f$\Omega_\text{obs}\f$. These sub domains can be non
436  axisymmetric and time dependent. The penalty method introduces
437  a penalty function \f$\chi\f$. It is used to force the velocity
438  field approximated by the Navier-Stokes equations to
439  match the given velocity field of the solid in \f$\Omega_\text{obs}\f$.
440  This penalty function is defined as follows:
441 \f{equation}{
442 \label{eq:SFEMaNS_NS_penal_1}
443 \chi =
444 \left\{
445 \begin{array}{c}
446  1 \text{ in } \Omega_\text{fluid}, \\
447  0 \text{ in } \Omega_\text{obs}.
448 \end{array}
449 \right.
450 \f}
451 
452 The velocity field is updated as follows:
453 \f{equation}{
454 \label{eq:SFEMaNS_NS_penal_2}
455 \frac{3\bu^{n+1}}{2\tau}
456 - \frac{1}{\Re} \LAP \bu^{n+1}
457 =
458 -\GRAD p^{n}
459 + \chi^{n+1} \left(\frac{4\bu^n - \bu^{n-1}}{2\tau}
460 - \GRAD( \frac{4\psi^n-\psi^{n-1}}{3}) \right)
461 \\
462 + \chi^{n+1} \left(
463 - ( \ROT \bu^{*,n+1} ) \times\bu^{*,n+1}
464  + \textbf{f}^{n+1} \right)
465  + (1 - \chi^{n+1}) \frac{3\bu^{n+1}_\text{obst}}{2\tau},
466 \f}
467  with \f$\bu_\text{obs}\f$ the given velocity of the solid obstacle.
469  can be time dependent so is the penalty function \f$\chi\f$.
470  Note that the original scheme is recovered where \f$\chi=1\f$.
471 
472 Remark: the correction and update of the pressure is not modified.
473 
474 @subsubsection doc_intro_SFEMaNS_possibilities_nst_4 Extension to multiphase flow problem
475 
476 The code SFEMaNS can approximate two phase flow problems.
477  The governing equations are written as follows:
478 \f{equation}{
479 \label{eq:SFEMaNS_NS_multiphase_1}
480 \partial_t \rho + \DIV( \textbf{m}) = 0,
481 \f}
482 \f{equation}{
483 \label{eq:SFEMaNS_NS_multiphase_2}
484 \partial_t(\textbf{m})
485 + \DIV(\textbf{m}{\otimes}\bu)
486 - \frac{2}{\Re} \DIV(\eta \varepsilon(\bu))
487 = -\GRAD p + \textbf{f},
488 \f}
489 \f{equation}{
490 \label{eq:SFEMaNS_NS_multiphase_3}
491 \DIV \bu = 0,
492 \f}
493 where \f$\rho\f$ is the density, \f$\eta\f$ the dynamical viscosity,
494  \f$\bm=\rho\bu\f$ the momentum, \f$\textbf{f}\f$ a forcing term and
495 \f$\varepsilon(\bu)=\GRAD^s \bu = \frac12 (\GRAD \bu +(\GRAD \bu)^\sf{T})\f$.
496  The densities, respestively dynamical viscosities, of the two fluids are denoted
497  \f$\rho_0\f$ and \f$\rho_1\f$, respectively \f$\eta_0\f$ and \f$\eta_1\f$.
498 
499 
500 The approximation method is based on the following ideas.
501 <ol>
502 <li>Use of a level set method to follow the interface evolution.
503  The method consists of approximating \f$\varphi\f$ that takes
504  value in \f$[0,1]\f$ solution of:
505 \f{align*}{
506 \partial_t \varphi + \bu \cdot \GRAD \varphi=0.
507 \f}
508 The level set is equal to 0 in a fluid and 1 in the other fluid.
509  The interface between the fluid is represented by \f$\varphi^{-1}({1/2})\f$.
510 <li>Use the momentum as dependent variable for the Navier-Stokes equations.
511 The mass matrix becomes time independent and can be treated with pseudo-spectral method.
512 <li>Rewritte the diffusive term \f$- \frac{2}{\Re} \DIV(\eta \varepsilon(\bu)) \f$ as follows:
513 \f{align*}{
514 - \frac{2}{\Re} \DIV(\eta \varepsilon(\bu)) =
515 - \frac{2}{\Re} \DIV(\overline{\nu} \varepsilon(\bm))
516 - \left( \frac{2}{\Re} \DIV(\eta \varepsilon(\bu))
517 - \frac{2}{\Re} \DIV(\overline{\nu} \varepsilon(\bm)) \right)
518 \f}
519 with \f$\overline{\nu}\f$ a constant satisfying \f$\overline{\nu}\geq \frac{\eta}{\rho}\f$.
520  The first term is made implicit while the second is treated explicitly.
521  The resulting stiffness matrix is time independent and does not involve nonlinearity.
522 <li>The level set and Navier-Stokes equations are stabilized with the same entropy viscosity.
523  For each mesh cell \f$K\f$ and each time iteration \f$n\f$,
524  the entropy viscosity \f$\nu_E\f$ is defined as follows:
525 \f{align*}{
526 \nu_{E|K}^{n}:=\min\left(c_\text{max} h \|\bu^{n-1}\|_{\bL^\infty(K)},
527  c_\text{e} h^2 \frac{\ \max(
528  |\textbf{Res}_\text{NS}^n \cdot \bu^{n-1}\|_{\bL^\infty(K)},
529 |\text{Res}_\rho^n \|\bu{n-1}\|^2|
530 }{\|\bu^{n-1}\|_{\bL^\infty(K)}\|\bm^{n-1}\|_{\bL^\infty(K)}}
531 \right),
532 \f}
533 where
534 \f{align*}{
535 \textbf{Res}_\text{NS}^n=
536 \frac{\bm^n-\bm^{n-2}}{ 2 \tau}
537 -\frac{1}{\Re} \DIV (\eta^{n-1}\epsilon(\bu^{n-1}))
538 + \DIV(\bm^n{\otimes}\bu^n) + \GRAD p^{n-1} -\textbf{f}^{n-1} ,
539 \f}
540 and
541 \f{align*}{
542 \text{Res}_\rho^n= \frac{\rho^n-\rho^{n-2}}{ 2 \tau}
543 + \DIV (\bm^{m-1}).
544 \f}
545 To facilitate the explicit treatment of the entropy viscosity,
546 the term \f$- \DIV( c_1 h \GRAD (\bu^{n+1}-\bu^{n}))\f$, respectively
547  \f$-\DIV( c_1 h \GRAD (\varphi^{n+1}-\varphi^n))\f$, can be added
548  in the left handside of the Navier-Stokes, respectively of level set equation.
549 <li>A compression term that allows the level set to not get flatten over time
550  iteration is added. It consists of adding the following term in the right
551  handside of the level set equation:
552 \f{align*}{
553  - \DIV \left(c_\text{comp}\nu_E h^{-1} \varphi(1-\varphi)\frac{\GRAD\varphi}{\|\varphi\|}\right).
554 \f}
555 The coefficient \f$c_\text{comp}\f$ a tunable constant in \f$[0,1]\f$.
556  We generally set \f$c_\text{comp}=1\f$.
557 </ol>
558 
559 After initialization, the first time order algorithm (BDF1) proceeds as follows:
560 <ol>
561 <li>Compute \f$\varphi^{n+1}\f$ solution of
562 \f{align}{
563 \frac{\varphi^{n+1}-\varphi^n}{\tau} = - \bu^n \cdot \GRAD \varphi^n
564  + \DIV \left(
565  \nu_E^n\GRAD \varphi^n
566  - c_\text{comp} \nu_E^n h^{-1} \varphi^n(1-\varphi^n)\frac{\GRAD\varphi^n}{\|\varphi^n\|}
567  \right).
568 \f}
569 <li>Reconstruct \f$\rho^{n+1}\f$ and \f$\eta^{n+1}\f$ as follows:
570 \f{align*}{
571 \rho^{n+1} = \rho_0 + (\rho_1 - \rho_0) F(\varphi^{n+1}), \qquad
572 \eta = \eta_0 + (\eta_1 - \eta_0) F(\varphi^{n+1}),
573 \f}
574 where \f$F\f$ is either equal to the identity,
575  \f$F(\varphi)=\varphi\f$, or a piecewise ponylomial function defined by:
576 \f{align*}{
577 F(\varphi) =
578 \begin{cases}
579 0 & \text{if $\varphi - 0.5\le -c_{\text{reg}}$}, \\
580 \frac12 \left(1+\frac{(\varphi-0.5)((\varphi-0.5)^2 - 3 c_{\text{reg}}^2)}{-2c^3_{\text{reg}}}\right)
581 & \text{if $|\varphi - 0.5| \le c_{\text{reg}}$}, \\
582 1 & \text{if $c_{\text{reg}} \le \varphi - 0.5$}.
583 \end{cases}
584 \f}
585 The tunable coefficient \f$c_\text{reg}\f$ lives in \f$[0,0.5]\f$. We generally set \f$c_\text{reg}=0.5\f$.
586 <li>Compute \f$\bm^{n+1}\f$ solution of:
587 \f{align}{
588 \frac{\bm^{n+1}-\bm^n}{\tau} - \frac{2\overline{\nu}}{\Re}\DIV(\epsilon(\bm^{n+1})-\epsilon(\bm^n))
589 = \frac{2}{\Re}\DIV( \eta^n\epsilon(\bu^n))
590 - \DIV(\bm^n\times\bu^n)
591 - \GRAD(p^n+\phi^n)
592 +\textbf{f}^{n+1}.
593 \f}
594 <li>Update the pressure as follows:
595 <ol>
596 <li>Solve \f$\phi^{n+1}\f$ solution of
597 \f{align*}{
598 - \LAP \phi^{n+1} = \frac{\rho_\text{min}}{\tau} \DIV \bu^{n+1},
599 \f}
600 with \f$\rho_\text{min}=\min(\rho_0,\rho_1)\f$ and \f$\bu^{n+1}=\frac{1}{\rho^{n+1}}\bm^{n+1}\f$.
601 <li>Set \f$p^{n+1}=p^n + \phi^{n+1} - \frac{\eta_\text{min}}{\Re} \DIV \bu^{n+1}\f$
602  with \f$\eta_\text{min}=\min(\eta_0,\eta_1)\f$.
603 </ol>
604 </ol>
605 
606 
607 Remarks:
608 <ol>
609 <li>This method can be used to approximate problems with
610  a stratification or an inclusion of \f$n\geq 3\f$ fluids.
611  One level set is approximated per interface between two
612  fluids. The fluids properties are reconstructed with
613  recursive convex combinations.
614 <li>MHD multiphase problems with variable electrical conductivity
615  between the fluids can also be considered. The electrical
616  conductivity in the fluid is reconstructed with the level set
617  the same way the density and the dynamical viscosity are.
618  The magnetic field \f$\bH^{n+1}\f$ is updated as follows:
619 \f{align}{
620 \frac{3\bH^{n+1}-4\bH^n+\bH^{n-1}}{2\tau}
621  + \ROT \left( \frac{1}{\overline{\sigma}\Rm}
622  \ROT ( \bH^{n+1}-\bH^{*,n+1}) \right)
623 =
624  - \ROT\left( \frac{1}{\sigma\Rm} \ROT \bH^{*,n+1} \right)
625  + \ROT (\bu^{n+1}\times \mu^c \bH^{*,n+1})
626  + \ROT \left( \frac{1}{\sigma\Rm} \textbf{j}^{n+1} \right)
627 \f}
628 with \f$\bH^{*,n+1}=2\bH^{n+1}-\bH^n\f$ and \f$\overline{\sigma}\f$ a
629  function depending of the radial and vertical
630  coordinates \f$(r,z)\f$ such that
631  \f$\overline{\sigma}(r,z)\leq \sigma(r,\theta,z,t)\f$ for
632  all \f$(r,\theta,z,t)\f$ considered.
633 </ol>
634 
635 
636 
637 @subsection doc_intro_SFEMaNS_possibilities_temp Heat equation's weak formulation
638 
639 The heat equations is approximated as follows.
640 <ol>
641 <li>Initialization of the temperature.
642 <li>For all \f$n\geq0\f$ let \f$T^{n+1}\f$, that matches the
643  Dirichlet boundary conditions of the problem, be the solution
644  of the following formulation for all \f$v\in S_h^T\f$:
645 \f{equation}{
646 \label{eq:SFEMaNS_weak_form_temp}
647 \int_{\Omega_T} \frac{3 C }{2 \tau}T^{n+1} v
648  + \lambda \GRAD T^{n+1} \cdot \GRAD v
649  = - \int_{\Omega_T} \left( \frac{4 T^n -T^{n-1}}{2 \tau}
650  - \DIV (T^{*,n+1} \bu^{*,n+1}) + f_T^{n+1}\right) v,
651 \f}
652 where \f$T^{*,n+1}=2 T^n - T^{n-1}\f$. We remind that \f$C\f$ is
653  the volumetric heat capacity, \f$\lambda\f$ the thermal conductivty
654  and \f$f_T\f$ a source term.
655 </ol>
656 
657 
658 
659 @subsection doc_intro_SFEMaNS_possibilities_mxw Magnetic setting
660 
661 The code SFEMaNS uses \f$\bH^1\f$ conforming Lagrange finite element to approximate
662  the magnetic field. As a consequence, the zero divergence condition on the
663  magnetic field cannot be enforced by standard penalty technique for
664  non-smooth and non-convex domains.
665  To overcome this obstacle, a method inspired of
666  <a href='http://www.ams.org/journals/mcom/2011-80-276/S0025-5718-2011-02464-6/'>
667 <code>Bonito and Guermond (2011)</code></a>
668  has been implemented. This method consists of introducting a
669  magnetic pressure denoted \f$ p_\text{m}\f$ and proceeds as follows.
670 <ol>
671 <li>Add the term \f$-\mu^c \GRAD p_\text{m}^c\f$ in the right handside
672  of the magnetic field \f$\bH^c\f$ equation where \f$p_\text{m}^c\f$
673  if the solution in \f$\Omega^c\f$ of:
674 \f{align*}{
675 - \DIV( h_\text{loc}^{2(1-\alpha)} \GRAD p_m^{c,n+1} ) &=
676  - \DIV( \mu^c \bH^{c,n+1}) ,
677  \\
678 p_m^{c,n+1}|_{\partial \Omega_c} &= 0,
679 \f}
680 where \f$h\f$ is the local mesh size and \f$\alpha\f$ a
681  constant parameter in \f$[0.6,0.8]\f$.
682 <li>Add the term \f$ -\DIV(\mu^v \GRAD p_\text{m}^v)\f$ in the right handside
683  of the scalar potential \f$\phi\f$ equation where \f$p_\text{m}^v\f$
684  is the solution in \f$\Omega^v\f$ of:
685 \f{align*}{
686 \LAP p_m^{v,n+1} = \LAP \phi^{n+1}, \\
687 \GRAD p_m^{v,n+1} \cdot \textbf{n} |_{\partial \Omega_v} = 0.
688 \f}
689 </ol>
690 
691 We note that the magnetic pressure can be eliminated from the equation
692  of the scalar potential \f$\phi\f$. We refer to
693  <a href='http://www.sciencedirect.com/science/article/pii/S0021999111002749'>
694  <code>Guermond et al. (2011)</code></a> for more details.
695  The approximation space used
696  to approximate \f$ p_\text{m}^c\f$ is the following:
697 \f{align*}{
698 S_h^{p_\text{m}^c} :=
699 \left\{
700 \varphi=
701 \sum\limits_{k=-M}^M \varphi_h^k (r,z) e^{ik \theta} ;
702  \varphi_h^k \in S_{h}^{p_\text{m}^c,2D}, \; -M \leq k \leq M
703 \right\},
704 \f}
705 where we introduce the following finite element space:
706 \f{align*}{
707 S_{h}^{p_\text{m}^c, 2D} : = \left\{ \varphi_h \in C^0(\overline{\Omega_{c}^{2D}}) ;
708  \varphi_h|_K \in \mathbb{P}_1^2 \text{ } \forall K \in \mathcal{T}_h^c , \right\}.
709 \f}
710 
711 In addition, an interior penalty method is used to enforce the continuity conditions
712  across the interfaces \f$\Sigma_\mu\f$ and \f$\Sigma\f$. We refer to
713  <a href='http://www.sciencedirect.com/science/article/pii/S0021999106002944'>
714  <code>Guermond et al. (2007)</code></a> for more details.
715 
716 @subsubsection doc_intro_SFEMaNS_possibilities_mxw_1 Approximation of the Maxwell equations with H
717 
718 The Maxwell equations are approximated as follows:
719 <ol>
720 <li>Initialization of the magnetic field \f$\bH^c\f$, the scalar potential \f$\phi\f$ and the magnetic pressure \f$p_\text{m}^c\f$.
721 <li>For all \f$n\geq 1\f$, computation of \f$(\bH^{c,n+1},\phi^{n+1},p_\text{m}^{c,n+1})\f$
722  solutions of the following formulation for all \f$b\in \bV_h^{\bH^c} \f$,
723  \f$\varphi\in S_h^{\phi}\f$
724  and \f$q\in S_h^{p_\text{m}^c} \f$.
725 \f{align*}{
726 & \int_{\Omega_c}\mu^c \frac{D\bH^{c,n+1}}{\Delta t}\SCAL \bb
727  +\int_{\Omega_c} \frac{1}{\sigma R_m} \ROT \bH ^{c,n+1}\cdot \ROT \bb
728  +\int_{\Omega_v} \muv\frac{\GRAD D\phi^{n+1}}{\Delta t}\SCAL \GRAD\varphi
729  +\int_{\Omega_v} \muv\GRAD\phi^{n+1}\SCAL \GRAD\varphi -
730  \int_{\partial\Omega_v} \muv\varphi \bn\SCAL \GRAD \phi^{n+1}\\
731 & + \beta_1\left(\int_{\Omega_c} \mu^c\GRAD p_\text{m}^{c,n+1}\SCAL\bb
732  - \int_{\Omega_c} \mu^c\bH^{c,n+1}\SCAL\GRAD q +
733  \int_{\Omega_c} h^{2(1-\alpha)}\GRAD p_\text{m}^{c,n+1}\SCAL \GRAD q
734  + \int_{\Omega_c}
735  h^{2\alpha}\DIV (\mu^c \bH^{c,n+1} )\DIV (\mu^c \bb)\right)\\
736 & +\int_{\Sigma_{\mu}} \left \{ \frac{1}{\sigma R_m} \ROT {\bH ^{c,n+1}} \right \}
737  \cdot \left ( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
738 & +\beta_3 \int_{\Sigma_{\mu}} h^{-1} \left( { \bH_1^{c,n+1}}\times \bn_1^c
739  + {\bH_2^{c,n+1}}\times \bn_2^c\right ) \SCAL \left ( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
740 & +\beta_1 \int_{\Sigma_{\mu}} h^{-1} \left({ \mu^c_1\bH_1^{c,n+1}}\cdot \bn_1^c
741  + {\mu^c_2 \bH_2^{c,n+1}}\cdot \bn_2^c\right ) \SCAL \left ( {\mu^c_1}{ \bb_1}\cdot \bn_1^c
742  + {\mu^c_2}{ \bb_2}\cdot \bn_2^c\right )\\
743 & +\int_{\Sigma} \frac{1}{\sigma R_m} \ROT {\bH ^{c,n+1}} \cdot
744  \left( { \bb }\times \bn^c + \nabla \varphi ^{n+1}\times \bn^v\right)
745  + \beta_2 \int_\Sigma h^{-1} \left( {\bH^{c,n+1}}\CROSS \bn_1^c
746  + {\GRAD \phi^{n+1}}\CROSS \bn_2^c\right ) \SCAL (\bb\CROSS \bnc +
747  \GRAD\varphi\CROSS \bnv)\\
748 & + \beta_1 \int_\Sigma h^{-1} \left( { \mu^c\bH ^{c,n+1}}\cdot \bn_1^c
749  + {\GRAD \phi^{n+1}}\cdot \bn_2^c\right ) \SCAL ({\mu^c}\bb\cdot \bnc +
750  \GRAD\varphi \cdot \bnv)\\
751 & + \int _{\Gamma_c} \frac{1}{\sigma R_m} \ROT \bH ^{c,n+1} \cdot ( \bb \CROSS \bnc)
752  + \beta _3\left(
753  \int_{\Gamma_c} h^{-1} \left( { \bH^{c,n+1}}\CROSS \bn^c \right ) \SCAL (\bb\CROSS \bnc)
754  \right )\\
755 & =\\
756 & \int_{\Omega_c} \left( \frac{1}{\sigma R_m}\bj^s + \bu^{n+1} \times \mu^c \bH^{*,n+1} \right )
757  \cdot \ROT \bb
758  + \int _{\Sigma_{\mu}} \left \{ \frac{1}{\sigma R_m}\bj^s +
759  \bu^{n+1} \times \mu^c \bH^{*,n+1} \right \} \cdot
760  \left( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
761 & +\int_{\Sigma}\left ( \frac{1}{\sigma R_m} \bj^s + \bu^{n+1} \times \mu^c \bH^{*,n+1}
762  \right)\cdot \left ( { \bb }\times \bn^c + \nabla \varphi \times \bn^v\right)
763  +\int_{\Gamma_c}(\ba \times \bn) \cdot \left ({\bb} \times \bn \right) + \int_{\Gamma_v}
764  (\ba \times \bn) \cdot (\nabla \varphi \times \bn)\\
765 & + \int_{\Gamma_c} \left ( \frac{1}{\sigma R_m}\bj^s + \bu^{n+1} \times
766  \mu^c \bH^{*,n+1} \right )\cdot ( \bb \CROSS \bnc)
767  +\beta_3 \int_{\Gamma_c} h^{-1}
768  \left( {\bH}_\text{bdy}^{c,n+1}\CROSS \bn^c \right) \SCAL (\bb\CROSS \bnc) ,
769 \f}
770 where we set \f$D\bH^{c,n+1}=\dfrac{3\bH^{c,n+1}-4\bH^{c,n}+\bH^{c,n-1}}{2}\f$,
771 \f$D\phi^{c,n+1}=\dfrac{3\phi^{c,n+1}-4\phi^{c,n}+\phi^{c,n-1}}{2}\f$,
772  \f$\bH^{*,n+1}=2\bH^{c,n}-\bH^{c,n-1}\f$. We use the operator \f$\{.\}\f$ defined by
773  \f$\{f\}=\frac{f_1+f_2}{2}\f$ on the interface \f$\Sigma_\mu\f$.
774  The constants \f$\beta_1, \beta_2\f$ and \f$\beta_3\f$ are penalty coefficients.
775  They are normalized by \f$(\sigma\Rm)^{-1}\f$ so their value can be set to one
776  in the data file. The function \f$\bH_\text{bdy}^{c}\f$ is a user function
777  used to impose Dirichlet boundary conditions on the surface
779 
780 </ol>
781 
782 
783 
784 
785 
786 @subsubsection doc_intro_SFEMaNS_possibilities_mxw_2 Extension to magnetic permeability variable in time and azimuthal direction
787 
788 The use of a Fourier decomposition in the azimuthal direction leads us to use
789  the magnetic field \f$\bB^c=\mu\bH^c\f$ as dependent variable of the Maxwell equations
790  in the conducting domain. The mass matrix becomes time independent and can be computed with pseudo-spectral methods.
791  To get a time independent stiffness matrix that does not involve nonlinearity, the diffusive term
792  \f$\ROT \left(\frac{1}{\sigma\Rm} \ROT\frac{\bB^c}{\mu} \right)\f$ is rewritten as follows:
793 \f{align*}{
794  \ROT \left( \frac{1}{\sigma\Rm} \ROT \frac{\bB^c}{\mu} \right) =
795  \ROT \left( \frac{1}{\sigma\Rm \overline{\mu}} \ROT\frac{\bB^c}{\mu} \right)
796  + \ROT \left( \frac{1}{\sigma\Rm} \ROT ((\frac{1}{\mu}-\frac{1}{\overline{\mu}})\bB^c) \right)
797 \f}
798 with \f$\overline{\mu}\f$ a function depending of the radial and vertical
799  coordinates \f$(r,z)\f$ such that \f$\overline{\mu}(r,z)\leq \mu(r,\theta,z,t)\f$ for
800  all \f$(r,\theta,z,t)\f$ considered. The first term is then made implicit while
801  the term involving \f$\frac{1}{\mu}\f$ is treated explicitly.
802 
803 
804 Under the previous notations and assuming,
805 \f{align*}{
806  \bar{\mu} &= \mu \quad \text{on} \quad \Sigma, \\
807 \bar{\mu} &= \mu \quad \text{on} \quad \Sigma_{\mu},\\
808 \bar{\mu} &= \mu \quad \text{on} \quad \Gamma_c,
809 \f}
810 the Maxwell equations are approximated as follows.
811 <ol>
812 <li>Initialization of the magnetic field \f$\bB^c\f$, the scalar potential \f$\phi\f$ and the magnetic pressure \f$p_\text{m}^c\f$.
813 <li>For all \f$n\geq 1\f$, computation of \f$(\bB^{c,n+1},\phi^{n+1},p_\text{m}^{c,n+1})\f$
814  solutions of the following formulation for all \f$b\in \bV_h^{\bH^c} \f$,
815  \f$\varphi\in S_h^{\phi}\f$
816  and \f$q\in S_h^{p_\text{m}^c} \f$.
817 \f{align*}{
818 & \int_{\Omega_c}\frac{D\bB^{c,n+1}}{\Delta t}\SCAL \bb
819  + \int _{\Omega_c} \frac{1}{\sigma R_m} \ROT \frac{\bB ^{c,n+1}}{\overline{\mu^c}}\cdot \ROT \bb
820  + \int_{\Omega_v} \muv\frac{\GRAD D\phi^{n+1}}{\Delta t}\SCAL \GRAD\varphi
821  + \int_{\Omega_v} \muv\GRAD\phi^{n+1}\SCAL \GRAD\varphi
822  - \int_{\partial\Omega_v} \muv\varphi \bn\SCAL \GRAD \phi^{n+1}\\
823 & + \beta_1\left(\int_{\Omega_c} \overline{\mu^c}\GRAD p_\text{m}^{c,n+1}\SCAL\bb
824  - \int_{\Omega_c} \bB^{c,n+1}\SCAL\GRAD q + \int_{\Omega_c} h^{2(1-\alpha)}
825  \GRAD p_\text{m}^{c,n+1}\SCAL \GRAD q
826  + \int_{\Omega_c} h^{2\alpha}
827  \overline{\mu^c} \DIV \bB^{c,n+1} \DIV \bb \right)\\
828 & +\int _{\Sigma_{\mu}} \left\{ \frac{1}{\sigma R_m}
829  \ROT \frac{\bB ^{c,n+1}}{\overline{\mu^c}} \right \}
830  \cdot \left ( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
831 & +\beta_3 \int_{\Sigma_{\mu}} h^{-1} \left(
832  \frac{\bB_1^{c,n+1}}{\overline{\mu^c}_1}\times \bn_1^c + \frac{\bB_2^{c,n+1}}{\overline{\mu^c_2}}\times \bn_2^c
833  \right) \SCAL \left ( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
834 & +\beta_1 \int_{\Sigma_{\mu}} h^{-1}
835  \left( {\bB_1^{c,n+1}}\cdot \bn_1^c + {\bB_2^{c,n+1}}\cdot \bn_2^c\right)
836  \SCAL \left( \overline{\mu^c_1}{ \bb_1}\cdot \bn_1^c + \overline{\mu^c_2}{ \bb_2}\cdot \bn_2^c\right )\\
837 & +\int _{\Sigma} \frac{1}{\sigma R_m} \ROT \frac{\bB ^{c,n+1}}{\overline{\mu^c}} \cdot
838  \left( {\bb }\times \bn^c + \nabla \varphi \times \bn^v\right)
839  + \beta_2 \int_{\Sigma} h^{-1}
840  \left( \frac{\bB^{c,n+1}}{\overline{\mu^c}}\CROSS \bn_1^c + {\GRAD \phi ^{n+1}}\CROSS \bn_2^c\right)
841  \SCAL (\bb\CROSS \bnc + \GRAD\varphi\CROSS \bnv)\\
842 & + \beta_1 \int_{\Sigma} h^{-1}
843  \left( {\bB ^{c,n+1}}\cdot \bn_1^c + {\GRAD \phi ^{n+1}} \cdot \bn_2^c\right)
844  \SCAL \left(\overline{{\mu^c}}\bb\cdot \bnc +
845  \GRAD\varphi \cdot \bnv \right )\\
846 & + \int_{\Gamma_c} \frac{1}{\sigma R_m} \ROT \frac{\bB ^{c,n+1}}{\overline{\mu^c}}
847  \cdot ( \bb \CROSS \bnc) + \beta_3\left( \int_{\Gamma_c} h^{-1}
848  \left( \frac{ \bB_\text{bdy}^{c,n+1}}{\overline{\mu^c}}\CROSS \bn^c \right ) \SCAL (\bb\CROSS \bnc)
849  \right)\\
850 & =\\
851 & \int_{\Omega_c} \frac{1}{\sigma R_m} \ROT (\langle \overline{\mu^c},{\mu^c}
852  \rangle {\bB^{*,n+1}})\cdot \ROT \bb \\
853 & \int_{\Omega_c} \left( \frac{1}{\sigma R_m}\bj^s + \bu^{n+1} \times
854  \bB^{*,n+1} \right )\cdot \ROT \bb
855  + \int_{\Sigma_{\mu}} \left \{ \frac{1}{\sigma R_m}\bj^s
856  + \bu^{n+1} \times \bB^{*,n+1} \right \} \cdot
857  \left( { \bb_1}\times \bn_1^c + { \bb_2}\times \bn_2^c\right )\\
858 & +\int_{\Sigma}\left( \frac{1}{\sigma R_m} \bj^s
859  + \bu^{n+1} \times \bB^{*,n+1} \right )
860  \cdot \left ( { \bb }\times \bn^c + \nabla \varphi \times \bn^v\right)
861  +\int_{\Gamma_c}(\ba \times \bn) \cdot \left ({\bb} \times \bn \right)
862  + \int_{\Gamma_v}(\ba \times \bn) \cdot (\nabla \varphi \times \bn)\\
863 & + \int_{\Gamma_c} \left ( \frac{1}{\sigma R_m}\bj^s + \bu^{n+1}
864  \times \bB^{*,n+1} \right )\cdot ( \bb \CROSS \bnc)
865  +\beta_3 \int_{\Gamma_c} h^{-1} \left({\bB}_\text{bdy}^{c,n+1}\CROSS \bn^c \right ) \SCAL (\bb\CROSS \bnc),
866 \f}
867 where we set \f$\bB^{*,n+1}=2\bB^n-\bB^{n-1}\f$ and
868  \f$\langle \overline{\mu^c},{\mu^c}\rangle=\frac{1}{\overline{\mu^c}}- \frac{1}{\mu^c}\f$.
869  The function \f$\bB_\text{bdy}^{c}\f$ is a user function used to impose Dirichlet
870  boundary conditions on the surface \f$\Gamma_c=\partial\Omega_c \setminus \Sigma\f$.
871 
872 
873 
874  */
real(kind=8) time
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic t
Definition: doc_intro.h:196
real(kind=8), dimension(:,:,:), allocatable, target bn
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f Omega_v
Definition: doc_intro.h:212
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f Omega_
Definition: doc_intro.h:211
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic theta
Definition: doc_intro.h:190
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode independently
Definition: doc_intro.h:190
type(personalized_data), public user
real(kind=8), dimension(:,:,:), allocatable, target density
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f a penalty method of the divergence of the velocity field is also implemented The method proceeds as the pressure and the pressure increments< li > For f $n geq0 f let f that matches the Dirichlet boundary conditions of the be the solutions of the following formulation for all f f text
Definition: doc_intro.h:339
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f(r,\theta, z)\f $the cylindrical coordinates
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f a penalty method of the divergence of the velocity field is also implemented The method proceeds as follows
Definition: doc_intro.h:215
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f a penalty method of the divergence of the velocity field is also implemented The method proceeds as the pressure and the pressure increments< li > For f $n geq0 f let f bu
Definition: doc_intro.h:324
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f left
Definition: doc_intro.h:215
real(kind=8), private beta
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f a penalty method of the divergence of the velocity field is also implemented The method proceeds as the pressure and the pressure increments< li > For f $n geq0 f let f that matches the Dirichlet boundary conditions of the problem
Definition: doc_intro.h:324
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f $f_h
Definition: doc_intro.h:201
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f sin_m
Definition: doc_intro.h:204
real(kind=8), parameter, private alpha
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic f with f $t f the time and f $M f the number of Fourier modes considered The unknown f f f f f f f f Omega_v f and f Omega f We also consider f a penalty method of the divergence of the velocity field is also implemented The method proceeds as the pressure and the pressure increments< li > For f $n geq0 f let f that matches the Dirichlet boundary conditions of the be the solutions of the following formulation for all f textbf
Definition: doc_intro.h:327
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic z
Definition: doc_intro.h:190
section doc_intro_frame_work_num_app Numerical approximation subsection doc_intro_fram_work_num_app_Fourier_FEM Fourier Finite element representation The SFEMaNS code uses a hybrid Fourier Finite element formulation The Fourier decomposition allows to approximate the problem’s solutions for each Fourier mode modulo nonlinear terms that are made explicit The variables are then approximated on a meridian section of the domain with a finite element method The numerical approximation of a function f $f f is written in the following generic form
Definition: doc_intro.h:190