Skip to content

Draft: Streamline upwinding by using CoefFnc

Description

Artificial diffusion does not take advantage of the known direction of motion. More recent techniques, such as streamline diffusion (SD) and streamline upwind Petrov Galerkin (SUPG) consider this phenomenon.\ A vector form of streamline upwinding is proposed and applied in a formulation using a magnetic vector potential and an electric scalar potential. The formulation is implemented using edge elements for the vector potential. To deduce a vector form of the streamline upwinding Galerkin finite-element equation, the governing equation is tested by a modified vector weight function

\widetilde{\mathbf{A'}} = \mathbf{A'} - \tau \gamma \mathbf{v}\times (\nabla \times \mathbf{A'}),

it introduces upwinding only along velocity direction (By reducing the weights in the transverse direction to velocity).

\int_{\Omega_{\mathbf{v}}}(\nabla \times{\nu \nabla \times{\mathbf{A}}} + \gamma \nabla{V} {\color{purple}- \gamma(\mathbf{v} \times (\nabla \times{\mathbf{A}}))})\cdot {\color{cyan}\widetilde{\mathbf{A}^{'}}} = 0

After brief mathematical manipulation, the upwind terms look like

-\int_{\Omega_{\mathbf{v}}}( \gamma \nabla{V} {\color{purple}- \gamma(\mathbf{v} \times (\nabla \times{\mathbf{A}}))}) \cdot {\color{cyan}(\tau \gamma \mathbf{v}\times (\nabla \times \mathbf{A'}))},

Now, the only remaining task is to select the parameter \tau. For each element a stabilization factor is chosen which depends on the geometry of the element, its material properties and velocity

    \begin{equation*}
        \tau_e = \frac{h_e}{2 \gamma |\mathbf{v}|} (\coth(\frac{\text{Pe}}{2}) - \frac{2}{\text{Pe}}),
    \end{equation*}

where Pe and h are, respectively, the element Peclet number and element size along velocity direction.

    \begin{align*}
        \text{Pe} = \frac{\gamma |\mathbf{v}| h_e}{\nu}\\
        h_e = \frac{2}{\Sigma_n |\frac{\mathbf{v}}{|\mathbf{v}|} \cdot \nabla{w_n}|},
    \end{align*}

where n is each node of the element and w_n is the Galerkin weight function for the node n (weight function of electric scalar potential).

IMPORTANT TO KNOW:

In this merge request, the stabilization factor is added by using Coefficient Functions isntead of a new Operator. Note that, this merge request is based on the Merge Request !105 (closed), which means that the stabilization factor can still be computed by the new Operator by simply uncommenting the corresponding line of code in MagEdgeMixedAVPDE.

( Summarise the changes introduced in this merge request ) Testsuite merge request: ( no Testsuite changes | paste a link to the Testsuite merge request )

Check before assigning to a maintainer for review

  • The history is clean
  • New Code is well-documented and understandable
  • There is a test case (in case of new functionality)
  • Every commit passes the pipeline

Maintainer checks before merge

  • Review is approved, and all comments are resolved
  • Check for Testsuite changes, if yes check
    • Testsuite merge request merges fast-forward
    • Testsuite-submodule SHA of every CFS commit references a commit in Testsuite Merge Request
    • Testsuite-submodule SHA of last CFS commit points to HEAD of corresponding Testsuite branch
  • Pipeline passes for every commit
    • all tests of the stage test pass
    • tests in the stage test_extra run
    • new tests are actually running (e.g. check if they appear on CDash)
Edited by Lukas Schafferhofer

Merge request reports

Loading