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 | List of all members
Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType > Class Template Reference

#include <amatrix_interface.h>

Inheritance diagram for Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >:
Collaboration diagram for Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >:

Public Types

using data_type = typename TExpressionType::data_type
 
using value_type = typename TExpressionType::data_type
 

Public Member Functions

 PermutationMatrix ()=delete
 
 PermutationMatrix (TExpressionType &Original, TIndicesVectorType const &PermutaionIndices)
 
 PermutationMatrix (TExpressionType &Original, TIndicesVectorType const &PermutaionIndicesI, TIndicesVectorType const &PermutaionIndicesJ)
 
data_type const & operator() (std::size_t i, std::size_t j) const
 
data_typeoperator() (std::size_t i, std::size_t j)
 
std::size_t size () const
 
std::size_t size1 () const
 
std::size_t size2 () const
 
bool check_aliasing (const data_type *From, const data_type *To) const
 

Member Typedef Documentation

◆ data_type

template<typename TExpressionType , typename TIndicesVectorType >
using Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::data_type = typename TExpressionType::data_type

◆ value_type

template<typename TExpressionType , typename TIndicesVectorType >
using Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::value_type = typename TExpressionType::data_type

Constructor & Destructor Documentation

◆ PermutationMatrix() [1/3]

template<typename TExpressionType , typename TIndicesVectorType >
Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::PermutationMatrix ( )
delete

◆ PermutationMatrix() [2/3]

template<typename TExpressionType , typename TIndicesVectorType >
Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::PermutationMatrix ( TExpressionType &  Original,
TIndicesVectorType const &  PermutaionIndices 
)
inline

◆ PermutationMatrix() [3/3]

template<typename TExpressionType , typename TIndicesVectorType >
Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::PermutationMatrix ( TExpressionType &  Original,
TIndicesVectorType const &  PermutaionIndicesI,
TIndicesVectorType const &  PermutaionIndicesJ 
)
inline

Member Function Documentation

◆ check_aliasing()

template<typename TExpressionType , typename TIndicesVectorType >
bool Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::check_aliasing ( const data_type From,
const data_type To 
) const
inline

◆ operator()() [1/2]

template<typename TExpressionType , typename TIndicesVectorType >
data_type& Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::operator() ( std::size_t  i,
std::size_t  j 
)
inline

◆ operator()() [2/2]

template<typename TExpressionType , typename TIndicesVectorType >
data_type const& Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::operator() ( std::size_t  i,
std::size_t  j 
) const
inline

◆ size()

template<typename TExpressionType , typename TIndicesVectorType >
std::size_t Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::size ( ) const
inline

◆ size1()

template<typename TExpressionType , typename TIndicesVectorType >
std::size_t Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::size1 ( ) const
inline

◆ size2()

template<typename TExpressionType , typename TIndicesVectorType >
std::size_t Kratos::PermutationMatrix< TExpressionType, TIndicesVectorType >::size2 ( ) const
inline

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