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.
|
Short class definition. More...
#include <kratos_space.h>
Public Member Functions | |
Life Cycle | |
KratosSpace () | |
Default constructor. More... | |
virtual | ~KratosSpace () |
Destructor. More... | |
Static Public Member Functions | |
Operations | |
static MatrixPointerType | CreateEmptyMatrixPointer () |
static VectorPointerType | CreateEmptyVectorPointer () |
static IndexType | Size (VectorType const &rV) |
return size of vector rV More... | |
static IndexType | Size1 (MatrixType const &rM) |
return number of rows of rM More... | |
static IndexType | Size2 (MatrixType const &rM) |
return number of columns of rM More... | |
template<typename TColumnType > | |
static void | GetColumn (unsigned int j, Matrix &rM, TColumnType &rX) |
rXi = rMij More... | |
template<typename TColumnType > | |
static void | SetColumn (unsigned int j, Matrix &rM, TColumnType &rX) |
static void | Copy (MatrixType const &rX, MatrixType &rY) |
rY = rX More... | |
static void | Copy (VectorType const &rX, VectorType &rY) |
rY = rX More... | |
static TDataType | Dot (VectorType const &rX, VectorType const &rY) |
rX * rY More... | |
static TDataType | TwoNorm (VectorType const &rX) |
||rX||2 More... | |
static TDataType | TwoNorm (const Matrix &rA) |
static TDataType | TwoNorm (const CsrMatrix< TDataType > &rA) |
static TDataType | TwoNorm (const DistributedCsrMatrix< TDataType > &rA) |
static TDataType | JacobiNorm (const Matrix &rA) |
static TDataType | JacobiNorm (const CsrMatrix< TDataType > &rA) |
static void | Mult (const Matrix &rA, VectorType &rX, VectorType &rY) |
static void | Mult (const CsrMatrix< TDataType > &rA, VectorType &rX, VectorType &rY) |
template<class TOtherMatrixType > | |
static void | TransposeMult (TOtherMatrixType &rA, VectorType &rX, VectorType &rY) |
static SizeType | GraphDegree (IndexType i, const CsrMatrix< TDataType > &rA) |
static void | GraphNeighbors (IndexType i, const CsrMatrix< TDataType > &rA, std::vector< IndexType > &neighbors) |
static void | InplaceMult (VectorType &rX, const double A) |
static void | Assign (VectorType &rX, const double A, const VectorType &rY) |
static void | UnaliasedAdd (VectorType &rX, const double A, const VectorType &rY) |
static void | ScaleAndAdd (const double A, const VectorType &rX, const double B, const VectorType &rY, VectorType &rZ) |
static void | ScaleAndAdd (const double A, const VectorType &rX, const double B, VectorType &rY) |
static double | RowDot (unsigned int i, MatrixType &rA, VectorType &rX) |
rA[i] * rX More... | |
static void | SetValue (VectorType &rX, IndexType local_i, TDataType value) |
static void | Set (VectorType &rX, TDataType A) |
rX = A More... | |
static void | Resize (MatrixType &rA, SizeType m, SizeType n) |
static void | Resize (MatrixPointerType &pA, SizeType m, SizeType n) |
static void | Resize (VectorType &rX, SizeType n) |
static void | Resize (VectorPointerType &pX, SizeType n) |
static void | Clear (MatrixPointerType &pA) |
static void | Clear (VectorPointerType &pX) |
template<class TOtherMatrixType > | |
static void | ResizeData (TOtherMatrixType &rA, SizeType m) |
static void | ResizeData (CsrMatrix< TDataType > &rA, SizeType m) |
static void | ResizeData (VectorType &rX, SizeType m) |
template<class TOtherMatrixType > | |
static void | SetToZero (TOtherMatrixType &rA) |
static void | SetToZero (CsrMatrix< TDataType > &rA) |
static void | SetToZero (VectorType &rX) |
template<class TOtherMatrixType , class TEquationIdVectorType > | |
static void | AssembleLHS (MatrixType &A, TOtherMatrixType &LHS_Contribution, TEquationIdVectorType &EquationId) |
Type Definitions | |
typedef TDataType | DataType |
typedef TMatrixType | MatrixType |
typedef TVectorType | VectorType |
typedef std::size_t | IndexType |
typedef std::size_t | SizeType |
typedef Kratos::shared_ptr< TMatrixType > | MatrixPointerType |
typedef Kratos::shared_ptr< TVectorType > | VectorPointerType |
typedef DofUpdater< KratosSpace< TDataType, TMatrixType, TVectorType > > | DofUpdaterType |
typedef DofUpdaterType::UniquePointer | DofUpdaterPointerType |
KRATOS_CLASS_POINTER_DEFINITION (KratosSpace) | |
Pointer definition of KratosSpace. More... | |
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... | |
static constexpr bool | IsDistributed () |
static TDataType | GetValue (const VectorType &x, IndexType LocalI) |
static void | GatherValues (const VectorType &x, const std::vector< IndexType > &IndexArray, TDataType *pValues) |
template<class TOtherMatrixType > | |
static bool | WriteMatrixMarketMatrix (const char *pFileName, TOtherMatrixType &rM, const bool Symmetric) |
template<class VectorType > | |
static bool | WriteMatrixMarketVector (const char *pFileName, const VectorType &rV) |
static DofUpdaterPointerType | CreateDofUpdater () |
Short class definition.
Detail class definition.
typedef TDataType Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::DataType |
typedef DofUpdaterType::UniquePointer Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::DofUpdaterPointerType |
typedef DofUpdater< KratosSpace<TDataType,TMatrixType,TVectorType> > Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::DofUpdaterType |
typedef std::size_t Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::IndexType |
typedef Kratos::shared_ptr< TMatrixType > Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::MatrixPointerType |
typedef TMatrixType Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::MatrixType |
typedef std::size_t Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::SizeType |
typedef Kratos::shared_ptr< TVectorType > Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::VectorPointerType |
typedef TVectorType Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::VectorType |
|
inline |
Default constructor.
|
inlinevirtual |
Destructor.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
rY = rX
|
inlinestatic |
rY = rX
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
rX * rY
|
inlinestatic |
|
inlinestatic |
rXi = rMij
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinevirtual |
Turn back information as a string.
|
inlinestatic |
|
inlinestaticconstexpr |
|
inlinestatic |
|
inlinestatic |
This method computes the Jacobi norm
rA | The matrix to compute the Jacobi norm |
Kratos::KratosSpace< TDataType, TMatrixType, TVectorType >::KRATOS_CLASS_POINTER_DEFINITION | ( | KratosSpace< TDataType, TMatrixType, TVectorType > | ) |
Pointer definition of KratosSpace.
|
inlinestatic |
|
inlinestatic |
|
inlinevirtual |
Print object's data.
|
inlinevirtual |
Print information about this object.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
rA[i] * rX
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
rX = A
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
return size of vector rV
|
inlinestatic |
return number of rows of rM
|
inlinestatic |
return number of columns of rM
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
||rX||2
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |