GRINS-0.8.0
|
Class to hold typical boundary condition methods. More...
#include <pressure_pinning.h>
Public Member Functions | |
PressurePinning (const GetPot &input, const std::string &physics_name) | |
~PressurePinning () | |
void | check_pin_location (const libMesh::MeshBase &mesh) |
Check the mesh to ensure pin location is found. More... | |
void | pin_value (libMesh::DiffContext &context, const bool request_jacobian, const GRINS::VariableIndex var, const double penalty=1.0) |
The idea here is to pin a variable to a particular value if there is a null space - e.g. More... | |
Private Attributes | |
libMesh::Number | _pin_value |
Value of pressure we wish to pin. More... | |
libMesh::Point | _pin_location |
Location we want to pin the pressure. More... | |
libMesh::dof_id_type | _pinned_elem_id |
Cache element id for element that contains _pin_location. More... | |
Class to hold typical boundary condition methods.
This class holds functions to apply generic versions of Dirichlet and Neumann boundary conditions.
Definition at line 52 of file pressure_pinning.h.
GRINS::PressurePinning::PressurePinning | ( | const GetPot & | input, |
const std::string & | physics_name | ||
) |
Definition at line 42 of file pressure_pinning.C.
References _pin_location, and _pin_value.
GRINS::PressurePinning::~PressurePinning | ( | ) |
Definition at line 69 of file pressure_pinning.C.
void GRINS::PressurePinning::check_pin_location | ( | const libMesh::MeshBase & | mesh | ) |
Check the mesh to ensure pin location is found.
If the pin location is found, we set _pin_location_found to true (for assertion later). If not found, we throw an error.
Definition at line 74 of file pressure_pinning.C.
References _pin_location, and _pinned_elem_id.
Referenced by GRINS::VariablePinning::auxiliary_init().
void GRINS::PressurePinning::pin_value | ( | libMesh::DiffContext & | context, |
const bool | request_jacobian, | ||
const GRINS::VariableIndex | var, | ||
const double | penalty = 1.0 |
||
) |
The idea here is to pin a variable to a particular value if there is a null space - e.g.
pressure for IncompressibleNavierStokes.
Definition at line 106 of file pressure_pinning.C.
References _pin_location, _pin_value, and _pinned_elem_id.
|
private |
Location we want to pin the pressure.
Definition at line 78 of file pressure_pinning.h.
Referenced by check_pin_location(), pin_value(), and PressurePinning().
|
private |
Value of pressure we wish to pin.
Definition at line 75 of file pressure_pinning.h.
Referenced by pin_value(), and PressurePinning().
|
private |
Cache element id for element that contains _pin_location.
We will initalize this to libMesh::DofObject::invalid_id and use that to check whether or not we located an element that contains the _pin_location.
Definition at line 84 of file pressure_pinning.h.
Referenced by check_pin_location(), and pin_value().