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.
List of all members
Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType > Class Template Reference

Base class for all reorderer objects in Kratos used in linear solvers. More...

#include <reorderer.h>

Collaboration diagram for Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >:

Public Member Functions

Life Cycle
 Reorderer ()
 Default constructor. More...
 
 Reorderer (Reorderer const &rOther)
 Copy constructor. More...
 
virtual ~Reorderer ()
 Destructor. More...
 
Operators
Reordereroperator= (Reorderer const &rOther)
 Assignment operator. More...
 
Operations
virtual void Initialize (SparseMatrixType &rA, VectorType &rX, VectorType &rB)
 
virtual void Reorder (SparseMatrixType &rA, VectorType &rX, VectorType &rB)
 
virtual void InverseReorder (SparseMatrixType &rA, VectorType &rX, VectorType &rB)
 
virtual IndexVectorTypeCalculateIndexPermutation (SparseMatrixType &rA, IndexType InitialIndex=IndexType())
 
Access
virtual IndexVectorTypeGetIndexPermutation ()
 
Input and output
virtual std::string Info () const
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 

Type Definitions

typedef TSparseSpaceType::MatrixType SparseMatrixType
 
typedef TSparseSpaceType::VectorType VectorType
 
typedef TDenseSpaceType::MatrixType DenseMatrixType
 
typedef unsigned int IndexType
 
typedef unsigned int SizeType
 
typedef std::vector< IndexTypeIndexVectorType
 
 KRATOS_CLASS_POINTER_DEFINITION (Reorderer)
 Pointer definition of Reorderer. More...
 

Detailed Description

template<class TSparseSpaceType, class TDenseSpaceType>
class Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >

Base class for all reorderer objects in Kratos used in linear solvers.

Reorderer is the base class for all reorderer objects in Kratos used in linear solvers. two template parameter:

Member Typedef Documentation

◆ DenseMatrixType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef TDenseSpaceType::MatrixType Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::DenseMatrixType

◆ IndexType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef unsigned int Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::IndexType

◆ IndexVectorType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef std::vector<IndexType> Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::IndexVectorType

◆ SizeType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef unsigned int Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::SizeType

◆ SparseMatrixType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef TSparseSpaceType::MatrixType Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::SparseMatrixType

◆ VectorType

template<class TSparseSpaceType , class TDenseSpaceType >
typedef TSparseSpaceType::VectorType Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::VectorType

Constructor & Destructor Documentation

◆ Reorderer() [1/2]

template<class TSparseSpaceType , class TDenseSpaceType >
Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::Reorderer ( )
inline

Default constructor.

◆ Reorderer() [2/2]

template<class TSparseSpaceType , class TDenseSpaceType >
Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::Reorderer ( Reorderer< TSparseSpaceType, TDenseSpaceType > const &  rOther)
inline

Copy constructor.

◆ ~Reorderer()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::~Reorderer ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ CalculateIndexPermutation()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual IndexVectorType& Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::CalculateIndexPermutation ( SparseMatrixType rA,
IndexType  InitialIndex = IndexType() 
)
inlinevirtual

◆ GetIndexPermutation()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual IndexVectorType& Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::GetIndexPermutation ( )
inlinevirtual

◆ Info()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual std::string Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::Info ( ) const
inlinevirtual

Turn back information as a string.

◆ Initialize()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual void Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::Initialize ( SparseMatrixType rA,
VectorType rX,
VectorType rB 
)
inlinevirtual

◆ InverseReorder()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual void Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::InverseReorder ( SparseMatrixType rA,
VectorType rX,
VectorType rB 
)
inlinevirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

template<class TSparseSpaceType , class TDenseSpaceType >
Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::KRATOS_CLASS_POINTER_DEFINITION ( Reorderer< TSparseSpaceType, TDenseSpaceType >  )

Pointer definition of Reorderer.

◆ operator=()

template<class TSparseSpaceType , class TDenseSpaceType >
Reorderer& Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::operator= ( Reorderer< TSparseSpaceType, TDenseSpaceType > const &  rOther)
inline

Assignment operator.

◆ PrintData()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual void Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::PrintData ( std::ostream &  rOStream) const
inlinevirtual

Print object's data.

◆ PrintInfo()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual void Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

Print information about this object.

◆ Reorder()

template<class TSparseSpaceType , class TDenseSpaceType >
virtual void Kratos::Reorderer< TSparseSpaceType, TDenseSpaceType >::Reorder ( SparseMatrixType rA,
VectorType rX,
VectorType rB 
)
inlinevirtual

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