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.
|
Provides a DistributedSystemVector which implements FEM assemble capabilities. More...
#include <distributed_system_vector.h>
Public Member Functions | |
Life Cycle | |
DistributedSystemVector (const DistributedSparseGraph< IndexType > &rGraph) | |
DistributedSystemVector (DistributedSystemVector const &rOther) | |
Copy constructor. More... | |
DistributedSystemVector (const DistributedNumbering< IndexType > &rNumbering) | |
~DistributedSystemVector () | |
Destructor. More... | |
Operators | |
const DataCommunicator & | GetComm () const |
const DataCommunicator * | pGetComm () const |
const DistributedNumbering< IndexType > & | GetNumbering () const |
void | Clear () |
void | SetValue (const TDataType value) |
TDataType & | operator() (IndexType I) |
const TDataType & | operator() (IndexType I) const |
TDataType & | operator[] (IndexType I) |
const TDataType & | operator[] (IndexType I) const |
IndexType | Size () const |
IndexType | LocalSize () const |
DenseVector< TDataType > & | GetLocalData () |
const DenseVector< TDataType > & | GetLocalData () const |
const DistributedVectorExporter< TIndexType > & | GetExporter () const |
void | AddEntry (TIndexType GlobalI) |
template<class TIteratorType > | |
void | AddEntries (TIteratorType it_begin, TIteratorType it_end) |
TDataType | Dot (const DistributedSystemVector &rOtherVector, MpiIndexType gather_on_rank=0) |
void | Add (const TDataType factor, const DistributedSystemVector &rOtherVector) |
DistributedSystemVector & | operator= (DistributedSystemVector const &rOtherVector) |
Assignment operator. More... | |
DistributedSystemVector & | operator+= (const DistributedSystemVector &rOtherVector) |
DistributedSystemVector & | operator-= (const DistributedSystemVector &rOtherVector) |
DistributedSystemVector & | operator*= (const TDataType &multiplier_factor) |
DistributedSystemVector & | operator/= (const TDataType ÷_factor) |
Operations | |
void | BeginAssemble () |
void | FinalizeAssemble () |
template<class TVectorType , class TIndexVectorType > | |
void | Assemble (const TVectorType &rVectorInput, const TIndexVectorType &EquationId) |
Input and output | |
std::string | Info () const |
Turn back information as a string. More... | |
void | PrintInfo (std::ostream &rOStream) const |
Print information about this object. More... | |
void | PrintData (std::ostream &rOStream) const |
Print object's data. More... | |
Type Definitions | |
typedef TDataType | value_type |
typedef TIndexType | IndexType |
typedef int | MpiIndexType |
KRATOS_CLASS_POINTER_DEFINITION (DistributedSystemVector) | |
Pointer definition of DistributedSystemVector. More... | |
Provides a DistributedSystemVector which implements FEM assemble capabilities.
typedef TIndexType Kratos::DistributedSystemVector< TDataType, TIndexType >::IndexType |
typedef int Kratos::DistributedSystemVector< TDataType, TIndexType >::MpiIndexType |
typedef TDataType Kratos::DistributedSystemVector< TDataType, TIndexType >::value_type |
|
inline |
|
inlineexplicit |
Copy constructor.
|
inline |
|
inline |
Destructor.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Turn back information as a string.
Kratos::DistributedSystemVector< TDataType, TIndexType >::KRATOS_CLASS_POINTER_DEFINITION | ( | DistributedSystemVector< TDataType, TIndexType > | ) |
Pointer definition of DistributedSystemVector.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Assignment operator.
|
inline |
|
inline |
|
inline |
|
inline |
Print object's data.
|
inline |
Print information about this object.
|
inline |
|
inline |