The OhmsLaw class calculates the internal (or analytic) flux term for the hyperresistive term of Ohm's Law: E + nu nabla^2 J = 0, or E_i. 
- d/dx_j (F_ij) = 0 where F_ij = nu nabla J_ij = nu dJ_i/dx_j
This is used in wxm::dfem::variable_adjuster::auxiliary_variables::DivergenceIntegralByParts to calculate E which can then feed into MHD equations via DG calculation using wxm::apps::hallmhd::hyperresistivity::ElectricFieldEffect
- See also
- Warpy constructor: warpy::apps::mhd::hallmhd::hyperresistivity::hyperresistivity::ohms_law 
|  | 
|  | OhmsLaw () | 
|  | Constructor. 
 | 
|  | 
|  | ~OhmsLaw () override | 
|  | Destructor. 
 | 
|  | 
| void | setup (const WxCryptSet &wxc) override | 
|  | Setup. 
 | 
|  | 
| const std::vector< int > & | getInputVariableIndexes (int flag) const override | 
|  | Get input variable indices. 
 | 
|  | 
| const std::vector< int > & | getOutputVariableIndexes (int flag) const override | 
|  | Get output variable indices. 
 | 
|  | 
| real | internal_flux (const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const override | 
|  | Internal flux definition. 
 | 
|  | 
| 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 override | 
|  | Numerical flux definition. 
 | 
|  | 
|  | 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 | 
|  |