File laplacexz.hxx#

Typedefs

using RegisterLaplaceXZ = LaplaceXZFactory::RegisterInFactory<DerivedType>#
using RegisterUnavailableLaplaceXZ = LaplaceXZFactory::RegisterUnavailableInFactory#
class LaplaceXZFactory : public Factory<LaplaceXZ, LaplaceXZFactory, Mesh*, Options*, CELL_LOC>#

Public Functions

inline ReturnType create(Mesh *mesh = nullptr, Options *options = nullptr, CELL_LOC loc = CELL_CENTRE) const#
inline ReturnType create(const std::string &type, Options *options) const#

Public Static Functions

static void ensureRegistered()#

Public Static Attributes

static constexpr auto type_name = "LaplaceXZ"#
static constexpr auto section_name = "laplacexz"#
static constexpr auto option_name = "type"#
static constexpr auto default_type = "cyclic"#
class LaplaceXZ#

Subclassed by LaplaceXZpetsc

Public Functions

inline LaplaceXZ(Mesh *m = nullptr, Options *options = nullptr, const CELL_LOC loc = CELL_CENTRE)#
virtual ~LaplaceXZ() = default#
virtual void setCoefs(const Field2D &A, const Field2D &B) = 0#
inline virtual void setCoefs(const Field3D &A, const Field3D &B)#
virtual Field3D solve(const Field3D &b, const Field3D &x0) = 0#

Public Static Functions

static inline std::unique_ptr<LaplaceXZ> create(Mesh *m = nullptr, Options *opt = nullptr, CELL_LOC loc = CELL_CENTRE)#

Protected Attributes

Mesh *localmesh#

The mesh this operates on, provides metrics and communication.

CELL_LOC location#

Protected Static Attributes

static const int INVERT_DC_GRAD = 1#
static const int INVERT_AC_GRAD = 2#
static const int INVERT_SET = 16#
static const int INVERT_RHS = 32#