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.
Public Types | Public Member Functions | Static Public Attributes | List of all members
Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace > Class Template Reference

#include <feti_dynamic_coupling_utilities.h>

Collaboration diagram for Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >:

Public Types

enum class  SolverIndex { Origin , Destination }
 
enum class  EquilibriumVariable { Displacement , Velocity , Acceleration }
 
typedef std::size_t SizeType
 
typedef std::size_t IndexType
 
typedef Node NodeType
 
typedef NodeType::Pointer NodePointerType
 
typedef Geometry< NodeTypeGeometryType
 
typedef GeometryType::Pointer GeometryPointerType
 
typedef TSparseSpace::MatrixType SparseMatrixType
 
typedef TDenseSpace::MatrixType DenseMatrixType
 
typedef TDenseSpace::VectorType DenseVectorType
 
typedef LinearSolver< TSparseSpace, TDenseSpace > LinearSolverType
 
typedef Kratos::shared_ptr< LinearSolverTypeLinearSolverSharedPointerType
 

Public Member Functions

 FetiDynamicCouplingUtilities (ModelPart &rInterfaceOrigin, ModelPart &rInterFaceDestination, const Parameters JsonParameters)
 
void SetOriginAndDestinationDomainsWithInterfaceModelParts (ModelPart &rInterfaceOrigin, ModelPart &rInterFaceDestination)
 
void SetEffectiveStiffnessMatrixImplicit (SparseMatrixType &rK, const SolverIndex iSolverIndex)
 
void SetEffectiveStiffnessMatrixExplicit (const SolverIndex iSolverIndex)
 
void SetMappingMatrix (SparseMatrixType &rMappingMatrix)
 
void SetLinearSolver (LinearSolverSharedPointerType pSolver)
 
void SetOriginInitialKinematics ()
 
void EquilibrateDomains ()
 

Static Public Attributes

static constexpr double numerical_limit = std::numeric_limits<double>::epsilon()
 The definition of the numerical limit. More...
 

Member Typedef Documentation

◆ DenseMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef TDenseSpace::MatrixType Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::DenseMatrixType

◆ DenseVectorType

template<class TSparseSpace , class TDenseSpace >
typedef TDenseSpace::VectorType Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::DenseVectorType

◆ GeometryPointerType

template<class TSparseSpace , class TDenseSpace >
typedef GeometryType::Pointer Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::GeometryPointerType

◆ GeometryType

template<class TSparseSpace , class TDenseSpace >
typedef Geometry<NodeType> Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::GeometryType

◆ IndexType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::IndexType

◆ LinearSolverSharedPointerType

template<class TSparseSpace , class TDenseSpace >
typedef Kratos::shared_ptr<LinearSolverType> Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::LinearSolverSharedPointerType

◆ LinearSolverType

template<class TSparseSpace , class TDenseSpace >
typedef LinearSolver<TSparseSpace, TDenseSpace> Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::LinearSolverType

◆ NodePointerType

template<class TSparseSpace , class TDenseSpace >
typedef NodeType::Pointer Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::NodePointerType

◆ NodeType

template<class TSparseSpace , class TDenseSpace >
typedef Node Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::NodeType

◆ SizeType

template<class TSparseSpace , class TDenseSpace >
typedef std::size_t Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SizeType

◆ SparseMatrixType

template<class TSparseSpace , class TDenseSpace >
typedef TSparseSpace::MatrixType Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SparseMatrixType

Member Enumeration Documentation

◆ EquilibriumVariable

template<class TSparseSpace , class TDenseSpace >
enum Kratos::FetiDynamicCouplingUtilities::EquilibriumVariable
strong
Enumerator
Displacement 
Velocity 
Acceleration 

◆ SolverIndex

template<class TSparseSpace , class TDenseSpace >
enum Kratos::FetiDynamicCouplingUtilities::SolverIndex
strong
Enumerator
Origin 
Destination 

Constructor & Destructor Documentation

◆ FetiDynamicCouplingUtilities()

template<class TSparseSpace , class TDenseSpace >
Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::FetiDynamicCouplingUtilities ( ModelPart rInterfaceOrigin,
ModelPart rInterFaceDestination,
const Parameters  JsonParameters 
)

Member Function Documentation

◆ EquilibrateDomains()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::EquilibrateDomains

◆ SetEffectiveStiffnessMatrixExplicit()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetEffectiveStiffnessMatrixExplicit ( const SolverIndex  iSolverIndex)
inline

◆ SetEffectiveStiffnessMatrixImplicit()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetEffectiveStiffnessMatrixImplicit ( SparseMatrixType rK,
const SolverIndex  iSolverIndex 
)

◆ SetLinearSolver()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetLinearSolver ( LinearSolverSharedPointerType  pSolver)
inline

◆ SetMappingMatrix()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetMappingMatrix ( SparseMatrixType rMappingMatrix)
inline

◆ SetOriginAndDestinationDomainsWithInterfaceModelParts()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetOriginAndDestinationDomainsWithInterfaceModelParts ( ModelPart rInterfaceOrigin,
ModelPart rInterFaceDestination 
)

◆ SetOriginInitialKinematics()

template<class TSparseSpace , class TDenseSpace >
void Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::SetOriginInitialKinematics

Member Data Documentation

◆ numerical_limit

template<class TSparseSpace , class TDenseSpace >
constexpr double Kratos::FetiDynamicCouplingUtilities< TSparseSpace, TDenseSpace >::numerical_limit = std::numeric_limits<double>::epsilon()
staticconstexpr

The definition of the numerical limit.


The documentation for this class was generated from the following files: