Class to set gradient variables for conducting wall for Hall MHD.
- See also
- Latex Documentation: MHD BC File
-
Warpy constructor: warpy.apps.mhd.hallmhd.hallmhd.conducting_wall_freeslip_gradients
Conducting Wall applies:
\begin{align*}
\boldsymbol{\hat{n}} \cdot \boldsymbol{B} =& 0
\end{align*}
\begin{align*}
\boldsymbol{\hat{n}} \cdot \boldsymbol{v} =& 0
\end{align*}
\begin{align*}
\boldsymbol{\hat{n}} \times \boldsymbol{E} =& 0
\end{align*}
where
\begin{align}
\boldsymbol{E}
=&
-\boldsymbol{v}\times\boldsymbol{B}
+ \frac{1}{n_{\mathrm{e}}}\left(\boldsymbol{j}\times\boldsymbol{B} -
\frac{1}{\left(\omega_{c}\tau\right)}\nabla p_{\mathrm{e}}\right)
+ \frac{\left(\nu_{p}\tau\right)}{\left(\omega_{c}\tau\right)}\eta\boldsymbol{j}
\end{align}
This leads to a condition on the tangential components of \(\boldsymbol{j}\). If we assume we are in the frame of the wall, where \(\boldsymbol{\hat{n}} = \boldsymbol{\hat{x}}\), and \(\theta \equiv
\frac{p_\mathrm{e}}{p_\mathrm{i}} \rightarrow \frac{p_\mathrm{e}}{p} =
\frac{\theta}{\left(\theta + 1\right)} \), this leads to
\begin{align*}
j_{y}
=&
\frac{\left(\omega_{c}\tau\right)}{\left(\nu_{p}\tau\right)}\frac{B_{z}}{n_{\mathrm{e}}\eta}j_{x}
+ \frac{1}{n_{\mathrm{e}}\eta\left(\nu_{p}\tau\right)}\frac{\theta}{\left(\theta +
1\right)} \left(\nabla p\right)_{y}
\end{align*}
\begin{align*}
j_{z}
=&
-\frac{\left(\omega_{c}\tau\right)}{\left(\nu_{p}\tau\right)}\frac{B_{y}}{n_{\mathrm{e}}\eta}j_{x}
+ \frac{1}{n_{\mathrm{e}}\eta\left(\nu_{p}\tau\right)}\frac{\theta}{\left(\theta +
1\right)} \left(\nabla p\right)_{z}
\end{align*}
|
| ConductingWallFreeslipGradients () |
|
| ~ConductingWallFreeslipGradients () override |
|
void | setup (const WxCryptSet &wxc) override |
|
const std::vector< int > & | getInputVariableIndexes (int flag) const override |
|
const std::vector< int > & | getAuxiliaryVariableIndexes (int flag) const override |
|
const std::vector< int > & | getOutputVariableIndexes (int flag) const override |
|
void | bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const override |
| Boundary Condition Application which sets the boundary condition on ghost nodes.
|
|
| WmApplication () |
|
virtual | ~WmApplication ()=default |
|
virtual void | setup (const WxCryptSet &wxc) |
|
virtual const std::vector< int > & | getAuxiliaryVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
|
virtual const std::vector< int > & | getCrossVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
|
const std::vector< std::string > & | getBoundaryNames () const |
|
bool | isOnBoundary (const std::string &boundaryName) const |
|
bool | has (int flag) const |
|
virtual real | numerical_flux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
|
virtual real | internal_flux (const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const |
|
virtual real | source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const |
|
virtual void | bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const |
| Boundary Condition Application which sets the boundary condition on ghost nodes.
|
|
virtual real | bcNumericalFlux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
|
virtual void | conserved_to_primitive (const real *q, const real *aux, real *w) const |
|
virtual void | primitive_to_conserved (const real *w, const real *aux, real *q) const |
|
virtual void | evaluate_function (const real *q, const real *aux, const solverVariables_t *pSV, real *result) const |
|
virtual void | bc_q_kinetic (const real *q_in, const real *aux_in, const solverVariables_t *pFV, real *q_out) const |
|
std::shared_ptr< std::string > | app_name () |
|
virtual const std::vector< int > & | getInputVariableIndexes (int flag=0) const |
|
virtual const std::vector< int > & | getOutputVariableIndexes (int flag=0) const |
|