CEPS
24.01
Cardiac ElectroPhysiology Simulator
|
Solve laplacian equation with backward Euler, constant time step, using Finite Elements.
Linear system to solve is : K * U^{n+1} = b + f where K = stiffness matrix, b non-homogenous Neumann bc, f source term
Definition at line 46 of file LaplacianSolver.hpp.
#include <LaplacianSolver.hpp>
Public Member Functions | |
LaplacianSolver (LaplacianProblem *problem) | |
Constructor. More... | |
~LaplacianSolver () override | |
Destructor. More... | |
Public Member Functions inherited from FEStaticSolver | |
FEStaticSolver ()=delete | |
Deleted constructor. More... | |
FEStaticSolver (AbstractStaticPdeProblem *problem) | |
Constructor (valid with HeatProblem and PseudoWaveFrontProblem) More... | |
~FEStaticSolver () override | |
Destructor. More... | |
Public Member Functions inherited from AbstractStaticPdeSolver | |
AbstractStaticPdeSolver (AbstractStaticPdeProblem *pb) | |
Constructor with problem. More... | |
virtual | ~AbstractStaticPdeSolver () |
Destructor. More... | |
void | solve () override |
Solves the whole PDE in time. More... | |
void | setupWithParameters (InputParameters *params) override |
Set attributes from input file. Parameters are passed as arguments in case one wants to use other parameters. More... | |
CepsUInt | getExpectedNumberOfOutputs () const final |
Number of files written. More... | |
virtual void | output (DHVecPtr solution, CepsBool immediateWriting=true) |
Prints the solution and flush the writer if immediateWriting is true. More... | |
DHVecPtr | getSolution () const |
Returns a copy of the distributed vector containing the current solution. More... | |
void | enableErrorComputation () |
Sets the comparison with analytic solution. More... | |
CepsArray2< CepsArray3< CepsReal > > | getErrors () const |
Gets the currently computed errors. First index selects absolute(0) orrelative(1) second index is L-inf, L1, L2 selector. More... | |
Public Member Functions inherited from AbstractPdeSolver | |
AbstractPdeSolver ()=delete | |
Deleted default constructor. More... | |
AbstractPdeSolver (AbstractPdeProblem *pb) | |
Constructor with problem. More... | |
AbstractPdeSolver (const AbstractPdeSolver &that)=delete | |
No copy. More... | |
AbstractPdeSolver & | operator= (const AbstractPdeSolver &that)=delete |
No assignment. More... | |
~AbstractPdeSolver () override | |
Destructor. More... | |
void | disableOutput () |
Stops output. More... | |
void | enableOutput () |
Starts output. More... | |
TimeWriter * | getTimeWriter () const |
Access to Time Writer to be able to add data. More... | |
void | disableErrorComputation () |
Sets the comparison with analytic solution. More... | |
Public Member Functions inherited from CepsObject | |
CepsObject ()=default | |
default constructor More... | |
CepsObject (const CepsObject &)=default | |
Copy constructor. More... | |
virtual | ~CepsObject ()=default |
Destructor. More... | |
CepsObject & | operator= (const CepsObject &)=default |
Assignment operator. More... | |
CepsObject * | toBaseObject () |
Returns a pointer to CepsObject class. More... | |
const CepsObject * | toBaseObject () const |
Returns a pointer to CepsObject class, const version. More... | |
Profiler * | getProfiler () const |
Access to profiler. More... | |
Protected Member Functions | |
LaplacianProblem * | getLaplacianProblem () const |
Returns a pointer to the linked problem with appropriate type. More... | |
void | initializeAssemblers () override |
Creates the LHS assembler. More... | |
Protected Member Functions inherited from FEStaticSolver | |
void | assembleAndSolve () override |
Main routine used during solving, assemble the system and solve it. More... | |
Protected Member Functions inherited from AbstractStaticPdeSolver | |
AbstractStaticPdeProblem * | getStaticProblem () const |
Returns a pointer with the appropriate type of pb. More... | |
void | updateAssemblers () override |
Update assemblers and recompute everything is needed. More... | |
Protected Member Functions inherited from AbstractPdeSolver | |
virtual void | initializeWriter () |
Creates the solution writer. More... | |
Additional Inherited Members | |
Protected Attributes inherited from FEStaticSolver | |
FiniteElements * | m_fe |
Geometry and reference FE. More... | |
Protected Attributes inherited from AbstractStaticPdeSolver | |
DHVecPtr | m_solution |
The actual vector with the solution. More... | |
CepsBool | m_writeInitialGuess |
Flag for outputs. More... | |
Protected Attributes inherited from AbstractPdeSolver | |
AbstractPdeProblem * | m_problem |
Link to PDE to solve. More... | |
AbstractDiscretization * | m_discretization |
Link to PDE discretization. More... | |
LinearSystem * | m_linearSystem |
Linear system. More... | |
DMatPtr | m_lhs |
Left hand side of the system. More... | |
DVecPtr | m_rhs |
Right hand side of the system. More... | |
AbstractAssembler * | m_opAsb |
Assembler for the operator matrix. More... | |
DMatPtr | m_opMat |
Matrix of operator. More... | |
AbstractAssembler * | m_bcAsb |
Assembler for Robin and Neumann BCs. More... | |
DMatPtr | m_bcMat |
Matrix of boundary conditions. More... | |
DVecPtr | m_bcVec |
Vector of boundary conditions. More... | |
AbstractAssembler * | m_lapSrcAsb |
Assembler for laplace source terms. More... | |
DMatPtr | m_lapSrcMat |
Matrix used for laplace source terms. More... | |
CepsBool | m_hasRegSrc |
Flag telling if there are regular source terms. More... | |
CepsBool | m_hasLapSrc |
Flag telling if there are Delta f source terms. More... | |
CepsBool | m_useMassLumping |
Put the mass on the diagonal of the matrix. More... | |
CepsBool | m_doOutput |
Enables/disables outputs. More... | |
VtkWriter * | m_writer |
Manages output. More... | |
TimeWriter * | m_timeWriter |
Writer for time dependant data (even for static problems...) More... | |
CepsBool | m_doError |
Compute error wrt analytic solution or reference. More... | |
PdeErrorCalculator * | m_errors |
Error computation. More... | |
Static Protected Attributes inherited from CepsObject | |
static Profiler | m_profiler |
The same profiler for each big object. More... | |
|
explicit |
Constructor.
Definition at line 31 of file LaplacianSolver.cpp.
|
override |
Destructor.
Definition at line 36 of file LaplacianSolver.cpp.
|
protected |
Returns a pointer to the linked problem with appropriate type.
Definition at line 41 of file LaplacianSolver.cpp.
|
overrideprotectedvirtual |
Creates the LHS assembler.
Implements AbstractPdeSolver.
Definition at line 47 of file LaplacianSolver.cpp.