ThunderEgg
1.0.0
|
Implementation of a full multigrid cycle. More...
#include <FMGCycle.h>
Public Member Functions | |
FMGCycle (const Level< D > &finest_level, const CycleOpts &opts) | |
Create new FMGCycle. More... | |
FMGCycle< D > * | clone () const override |
Get a clone of this FMGCycle. More... | |
Public Member Functions inherited from ThunderEgg::GMG::Cycle< D > | |
Cycle (const Level< D > &finest_level) | |
Create new cycle object. More... | |
void | apply (const Vector< D > &f, Vector< D > &u) const |
Run one iteration of the cycle. More... | |
const Level< D > & | getFinestLevel () const |
Get the finest Level. More... | |
Public Member Functions inherited from ThunderEgg::Operator< D > | |
virtual | ~Operator () |
Destroy the Operator object. | |
Protected Member Functions | |
void | visit (const Level< D > &level, const Vector< D > &f, Vector< D > &u) const override |
Virtual visit function that needs to be implemented in derived classes. More... | |
Protected Member Functions inherited from ThunderEgg::GMG::Cycle< D > | |
Vector< D > | restrict (const Level< D > &level, const Vector< D > &f, const Vector< D > &u) const |
Prepare vectors for coarser level. More... | |
Implementation of a full multigrid cycle.
|
inline |
Create new FMGCycle.
finest_level | the finest level |
opts | the options for the cycle pre, post, coarse, and mid sweeps are used |
|
inlineoverridevirtual |
Get a clone of this FMGCycle.
Implements ThunderEgg::Operator< D >.
|
inlineoverrideprotectedvirtual |
Virtual visit function that needs to be implemented in derived classes.
level | the level currently begin visited. |
f | the rhs vector cooresponding to the level |
u | the solution vector cooresponding to the level |
Implements ThunderEgg::GMG::Cycle< D >.