|
ThunderEgg
1.0.0
|
This is an Operator where derived classes only have to implement the two virtual functions that operate on single patch. More...
#include <PatchOperator.h>


Public Member Functions | |
| PatchOperator (const Domain< D > &domain, const GhostFiller< D > &ghost_filler) | |
| Construct a new Patch Operator object. More... | |
| virtual PatchOperator< D > * | clone () const override=0 |
| Clone this patch operator. More... | |
| virtual | ~PatchOperator () |
| Destroy the PatchOperator object. | |
| virtual void | applySinglePatch (const PatchInfo< D > &pinfo, const PatchView< const double, D > &u_view, const PatchView< double, D > &f_view) const =0 |
| Apply the operator to a single patch. More... | |
| virtual void | modifyRHSForInternalBoundaryConditions (const PatchInfo< D > &pinfo, const PatchView< const double, D > &u_view, const PatchView< double, D > &f_view) const =0 |
| Treat the internal patch boundaries as domain boundaires and modify RHS accordingly. More... | |
| virtual void | applySinglePatchWithInternalBoundaryConditions (const PatchInfo< D > &pinfo, const PatchView< const double, D > &u_view, const PatchView< double, D > &f_view) const =0 |
| Apply the operator to a single patch. More... | |
| void | apply (const Vector< D > &u, Vector< D > &f) const override |
| Apply the operator. More... | |
| const Domain< D > & | getDomain () const |
| Get the Domain object associated with this PatchOperator. | |
| const GhostFiller< D > & | getGhostFiller () const |
| Get the GhostFiller object associated with this PatchOperator. | |
Public Member Functions inherited from ThunderEgg::Operator< D > | |
| virtual | ~Operator () |
| Destroy the Operator object. | |
This is an Operator where derived classes only have to implement the two virtual functions that operate on single patch.
| D | the number of Cartesian dimensions. |
|
inline |
Construct a new Patch Operator object.
This sets the Domain and GhostFiller
| domain | the Domain |
| ghost_filler | the GhostFiller |
|
inlineoverridevirtual |
Apply the operator.
This will update the ghost values in u, and then will call applySinglePatch for each patch
| u | the left hand side |
| f | the right hand side |
Implements ThunderEgg::Operator< D >.
|
pure virtual |
Apply the operator to a single patch.
The ghost values in u will be updated to the latest values, and should not need to be modified
| pinfo | the patch |
| u_view | the solution |
| f_view | the left hand side |
Implemented in ThunderEgg::VarPoisson::StarPatchOperator< D >, and ThunderEgg::Poisson::StarPatchOperator< D >.
|
pure virtual |
Apply the operator to a single patch.
The ghost values in u will be updated to the latest values, and should not need to be modified
| pinfo | the patch |
| u_view | the solution |
| f_view | the left hand side |
Implemented in ThunderEgg::VarPoisson::StarPatchOperator< D >, and ThunderEgg::Poisson::StarPatchOperator< D >.
|
overridepure virtual |
Clone this patch operator.
Implements ThunderEgg::Operator< D >.
Implemented in ThunderEgg::VarPoisson::StarPatchOperator< D >, and ThunderEgg::Poisson::StarPatchOperator< D >.
|
pure virtual |
Treat the internal patch boundaries as domain boundaires and modify RHS accordingly.
This will be u_viewed in patch solvers to formulate a RHS for the individual patch to solve for.
| pinfo | the patch |
| u_view | the left hand side |
| f_view | the right hand side |
Implemented in ThunderEgg::VarPoisson::StarPatchOperator< D >, and ThunderEgg::Poisson::StarPatchOperator< D >.