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.
|
Trilinos version of the partitioned FSI tools. More...
#include <trilinos_partitioned_fsi_utilities.h>
Public Member Functions | |
Life Cycle | |
TrilinosPartitionedFSIUtilities (const Epetra_MpiComm &EpetraCommunicator) | |
Default constructor. More... | |
virtual | ~TrilinosPartitionedFSIUtilities () override |
Destructor. More... | |
Operations | |
VectorPointerType | SetUpInterfaceVector (ModelPart &rInterfaceModelPart) override |
Public Member Functions inherited from Kratos::PartitionedFSIUtilities< TSpace, TValueType, TDim > | |
KRATOS_CLASS_POINTER_DEFINITION (PartitionedFSIUtilities) | |
PartitionedFSIUtilities () | |
PartitionedFSIUtilities (const PartitionedFSIUtilities &Other)=delete | |
virtual | ~PartitionedFSIUtilities ()=default |
void | CreateCouplingSkin (const ModelPart &rOriginInterfaceModelPart, ModelPart &rDestinationInterfaceModelPart) |
Create a coupling condition-based skin object This method creates an condition-based skin model part by copying the conditions of a given skin model part. More... | |
int | GetInterfaceResidualSize (ModelPart &rInterfaceModelPart) |
double | GetInterfaceArea (ModelPart &rInterfaceModelPart) |
void | InitializeInterfaceVector (const ModelPart &rInterfaceModelPart, const Variable< TValueType > &rOriginVariable, VectorType &rInterfaceVector) |
virtual void | ComputeInterfaceResidualVector (ModelPart &rInterfaceModelPart, const Variable< TValueType > &rOriginalVariable, const Variable< TValueType > &rModifiedVariable, const Variable< TValueType > &rResidualVariable, VectorType &rInterfaceResidual, const std::string ResidualType="nodal", const Variable< double > &rResidualNormVariable=FSI_INTERFACE_RESIDUAL_NORM) |
Compute array variable interface residual vector This function computes (and stores in a vector) the residual of a vector variable over the fluid interface. The residual is defined as the OriginalVariable value minus the ModifiedVariable value. The nodal values of the residual are stored in the FSI_INTERFACE_RESIDUAL variable. Besides, the norm of the residual vector is stored in the ProcessInfo. More... | |
double | ComputeInterfaceResidualNorm (ModelPart &rInterfaceModelPart, const Variable< TValueType > &rOriginalVariable, const Variable< TValueType > &rModifiedVariable, const Variable< TValueType > &rResidualVariable, const std::string ResidualType="nodal") |
Computes the interface residual norm This method computes the interface residual norm. To do that it firstly computes the residual vector as is done in ComputeInterfaceResidualVector. More... | |
virtual void | AuxSetLocalValue (VectorType &rInterfaceResidual, const double &rResidualValue, const int AuxPosition) |
Auxiliar call to SetLocalValue for double type This method serves as an auxiliar call to the SetLocalValue function for double variables. More... | |
virtual void | AuxSetLocalValue (VectorType &rInterfaceResidual, const array_1d< double, 3 > &rResidualValue, const int AuxPosition) |
Auxiliar call to SetLocalValue for array type This method serves as an auxiliar call to the SetLocalValue function for array variables. More... | |
virtual void | UpdateInterfaceValues (ModelPart &rInterfaceModelPart, const Variable< TValueType > &rSolutionVariable, const VectorType &rCorrectedGuess) |
void | UpdateInterfaceLocalValue (const VectorType &rCorrectedGuess, double &rValueToUpdate, const int AuxPosition) |
Corrected guess local double value update This auxiliar method helps to update the nodal database using the values from a corrected guess vector values. More... | |
void | UpdateInterfaceLocalValue (const VectorType &rCorrectedGuess, array_1d< double, 3 > &rValueToUpdate, const int AuxPosition) |
Corrected guess local array value update This auxiliar method helps to update the nodal database using the values from a corrected guess vector values. Note that it performs the array components loop. More... | |
virtual void | ComputeAndPrintFluidInterfaceNorms (ModelPart &rInterfaceModelPart) |
virtual void | ComputeAndPrintStructureInterfaceNorms (ModelPart &rInterfaceModelPart) |
virtual void | CheckCurrentCoordinatesFluid (ModelPart &rModelPart, const double tolerance) |
virtual void | CheckCurrentCoordinatesStructure (ModelPart &rModelPart, const double tolerance) |
void | EmbeddedPressureToPositiveFacePressureInterpolator (ModelPart &rFluidModelPart, ModelPart &rStructureSkinModelPart) |
Pressure to positive face pressure interpolator This method interpolates the pressure in the embedded fluid background mesh to the positive face pressure of all nodes in the provided structure interface model part. More... | |
void | CalculateTractionFromPressureValues (ModelPart &rModelPart, const Variable< double > &rPressureVariable, const Variable< array_1d< double, 3 >> &rTractionVariable, const bool SwapTractionSign) |
void | CalculateTractionFromPressureValues (ModelPart &rModelPart, const Variable< double > &rPositivePressureVariable, const Variable< double > &rNegativePressureVariable, const Variable< array_1d< double, 3 >> &rTractionVariable, const bool SwapTractionSign) |
Protected Member Functions | |
Protected Operations | |
virtual void | SetLocalValue (VectorType &rVector, int LocalRow, double Value) const override |
virtual double | GetLocalValue (const VectorType &rVector, int LocalRow) const override |
Protected Member Functions inherited from Kratos::PartitionedFSIUtilities< TSpace, TValueType, TDim > | |
std::string | GetSkinElementName () |
Get the skin element name Auxiliary method that returns the auxiliary embedded skin element type name. More... | |
std::string | GetSkinConditionName () |
Get the skin condition name Auxiliary method that returns the auxiliary embedded skin condition type name. More... | |
void | ComputeConsistentResidual (ModelPart &rInterfaceModelPart, const Variable< TValueType > &rOriginalVariable, const Variable< TValueType > &rModifiedVariable, const Variable< TValueType > &rErrorStorageVariable) |
void | ComputeNodeByNodeResidual (ModelPart &rInterfaceModelPart, const Variable< TValueType > &rOriginalVariable, const Variable< TValueType > &rModifiedVariable, const Variable< TValueType > &rErrorStorageVariable) |
Type Definitions | |
typedef TSpace::VectorType | VectorType |
typedef TSpace::MatrixType | MatrixType |
typedef TSpace::VectorPointerType | VectorPointerType |
typedef TSpace::MatrixPointerType | MatrixPointerType |
KRATOS_CLASS_POINTER_DEFINITION (TrilinosPartitionedFSIUtilities) | |
Pointer definition of TrilinosPartitionedFSIUtilities. More... | |
Additional Inherited Members | |
Public Types inherited from Kratos::PartitionedFSIUtilities< TSpace, TValueType, TDim > | |
typedef TSpace::VectorType | VectorType |
typedef TSpace::MatrixType | MatrixType |
typedef TSpace::VectorPointerType | VectorPointerType |
typedef TSpace::MatrixPointerType | MatrixPointerType |
Trilinos version of the partitioned FSI tools.