![]() |
KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Implements a wall condition for the Navier-Stokes (and Stokes) monolithic formulations This condition is intended to be used in combination with Navier-Stokes (or Stokes) monolithic formulations. It supports the Neumann BC contribution as well as the addition of a wall law contribution through the TWallModel template argument. Such TWallModel must be a class implementing the wall model RHS and LHS Gauss point contributions (as example see @NavierSlipWallLaw). Current condition also has optional features that help numerical stability such as the outlet inflow energy correction or the spurious tangential velocity correction for pure slip boundaries. More...
#include <navier_stokes_wall_condition.h>
Classes | |
struct | ConditionDataStruct |
Public Member Functions | |
Life Cycle | |
NavierStokesWallCondition (IndexType NewId=0) | |
Default constructor. More... | |
NavierStokesWallCondition (IndexType NewId, const NodesArrayType &ThisNodes) | |
Constructor using an array of nodes. More... | |
NavierStokesWallCondition (IndexType NewId, GeometryType::Pointer pGeometry) | |
Constructor using Geometry. More... | |
NavierStokesWallCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties) | |
Constructor using Properties. More... | |
NavierStokesWallCondition (NavierStokesWallCondition const &rOther) | |
Copy constructor. More... | |
~NavierStokesWallCondition () override | |
Destructor. More... | |
Operators | |
NavierStokesWallCondition & | operator= (NavierStokesWallCondition const &rOther) |
Assignment operator. More... | |
Operations | |
Condition::Pointer | Create (IndexType NewId, NodesArrayType const &ThisNodes, PropertiesType::Pointer pProperties) const override |
Create a new NavierStokesWallCondition object. More... | |
Condition::Pointer | Create (IndexType NewId, GeometryType::Pointer pGeom, PropertiesType::Pointer pProperties) const override |
Create a new NavierStokesWallCondition object. More... | |
Condition::Pointer | Clone (IndexType NewId, NodesArrayType const &rThisNodes) const override |
void | CalculateLocalSystem (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) override |
Calculates the LHS and RHS condition contributions. More... | |
void | CalculateLeftHandSide (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) override |
Calculates the RHS condition contributions. More... | |
void | CalculateRightHandSide (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) override |
Calculates the RHS condition contributions. More... | |
int | Check (const ProcessInfo &rCurrentProcessInfo) const override |
Condition check. More... | |
void | EquationIdVector (EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const override |
Provides the global indices for each one of this condition's local rows This determines the elemental equation ID vector for all elemental DOFs. More... | |
void | GetDofList (DofsVectorType &rConditionDofList, const ProcessInfo &rCurrentProcessInfo) const override |
Returns a list of the element's Dofs. More... | |
void | Calculate (const Variable< array_1d< double, 3 > > &rVariable, array_1d< double, 3 > &Output, const ProcessInfo &rCurrentProcessInfo) override |
Input and output | |
std::string | Info () const override |
Turn back information as a string. More... | |
void | PrintInfo (std::ostream &rOStream) const override |
Print information about this object. More... | |
void | PrintData (std::ostream &rOStream) const override |
Print object's data. More... | |
![]() | |
Condition (IndexType NewId=0) | |
Condition (IndexType NewId, const NodesArrayType &ThisNodes) | |
Condition (IndexType NewId, GeometryType::Pointer pGeometry) | |
Condition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties) | |
Condition (Condition const &rOther) | |
Copy constructor. More... | |
~Condition () override | |
Destructor. More... | |
Condition & | operator= (Condition const &rOther) |
Assignment operator. More... | |
virtual IntegrationMethod | GetIntegrationMethod () const |
virtual void | GetValuesVector (Vector &values, int Step=0) const |
virtual void | GetFirstDerivativesVector (Vector &values, int Step=0) const |
virtual void | GetSecondDerivativesVector (Vector &values, int Step=0) const |
virtual void | Initialize (const ProcessInfo &rCurrentProcessInfo) |
virtual void | ResetConstitutiveLaw () |
virtual void | InitializeSolutionStep (const ProcessInfo &rCurrentProcessInfo) |
virtual void | InitializeNonLinearIteration (const ProcessInfo &rCurrentProcessInfo) |
virtual void | FinalizeNonLinearIteration (const ProcessInfo &rCurrentProcessInfo) |
virtual void | FinalizeSolutionStep (const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateFirstDerivativesContributions (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateFirstDerivativesLHS (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateFirstDerivativesRHS (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateSecondDerivativesContributions (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateSecondDerivativesLHS (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateSecondDerivativesRHS (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateMassMatrix (MatrixType &rMassMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateDampingMatrix (MatrixType &rDampingMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | AddExplicitContribution (const ProcessInfo &rCurrentProcessInfo) |
virtual void | AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< double > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo) |
This function is designed to make the condition to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable. (This is the double version) More... | |
virtual void | AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< array_1d< double, 3 > > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo) |
This function is designed to make the condition to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable. (This is the vector version) More... | |
virtual void | AddExplicitContribution (const MatrixType &rLHSMatrix, const Variable< MatrixType > &rLHSVariable, const Variable< Matrix > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo) |
This function is designed to make the condition to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable. (This is the matrix version) More... | |
virtual void | Calculate (const Variable< double > &rVariable, double &Output, const ProcessInfo &rCurrentProcessInfo) |
virtual void | Calculate (const Variable< Vector > &rVariable, Vector &Output, const ProcessInfo &rCurrentProcessInfo) |
virtual void | Calculate (const Variable< Matrix > &rVariable, Matrix &Output, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< bool > &rVariable, std::vector< bool > &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< int > &rVariable, std::vector< int > &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< double > &rVariable, std::vector< double > &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< array_1d< double, 3 >> &rVariable, std::vector< array_1d< double, 3 >> &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< array_1d< double, 4 >> &rVariable, std::vector< array_1d< double, 4 >> &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< array_1d< double, 6 >> &rVariable, std::vector< array_1d< double, 6 >> &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< array_1d< double, 9 >> &rVariable, std::vector< array_1d< double, 9 >> &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< Vector > &rVariable, std::vector< Vector > &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateOnIntegrationPoints (const Variable< Matrix > &rVariable, std::vector< Matrix > &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< bool > &rVariable, const std::vector< bool > &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< int > &rVariable, const std::vector< int > &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< double > &rVariable, const std::vector< double > &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< array_1d< double, 3 >> &rVariable, const std::vector< array_1d< double, 3 >> &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< array_1d< double, 4 >> &rVariable, const std::vector< array_1d< double, 4 >> &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< array_1d< double, 6 >> &rVariable, const std::vector< array_1d< double, 6 >> &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< array_1d< double, 9 >> &rVariable, const std::vector< array_1d< double, 9 >> &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< Vector > &rVariable, const std::vector< Vector > &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | SetValuesOnIntegrationPoints (const Variable< Matrix > &rVariable, const std::vector< Matrix > &rValues, const ProcessInfo &rCurrentProcessInfo) |
virtual void | MassMatrix (MatrixType &rMassMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | AddMassMatrix (MatrixType &rLeftHandSideMatrix, double coeff, const ProcessInfo &rCurrentProcessInfo) |
virtual void | DampMatrix (MatrixType &rDampMatrix, const ProcessInfo &rCurrentProcessInfo) |
virtual void | AddInertiaForces (VectorType &rRightHandSideVector, double coeff, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateLocalVelocityContribution (MatrixType &rDampingMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateSensitivityMatrix (const Variable< double > &rDesignVariable, Matrix &rOutput, const ProcessInfo &rCurrentProcessInfo) |
virtual void | CalculateSensitivityMatrix (const Variable< array_1d< double, 3 > > &rDesignVariable, Matrix &rOutput, const ProcessInfo &rCurrentProcessInfo) |
PropertiesType::Pointer | pGetProperties () |
returns the pointer to the property of the condition. Does not throw an error, to allow copying of conditions which don't have any property assigned. More... | |
const PropertiesType::Pointer | pGetProperties () const |
PropertiesType & | GetProperties () |
PropertiesType const & | GetProperties () const |
void | SetProperties (PropertiesType::Pointer pProperties) |
bool | HasProperties () const |
Check that the Condition has a correctly initialized pointer to a Properties instance. More... | |
virtual const Parameters | GetSpecifications () const |
This method provides the specifications/requirements of the element. More... | |
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (Condition) | |
Pointer definition of Condition. More... | |
![]() | |
GeometricalObject (IndexType NewId=0) | |
Default constructor. More... | |
GeometricalObject (IndexType NewId, GeometryType::Pointer pGeometry) | |
Default constructor. More... | |
~GeometricalObject () override | |
Destructor. More... | |
GeometricalObject (GeometricalObject const &rOther) | |
Copy constructor. More... | |
GeometricalObject & | operator= (GeometricalObject const &rOther) |
Assignment operator. More... | |
virtual void | SetGeometry (GeometryType::Pointer pGeometry) |
Sets the pointer to the geometry. More... | |
GeometryType::Pointer | pGetGeometry () |
Returns the pointer to the geometry. More... | |
const GeometryType::Pointer | pGetGeometry () const |
Returns the pointer to the geometry (const version) More... | |
GeometryType & | GetGeometry () |
Returns the reference of the geometry. More... | |
GeometryType const & | GetGeometry () const |
Returns the reference of the geometry (const version) More... | |
Flags & | GetFlags () |
Returns the flags of the object. More... | |
Flags const & | GetFlags () const |
Returns the flags of the object (const version) More... | |
void | SetFlags (Flags const &rThisFlags) |
Sets the flags of the object. More... | |
DataValueContainer & | Data () |
DataValueContainer & | GetData () |
DataValueContainer const & | GetData () const |
void | SetData (DataValueContainer const &rThisData) |
template<class TDataType > | |
bool | Has (const Variable< TDataType > &rThisVariable) const |
template<class TVariableType > | |
void | SetValue (const TVariableType &rThisVariable, typename TVariableType::Type const &rValue) |
template<class TVariableType > | |
TVariableType::Type & | GetValue (const TVariableType &rThisVariable) |
template<class TVariableType > | |
TVariableType::Type const & | GetValue (const TVariableType &rThisVariable) const |
unsigned int | use_count () const noexcept |
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (GeometricalObject) | |
Pointer definition of GeometricalObject. More... | |
bool | IsActive () const |
Checks if the GeometricalObject is active. More... | |
![]() | |
IndexedObject (IndexType NewId=0) | |
Default constructor. More... | |
virtual | ~IndexedObject () |
Destructor. More... | |
IndexedObject (IndexedObject const &rOther) | |
Copy constructor. More... | |
IndexedObject & | operator= (IndexedObject const &rOther) |
Assignment operator. More... | |
template<class TObjectType > | |
IndexType | operator() (TObjectType const &rThisObject) const |
IndexType | Id () const |
IndexType | GetId () const |
virtual void | SetId (IndexType NewId) |
IndexType & | DepricatedIdAccess () |
TODO: remove this function when removing data_file_io object. More... | |
KRATOS_CLASS_POINTER_DEFINITION (IndexedObject) | |
Pointer definition of IndexedObject. More... | |
![]() | |
Flags & | operator= (Flags const &rOther) |
Assignment operator. More... | |
operator bool () const | |
Flags | operator~ () const |
bool | operator! () const |
void | AssignFlags (Flags const &rOther) |
void | Set (const Flags ThisFlag) |
void | Set (const Flags ThisFlag, bool Value) |
void | Reset (const Flags ThisFlag) |
void | Flip (const Flags ThisFlag) |
void | SetPosition (IndexType Position, bool Value=true) |
bool | GetPosition (IndexType Position) const |
void | FlipPosition (IndexType Position) |
void | ClearPosition (IndexType Position) |
void | Clear () |
Flags | AsFalse () const |
bool | Is (Flags const &rOther) const |
bool | IsDefined (Flags const &rOther) const |
bool | IsNot (Flags const &rOther) const |
bool | IsNotDefined (Flags const &rOther) const |
KRATOS_CLASS_POINTER_DEFINITION (Flags) | |
Pointer definition of Flags. More... | |
const Flags & | operator|= (const Flags &Other) |
const Flags & | operator&= (const Flags &Other) |
Flags () | |
Default constructor. More... | |
Flags (Flags const &rOther) | |
Copy constructor. More... | |
virtual | ~Flags () |
Destructor. More... | |
Protected Member Functions | |
Protected Operations | |
void | CalculateNormal (array_1d< double, 3 > &rAreaNormal) |
Calculate the condition area normal This method calculates the current condition area normal. More... | |
void | ComputeGaussPointLHSContribution (BoundedMatrix< double, LocalSize, LocalSize > &rLHS, const ConditionDataStruct &rData, const ProcessInfo &rProcessInfo) |
Calculates the Gauss point LHS contribution This method calculates the current Gauss point LHS contribution and saves it in the provided array. Note that the input data container is expected to already contain the data at the Gauss point of interest. More... | |
void | ComputeGaussPointRHSContribution (array_1d< double, LocalSize > &rRHS, const ConditionDataStruct &rData, const ProcessInfo &rProcessInfo) |
Calculates the Gauss point RHS contribution This method calculates the current Gauss point RHS contribution and saves it in the provided array. Note that the input data container is expected to already contain the data at the Gauss point of interest. More... | |
void | ComputeRHSNeumannContribution (array_1d< double, LocalSize > &rRHS, const ConditionDataStruct &data) |
Calculates the RHS Neumann BC contribution This method calculates the Neumann BC pressure flux contribution Note that the Neumann BC value is expected to be stored in the historical database within the EXTERNAL_PRESSURE variable. More... | |
void | ComputeRHSOutletInflowContribution (array_1d< double, LocalSize > &rRHS, const ConditionDataStruct &rData, const ProcessInfo &rProcessInfo) |
Calculates and adds the RHS outlet inflow prevention contribution This method calculates and adds an extra numerical contribution to the RHS in order to prevent uncontrolled system energy growth coming from inflow in free-boundaries. More information can be found in Dong et al. 2014 (https://doi.org/10.1016/j.jcp.2013.12.042). More... | |
Type Definitions | |
typedef Node | NodeType |
typedef Properties | PropertiesType |
typedef Geometry< NodeType > | GeometryType |
typedef Geometry< NodeType >::PointsArrayType | NodesArrayType |
typedef Vector | VectorType |
typedef Matrix | MatrixType |
typedef std::size_t | IndexType |
typedef std::vector< std::size_t > | EquationIdVectorType |
typedef std::vector< Dof< double >::Pointer > | DofsVectorType |
typedef std::size_t | SizeType |
static constexpr std::size_t | VoigtSize = 3 * (TDim-1) |
static constexpr std::size_t | BlockSize = TDim + 1 |
static constexpr std::size_t | LocalSize = TNumNodes*BlockSize |
KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (NavierStokesWallCondition) | |
Pointer definition of NavierStokesWallCondition. More... | |
Serialization | |
class | Serializer |
Additional Inherited Members | |
![]() | |
typedef Condition | ConditionType |
definition of condition type More... | |
typedef GeometricalObject | BaseType |
base type: an GeometricalObject that automatically has a unique number More... | |
typedef Node | NodeType |
definition of node type (default is: Node) More... | |
typedef Properties | PropertiesType |
typedef Geometry< NodeType > | GeometryType |
definition of the geometry type with given NodeType More... | |
typedef Geometry< NodeType >::PointsArrayType | NodesArrayType |
definition of nodes container type, redefined from GeometryType More... | |
typedef Vector | VectorType |
typedef Matrix | MatrixType |
typedef std::size_t | IndexType |
typedef std::size_t | SizeType |
typedef Dof< double > | DofType |
typedef std::vector< std::size_t > | EquationIdVectorType |
typedef std::vector< DofType::Pointer > | DofsVectorType |
typedef PointerVectorSet< DofType > | DofsArrayType |
typedef GeometryData::IntegrationMethod | IntegrationMethod |
Type definition for integration methods. More... | |
typedef GeometryData | GeometryDataType |
![]() | |
typedef Node | NodeType |
Definition of the node type. More... | |
typedef Geometry< NodeType > | GeometryType |
The geometry type definition. More... | |
typedef std::size_t | IndexType |
Defines the index type. More... | |
typedef std::size_t | result_type |
Defines the result type. More... | |
![]() | |
typedef std::size_t | IndexType |
The definition of the index type. More... | |
typedef std::size_t | result_type |
The definition of the result_type. More... | |
![]() | |
enum | FlagsList { Flag0 = BlockType(1) , Flag1 = BlockType(1) << 1 , Flag2 = BlockType(1) << 2 , Flag3 = BlockType(1) << 3 , Flag4 = BlockType(1) << 4 , Flag5 = BlockType(1) << 5 , Flag6 = BlockType(1) << 6 , Flag7 = BlockType(1) << 7 , Flag8 = BlockType(1) << 8 , Flag9 = BlockType(1) << 9 , Flag10 = BlockType(1) << 10 , Flag11 = BlockType(1) << 11 , Flag12 = BlockType(1) << 12 , Flag13 = BlockType(1) << 13 , Flag14 = BlockType(1) << 14 , Flag15 = BlockType(1) << 15 , Flag16 = BlockType(1) << 16 , Flag17 = BlockType(1) << 17 , Flag18 = BlockType(1) << 18 , Flag19 = BlockType(1) << 19 , Flag20 = BlockType(1) << 20 , Flag21 = BlockType(1) << 21 , Flag22 = BlockType(1) << 22 , Flag23 = BlockType(1) << 23 , Flag24 = BlockType(1) << 24 , Flag25 = BlockType(1) << 25 , Flag26 = BlockType(1) << 26 , Flag27 = BlockType(1) << 27 , Flag28 = BlockType(1) << 28 , Flag29 = BlockType(1) << 29 , Flag30 = BlockType(1) << 30 } |
typedef int64_t | BlockType |
typedef int64_t | FlagType |
typedef std::size_t | IndexType |
![]() | |
static bool | HasSameType (const GeometricalObject &rLHS, const GeometricalObject &rRHS) |
Checks if two GeometricalObject have the same type. More... | |
static bool | HasSameType (const GeometricalObject *rLHS, const GeometricalObject *rRHS) |
Checks if two GeometricalObject have the same type (pointer version) More... | |
static bool | HasSameGeometryType (const GeometricalObject &rLHS, const GeometricalObject &rRHS) |
Checks if two GeometricalObject have the same geometry type. More... | |
static bool | HasSameGeometryType (const GeometricalObject *rLHS, const GeometricalObject *rRHS) |
Checks if two GeometricalObject have the same geometry type (pointer version) More... | |
static bool | IsSame (const GeometricalObject &rLHS, const GeometricalObject &rRHS) |
Checks if two GeometricalObject are the same. More... | |
static bool | IsSame (const GeometricalObject *rLHS, const GeometricalObject *rRHS) |
Checks if two GeometricalObject are the same (pointer version) More... | |
![]() | |
static const Flags | AllDefined () |
static const Flags | AllTrue () |
static Flags | Create (IndexType ThisPosition, bool Value=true) |
Implements a wall condition for the Navier-Stokes (and Stokes) monolithic formulations This condition is intended to be used in combination with Navier-Stokes (or Stokes) monolithic formulations. It supports the Neumann BC contribution as well as the addition of a wall law contribution through the TWallModel template argument. Such TWallModel must be a class implementing the wall model RHS and LHS Gauss point contributions (as example see @NavierSlipWallLaw). Current condition also has optional features that help numerical stability such as the outlet inflow energy correction or the spurious tangential velocity correction for pure slip boundaries.
TDim | Number of dimensions |
TNumNodes | Number of nodes |
TWallModel | Optional class implementing a LHS and RHS wall contribution |
typedef std::vector< Dof<double>::Pointer > Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::DofsVectorType |
typedef std::vector<std::size_t> Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::EquationIdVectorType |
typedef Geometry<NodeType> Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::GeometryType |
typedef std::size_t Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::IndexType |
typedef Matrix Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::MatrixType |
typedef Geometry<NodeType>::PointsArrayType Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::NodesArrayType |
typedef Node Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::NodeType |
typedef Properties Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::PropertiesType |
typedef std::size_t Kratos::Condition::SizeType |
typedef Vector Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::VectorType |
|
inline |
Default constructor.
Admits an Id as a parameter.
NewId | Index for the new // Struct to pass around the data ElementDataStruct data; this->FillElementData(data, rCurrentProcessInfo);condition |
|
inline |
Constructor using an array of nodes.
NewId | Index of the new condition |
ThisNodes | An array containing the nodes of the new condition |
|
inline |
Constructor using Geometry.
NewId | Index of the new condition |
pGeometry | Pointer to a geometry object |
|
inline |
Constructor using Properties.
NewId | Index of the new element |
pGeometry | Pointer to a geometry object |
pProperties | Pointer to the element's properties |
|
inline |
Copy constructor.
|
inlineoverride |
Destructor.
|
overridevirtual |
Reimplemented from Kratos::Condition.
|
overridevirtual |
Calculates the RHS condition contributions.
Clones the selected element variables, creating a new one
rLeftHandSideMatrix | reference to the LHS matrix |
rCurrentProcessInfo | reference to the ProcessInfo (unused) |
Reimplemented from Kratos::Condition.
|
overridevirtual |
Calculates the LHS and RHS condition contributions.
Clones the selected element variables, creating a new one
rLeftHandSideMatrix | reference to the LHS matrix |
rRightHandSideVector | reference to the RHS matrix |
rCurrentProcessInfo | reference to the ProcessInfo (unused) |
Reimplemented from Kratos::Condition.
|
protected |
Calculate the condition area normal This method calculates the current condition area normal.
rAreaNormal | Reference to the current condition area normal |
|
overridevirtual |
Calculates the RHS condition contributions.
Clones the selected element variables, creating a new one
rRightHandSideVector | reference to the RHS matrix |
rCurrentProcessInfo | reference to the ProcessInfo (unused) |
Reimplemented from Kratos::Condition.
|
overridevirtual |
Condition check.
rCurrentProcessInfo | reference to the ProcessInfo |
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
inlineoverridevirtual |
Clones the selected element variables, creating a new one
NewId | the ID of the new element |
ThisNodes | the nodes of the new element |
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
protected |
Calculates the Gauss point LHS contribution This method calculates the current Gauss point LHS contribution and saves it in the provided array. Note that the input data container is expected to already contain the data at the Gauss point of interest.
rLHS | Reference to the LHS output matrix |
rData | Condition data container |
rProcessInfo | Reference to the ProcessInfo container |
|
protected |
Calculates the Gauss point RHS contribution This method calculates the current Gauss point RHS contribution and saves it in the provided array. Note that the input data container is expected to already contain the data at the Gauss point of interest.
rLHS | Reference to the RHS output vector |
rData | Condition data container |
rProcessInfo | Reference to the ProcessInfo container |
|
protected |
Calculates the RHS Neumann BC contribution This method calculates the Neumann BC pressure flux contribution Note that the Neumann BC value is expected to be stored in the historical database within the EXTERNAL_PRESSURE variable.
rRHS | Reference to the RHS output vector |
data | Condition data container |
|
protected |
Calculates and adds the RHS outlet inflow prevention contribution This method calculates and adds an extra numerical contribution to the RHS in order to prevent uncontrolled system energy growth coming from inflow in free-boundaries. More information can be found in Dong et al. 2014 (https://doi.org/10.1016/j.jcp.2013.12.042).
rRHS | Reference to RHS vector |
rData | Condition data container |
rProcessInfo | Reference to the ProcessInfo container |
|
inlineoverridevirtual |
Create a new NavierStokesWallCondition object.
NewId | Index of the new condition |
pGeom | A pointer to the condition's geometry |
pProperties | Pointer to the element's properties |
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
inlineoverridevirtual |
Create a new NavierStokesWallCondition object.
NewId | Index of the new condition |
ThisNodes | An array containing the nodes of the new condition |
pProperties | Pointer to the element's properties |
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
overridevirtual |
Provides the global indices for each one of this condition's local rows This determines the elemental equation ID vector for all elemental DOFs.
rResult | Reference to the vector containing the global Id of each row |
rCurrentProcessInfo | Reference to the current ProcessInfo container |
Reimplemented from Kratos::Condition.
|
overridevirtual |
Returns a list of the element's Dofs.
rConditionDofList | Reference to the DOF pointers list |
CurrentProcessInfo | Reference to the current ProcessInfo container |
Reimplemented from Kratos::Condition.
|
inlineoverridevirtual |
Turn back information as a string.
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
Kratos::NavierStokesWallCondition< TDim, TNumNodes, TWallModel >::KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION | ( | NavierStokesWallCondition< TDim, TNumNodes, TWallModel > | ) |
Pointer definition of NavierStokesWallCondition.
|
inline |
Assignment operator.
|
inlineoverridevirtual |
Print object's data.
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
inlineoverridevirtual |
Print information about this object.
Reimplemented from Kratos::Condition.
Reimplemented in Kratos::TwoFluidNavierStokesWallCondition< 2, 2 >, and Kratos::TwoFluidNavierStokesWallCondition< 3, 3 >.
|
friend |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |