Tools to apply slip conditions @detail A utility to rotate the local contributions of certain nodes to the system matrix, which is required to apply slip conditions in arbitrary directions.
More...
|
|
| FlowRateSlipUtility () |
| Default constructor. More...
|
|
virtual | ~FlowRateSlipUtility () |
| Destructor. More...
|
|
|
virtual void | ApplySlipCondition (TLocalMatrixType &rLocalMatrix, TLocalVectorType &rLocalVector, GeometryType &rGeometry) const override |
| Apply slip boundary conditions to the rotated local contributions. @detail This function takes the local system contributions rotated so each node's velocities are expressed using a base oriented with its normal and imposes that the normal velocity is equal to the mesh velocity in the normal direction. More...
|
|
virtual void | ApplySlipCondition (TLocalVectorType &rLocalVector, GeometryType &rGeometry) const override |
| RHS only version of ApplySlipCondition. More...
|
|
virtual void | RotateVelocities (ModelPart &rModelPart) const override |
| Transform nodal velocities to the rotated coordinates (aligned with each node's normal) More...
|
|
virtual void | RecoverVelocities (ModelPart &rModelPart) const override |
|
|
virtual std::string | Info () const override |
|
virtual void | PrintInfo (std::ostream &rOStream) const override |
|
| CoordinateTransformationUtils (const unsigned int DomainSize, const unsigned int NumRowsPerNode, const Kratos::Flags &rSelectionFlag=SLIP) |
| Constructor. More...
|
|
virtual | ~CoordinateTransformationUtils () |
| Destructor. More...
|
|
virtual void | CalculateRotationOperatorPure (TLocalMatrixType &rRotationMatrix, const GeometryType::PointType &rThisPoint) const |
| Calculates rotation operator for given point. More...
|
|
void | LocalRotationOperatorPure (BoundedMatrix< double, 3, 3 > &rRot, const GeometryType::PointType &rThisPoint) const |
|
void | LocalRotationOperatorPure (BoundedMatrix< double, 2, 2 > &rRot, const GeometryType::PointType &rThisPoint) const |
|
virtual void | CalculateRotationOperatorPureShapeSensitivities (TLocalMatrixType &rRotationMatrixShapeDerivative, const std::size_t DerivativeNodeIndex, const std::size_t DerivativeDirectionIndex, const GeometryType::PointType &rThisPoint) const |
| Calculates rotation nodal matrix shape sensitivities. More...
|
|
virtual void | CalculateRotationOperatorPureShapeSensitivities (BoundedMatrix< double, 2, 2 > &rOutput, const std::size_t DerivativeNodeIndex, const std::size_t DerivativeDirectionIndex, const GeometryType::PointType &rThisPoint) const |
| Calculate 2d rotation nodal matrix shape sensitivities. More...
|
|
virtual void | CalculateRotationOperatorPureShapeSensitivities (BoundedMatrix< double, 3, 3 > &rOutput, const std::size_t DerivativeNodeIndex, const std::size_t DerivativeDirectionIndex, const GeometryType::PointType &rThisPoint) const |
| Calculate 3d rotation nodal matrix shape sensitivities. More...
|
|
virtual void | Rotate (TLocalMatrixType &rLocalMatrix, TLocalVectorType &rLocalVector, GeometryType &rGeometry) const |
| Rotate the local system contributions so that they are oriented with each node's normal. More...
|
|
virtual void | Rotate (TLocalVectorType &rLocalVector, GeometryType &rGeometry) const |
| RHS only version of Rotate. More...
|
|
virtual void | PrintData (std::ostream &rOStream) const |
| Print object's data. More...
|
|
| KRATOS_CLASS_POINTER_DEFINITION (CoordinateTransformationUtils) |
| Pointer definition of CoordinateTransformationUtils. More...
|
|
|
typedef Node | NodeType |
|
typedef Geometry< Node > | GeometryType |
|
template<unsigned int TDim, unsigned int TBlockSize, unsigned int TSkip = 0> |
void | RotateAux (TLocalMatrixType &rLocalMatrix, TLocalVectorType &rLocalVector, GeometryType &rGeometry) const |
|
template<unsigned int TDim> |
void | RotateAuxPure (TLocalMatrixType &rLocalMatrix, TLocalVectorType &rLocalVector, GeometryType &rGeometry) const |
|
template<unsigned int TBlockSize, unsigned int TSkip = 0> |
void | LocalRotationOperator2D (BoundedMatrix< double, TBlockSize, TBlockSize > &rRot, GeometryType::PointType &rThisPoint) const |
|
template<unsigned int TBlockSize, unsigned int TSkip = 0> |
void | LocalRotationOperator3D (BoundedMatrix< double, TBlockSize, TBlockSize > &rRot, GeometryType::PointType &rThisPoint) const |
|
bool | IsSlip (const Node &rNode) const |
|
template<class TVectorType > |
double | Normalize (TVectorType &rThis) const |
| Normalize a vector. More...
|
|
unsigned int | GetDomainSize () const |
|
unsigned int | GetBlockSize () const |
|
template<class TLocalMatrixType, class TLocalVectorType, class TValueType>
class Kratos::FlowRateSlipUtility< TLocalMatrixType, TLocalVectorType, TValueType >
Tools to apply slip conditions @detail A utility to rotate the local contributions of certain nodes to the system matrix, which is required to apply slip conditions in arbitrary directions.
template<class TLocalMatrixType , class TLocalVectorType , class TValueType >
virtual void Kratos::FlowRateSlipUtility< TLocalMatrixType, TLocalVectorType, TValueType >::ApplySlipCondition |
( |
TLocalMatrixType & |
rLocalMatrix, |
|
|
TLocalVectorType & |
rLocalVector, |
|
|
GeometryType & |
rGeometry |
|
) |
| const |
|
inlineoverridevirtual |
Apply slip boundary conditions to the rotated local contributions. @detail This function takes the local system contributions rotated so each node's velocities are expressed using a base oriented with its normal and imposes that the normal velocity is equal to the mesh velocity in the normal direction.
- Parameters
-
rLocalMatrix | A reference to the LHS local matrix |
rLocalVector | A reference to the RHS local vector |
rGeometry | A reference to the geometry of the element or condition |
Reimplemented from Kratos::CoordinateTransformationUtils< TLocalMatrixType, TLocalVectorType, TValueType >.