WARPXM v1.10.0
|
The WmVariableAdjusterGradient class is a gradient interior penalty approximation variable adjuster. More...
#include <gradient_interior_penalty_internal_approximation.h>
The WmVariableAdjusterGradient class is a gradient interior penalty approximation variable adjuster.
Specifically we are looking for the calculation Y_ijk == dq_i/dx_j|_k = dq_i/d_\xi_l d\xi_l/d_x_j|_k = d(q_im \psi_m)/d\xi_l J^-1_lj|_k = J^-1_lj q_im d\psi_m/d_\xi_l|_k where it can be derived for nodal basis Dr_klm == d\psi_m/d_\xi_l|_k = M^-1_kn A_nlm so then Y_ijk = J^-1_lj q_im Dr_klm
Public Member Functions | |
gradient_interior_penalty_internal_approximation ()=default | |
void | setup (const WxCryptSet &wxc) override |
Setup the spatial solver using the cryptset. | |
void | solve (real time, variables_type &input) override |
Solves the spatial system and puts result in _rhs. | |
![]() | |
variable_adjuster_t () | |
Constructor. | |
void | setup (const WxCryptSet &wxc) override |
Setup the spatial solver using the cryptset. | |
virtual void | solve (real time, variables_type &input)=0 |
applies the variable adjuster to input | |
std::vector< wxm::array::patch_array_t * > | get_patch_arrays (const variables_type &in) |
void | process () override |
virtual const std::vector< size_t > & | get_input_indices () const |
int | priority () const |
Getter function for priority. | |
virtual void | Barrier (const WxMsgBase &msg, const real time, variables_type &input) |
An opportunity for the variable adjuster to perform any MPI operations it needs to after solve is called. | |
![]() | |
WmPatchProcess () | |
virtual | ~WmPatchProcess ()=default |
void | step () |
virtual void | process ()=0 |
void | setPatch (const WmUnstructuredPatch *patch) |
void | setParentTaskProcessor (WmPatchProcessor *taskProcessor) |
virtual std::string | name (std::string prefix="patchedProcessor.") const |
virtual void | setup (const WxCryptSet &wxc) |
void | setParentSolver (const WmSolverBase *solver) |
void | setDt (WxStepper::time_t dt) |
void | setTime (WxStepper::time_t time) |
WxStepper::time_t | getSuggestedDt () const |
const WmUnstructuredPatch & | get_patch () const |
const WmSolver & | get_solver () const |
Protected Member Functions | |
void | alloc_fluxes () |
void | zero_fluxes () |
void | ex_kernel (const WxRange &face_scope_range, std::vector< wxm::array::patch_array_t * > &input) |
void | ldg_scheme (const int faceIndex, const int local_face_node_index, const int global_node_index_in, const int global_node_index_out, solverVariables_t *pSV, std::vector< wxm::array::patch_array_t * > &input) |
void | ip_scheme (const int faceIndex, const int local_face_node_index, const int global_node_index_in, const int global_node_index_out, solverVariables_t *pSV, std::vector< wxm::array::patch_array_t * > &input) |
void | in_kernel (const WxRange &element_scope_range, std::vector< wxm::array::patch_array_t * > &input) |
void | co_kernel (const WxRange &element_scope_range, std::vector< wxm::array::patch_array_t * > &input) |
Additional Inherited Members | |
![]() | |
typedef wxm::temporal_solver::variables_type | variables_type |
|
default |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
overridevirtual |
Setup the spatial solver using the cryptset.
wxc | The cryptset |
Reimplemented from WmPatchProcess.
|
overridevirtual |
Solves the spatial system and puts result in _rhs.
Implements wxm::dfem::variable_adjuster::variable_adjuster_t.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |