File boundary_standard.hxx¶
-
class BoundaryDirichlet_2ndOrder : public BoundaryOp¶
- #include <boundary_standard.hxx>
Some standard boundary conditions.
Dirichlet boundary condition set half way between guard cell and grid cell at 2nd order accuracy
Public Functions
-
inline BoundaryDirichlet_2ndOrder()¶
-
inline BoundaryDirichlet_2ndOrder(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryDirichlet_2ndOrder()¶
-
class BoundaryDirichlet : public BoundaryOp¶
- #include <boundary_standard.hxx>
Dirichlet (set to zero) boundary condition.
Public Functions
-
inline BoundaryDirichlet()¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
Private Members
-
std::shared_ptr<FieldGenerator> gen¶
-
inline BoundaryDirichlet()¶
-
class BoundaryDirichlet_O3 : public BoundaryOp¶
- #include <boundary_standard.hxx>
3nd-order boundary condition
Public Functions
-
inline BoundaryDirichlet_O3()¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
Private Members
-
std::shared_ptr<FieldGenerator> gen¶
-
inline BoundaryDirichlet_O3()¶
-
class BoundaryDirichlet_O4 : public BoundaryOp¶
- #include <boundary_standard.hxx>
4th-order boundary condition
Public Functions
-
inline BoundaryDirichlet_O4()¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
Private Members
-
std::shared_ptr<FieldGenerator> gen¶
-
inline BoundaryDirichlet_O4()¶
-
class BoundaryDirichlet_4thOrder : public BoundaryOp¶
- #include <boundary_standard.hxx>
Dirichlet boundary condition set half way between guard cell and grid cell at 4th order accuracy.
Public Functions
-
inline BoundaryDirichlet_4thOrder()¶
-
inline BoundaryDirichlet_4thOrder(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryDirichlet_4thOrder()¶
-
class BoundaryNeumann_NonOrthogonal : public BoundaryOp¶
- #include <boundary_standard.hxx>
Neumann (zero-gradient) boundary condition for non-orthogonal meshes.
Public Functions
-
inline BoundaryNeumann_NonOrthogonal()¶
-
inline BoundaryNeumann_NonOrthogonal(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryNeumann_NonOrthogonal()¶
-
class BoundaryNeumann2 : public BoundaryOp¶
- #include <boundary_standard.hxx>
Neumann (zero-gradient) boundary condition, using 2nd order on boundary.
Public Functions
-
inline BoundaryNeumann2()¶
-
inline BoundaryNeumann2(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryNeumann2()¶
-
class BoundaryNeumann_2ndOrder : public BoundaryOp¶
- #include <boundary_standard.hxx>
Neumann boundary condition set half way between guard cell and grid cell at 2nd order accuracy.
Public Functions
-
inline BoundaryNeumann_2ndOrder()¶
-
inline BoundaryNeumann_2ndOrder(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryNeumann_2ndOrder()¶
-
class BoundaryNeumann : public BoundaryOp¶
Public Functions
-
inline BoundaryNeumann()¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
Private Members
-
std::shared_ptr<FieldGenerator> gen¶
-
inline BoundaryNeumann()¶
-
class BoundaryNeumann_4thOrder : public BoundaryOp¶
- #include <boundary_standard.hxx>
Neumann boundary condition set half way between guard cell and grid cell at 4th order accuracy.
Public Functions
-
inline BoundaryNeumann_4thOrder()¶
-
inline BoundaryNeumann_4thOrder(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryNeumann_4thOrder()¶
-
class BoundaryNeumann_O4 : public BoundaryOp¶
- #include <boundary_standard.hxx>
Neumann boundary condition set half way between guard cell and grid cell at 4th order accuracy.
Public Functions
-
inline BoundaryNeumann_O4()¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
Private Members
-
std::shared_ptr<FieldGenerator> gen¶
-
inline BoundaryNeumann_O4()¶
-
class BoundaryNeumannPar : public BoundaryOp¶
- #include <boundary_standard.hxx>
NeumannPar (zero-gradient) boundary condition on the variable / sqrt(g_22)
Public Functions
-
inline BoundaryNeumannPar()¶
-
inline BoundaryNeumannPar(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryNeumannPar()¶
-
class BoundaryRobin : public BoundaryOp¶
- #include <boundary_standard.hxx>
Robin (mix of Dirichlet and Neumann)
Public Functions
-
inline BoundaryRobin()¶
-
inline BoundaryRobin(BoundaryRegion *region, BoutReal a, BoutReal b, BoutReal g)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryRobin()¶
-
class BoundaryConstGradient : public BoundaryOp¶
- #include <boundary_standard.hxx>
Constant gradient (zero second derivative)
Public Functions
-
inline BoundaryConstGradient()¶
-
inline BoundaryConstGradient(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryConstGradient()¶
-
class BoundaryZeroLaplace : public BoundaryOp¶
- #include <boundary_standard.hxx>
Zero Laplacian, decaying solution.
Public Functions
-
inline BoundaryZeroLaplace()¶
-
inline BoundaryZeroLaplace(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryZeroLaplace()¶
-
class BoundaryZeroLaplace2 : public BoundaryOp¶
- #include <boundary_standard.hxx>
Zero Laplacian.
Public Functions
-
inline BoundaryZeroLaplace2()¶
-
inline BoundaryZeroLaplace2(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryZeroLaplace2()¶
-
class BoundaryConstLaplace : public BoundaryOp¶
- #include <boundary_standard.hxx>
Constant Laplacian, decaying solution.
Public Functions
-
inline BoundaryConstLaplace()¶
-
inline BoundaryConstLaplace(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryConstLaplace()¶
-
class BoundaryDivCurl : public BoundaryOp¶
- #include <boundary_standard.hxx>
Vector boundary condition Div(B) = 0, Curl(B) = 0.
Public Functions
-
inline BoundaryDivCurl()¶
-
inline BoundaryDivCurl(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryDivCurl()¶
-
class BoundaryFree : public BoundaryOp¶
- #include <boundary_standard.hxx>
Free boundary condition (evolve the field in the guard cells, using non-centred derivatives to calculate the ddt)
Public Functions
-
inline BoundaryFree()¶
-
inline BoundaryFree(BoundaryRegion *region, BoutReal setval = 0.)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryFree()¶
-
class BoundaryFree_O2 : public BoundaryOp¶
- #include <boundary_standard.hxx>
Alternative free boundary condition (evolve the field in the guard cells, using non-centred derivatives to calculate the ddt)
Public Functions
-
inline BoundaryFree_O2()¶
-
inline BoundaryFree_O2(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryFree_O2()¶
-
class BoundaryFree_O3 : public BoundaryOp¶
Public Functions
-
inline BoundaryFree_O3()¶
-
inline BoundaryFree_O3(BoundaryRegion *region)¶
-
virtual BoundaryOp *clone(BoundaryRegion *region, const std::list<std::string> &args) override¶
-
inline BoundaryFree_O3()¶
-
class BoundaryRelax : public BoundaryModifier¶
- #include <boundary_standard.hxx>
Convert a boundary condition to a relaxing one.
Public Functions
-
inline BoundaryRelax()¶
-
inline BoundaryRelax(BoundaryOp *operation, BoutReal rate)¶
-
virtual BoundaryOp *cloneMod(BoundaryOp *op, const std::list<std::string> &args) override¶
-
inline BoundaryRelax()¶
-
class BoundaryWidth : public BoundaryModifier¶
- #include <boundary_standard.hxx>
Increase the width of a boundary.
Public Functions
-
inline BoundaryWidth()¶
-
inline BoundaryWidth(BoundaryOp *operation, int wid)¶
-
virtual BoundaryOp *cloneMod(BoundaryOp *op, const std::list<std::string> &args) override¶
Private Members
-
int width¶
-
inline BoundaryWidth()¶
-
class BoundaryToFieldAligned : public BoundaryModifier¶
- #include <boundary_standard.hxx>
Convert input field fromFieldAligned, apply boundary and then convert back toFieldAligned Equivalent to converting the boundary condition to “Field Aligned” from “orthogonal”
Public Functions
-
inline BoundaryToFieldAligned()¶
-
inline BoundaryToFieldAligned(BoundaryOp *operation)¶
-
virtual BoundaryOp *cloneMod(BoundaryOp *op, const std::list<std::string> &args) override¶
-
inline BoundaryToFieldAligned()¶
-
class BoundaryFromFieldAligned : public BoundaryModifier¶
- #include <boundary_standard.hxx>
Convert input field toFieldAligned, apply boundary and then convert back fromFieldAligned Equivalent to converting the boundary condition from “Field Aligned” to “orthogonal”
Public Functions
-
inline BoundaryFromFieldAligned()¶
-
inline BoundaryFromFieldAligned(BoundaryOp *operation)¶
-
virtual BoundaryOp *cloneMod(BoundaryOp *op, const std::list<std::string> &args) override¶
-
inline BoundaryFromFieldAligned()¶