ABLATE Source Documentation  0.12.34
ablate::monitors::BoundarySolverMonitor Class Reference

#include <boundarySolverMonitor.hpp>

+ Inheritance diagram for ablate::monitors::BoundarySolverMonitor:

Public Member Functions

 ~BoundarySolverMonitor () override
 
void Register (std::shared_ptr< solver::Solver > solver) override
 
PetscMonitorFunction GetPetscFunction () override
 
const std::string & GetId () const override
 
PetscErrorCode Save (PetscViewer viewer, PetscInt sequenceNumber, PetscReal time) override
 
PetscErrorCode Restore (PetscViewer viewer, PetscInt sequenceNumber, PetscReal time) override
 
- Public Member Functions inherited from ablate::monitors::Monitor
virtual void * GetContext ()
 
- Public Member Functions inherited from ablate::io::Serializable
virtual SerializerType Serialize () const
 

Additional Inherited Members

- Public Types inherited from ablate::io::Serializable
enum class  SerializerType { none , collective , serial }
 
- Protected Member Functions inherited from ablate::monitors::Monitor
std::shared_ptr< solver::SolverGetSolver ()
 
- Static Protected Member Functions inherited from ablate::io::Serializable
static PetscErrorCode SaveKeyValue (PetscViewer viewer, const char *name, PetscScalar value)
 
static PetscErrorCode RestoreKeyValue (PetscViewer viewer, const char *name, PetscScalar &value)
 
template<class T >
static PetscErrorCode SaveKeyValue (PetscViewer viewer, const char *name, T value)
 
template<class T >
static PetscErrorCode RestoreKeyValue (PetscViewer viewer, const char *name, T &value)
 
template<class T >
static SerializerType DetermineSerializerType (const T &types)
 

Detailed Description

use to call the boundary solver to output any specific output variables

Constructor & Destructor Documentation

◆ ~BoundarySolverMonitor()

ablate::monitors::BoundarySolverMonitor::~BoundarySolverMonitor ( )
override

Clean up the petsc objects

Member Function Documentation

◆ GetId()

const std::string& ablate::monitors::BoundarySolverMonitor::GetId ( ) const
inlineoverridevirtual

Should be unique for the monitor

Returns

Implements ablate::io::Serializable.

◆ GetPetscFunction()

PetscMonitorFunction ablate::monitors::BoundarySolverMonitor::GetPetscFunction ( )
inlineoverridevirtual

This is not needed because this is only called upon serialize.

Returns

Reimplemented from ablate::monitors::Monitor.

◆ Register()

void ablate::monitors::BoundarySolverMonitor::Register ( std::shared_ptr< solver::Solver solver)
overridevirtual

Register this solver with the boundary solver

Parameters
solverthe solver must be of type ablate::boundarySolver::BoundarySolver

Reimplemented from ablate::monitors::Monitor.

◆ Restore()

PetscErrorCode ablate::monitors::BoundarySolverMonitor::Restore ( PetscViewer  viewer,
PetscInt  sequenceNumber,
PetscReal  time 
)
inlineoverridevirtual

This is not needed for ghe boundary solver monitor

Parameters
viewer
sequenceNumber
time

Implements ablate::io::Serializable.

◆ Save()

PetscErrorCode ablate::monitors::BoundarySolverMonitor::Save ( PetscViewer  viewer,
PetscInt  sequenceNumber,
PetscReal  time 
)
overridevirtual

Compute and store the current boundary output values

Parameters
viewer
sequenceNumber
time

Implements ablate::io::Serializable.


The documentation for this class was generated from the following files: