Alien  1.3.0
Developer documentation
Loading...
Searching...
No Matches
Alien::NormalizeOpt Class Reference

Normalize a linear system. More...

#include <core/alien/expression/normalization/NormalizeOpt.h>

Collaboration diagram for Alien::NormalizeOpt:

Classes

class  LU
 LU normalization. More...
class  Op
 Normalize operator. More...
class  Op2
 Normalize operator for composite matrices. More...

Public Types

enum  eAlgoType { StdLU , EigenLU }
 Type of algorithm. More...
enum  eOptType { SumFirstEq }
 Type of the options. More...
enum  eErrorType { NoError , PivotError , WithErrors }
 Type of the error. More...
typedef SimpleCSRMatrix< Arccore::Real > MatrixImpl
 Type of the matrix implementation.
typedef SimpleCSRVector< Arccore::Real > VectorImpl
 Type of the vector implementation.

Public Member Functions

 NormalizeOpt ()
 Constructor.
virtual ~NormalizeOpt ()
 Free resources.
void setAlgo (eAlgoType algo)
 Set the type of algorithm.
void setOpt (eOptType opt, bool flag)
 Set the options.
eErrorType normalize (IMatrix &matrix, IVector &vector) const
 Normalize the linear system.
eErrorType normalize (CompositeMatrix &matrix, CompositeVector &vector, ConstArrayView< Integer > eq_ids) const
 Normalize a composite linear system.

Private Member Functions

eErrorType _normalize (MatrixImpl &matrix, VectorImpl &vector) const
 Normalize a linear system.
eErrorType _normalize (MatrixImpl &matrix, MatrixImpl &matrix2, bool trans, ConstArrayView< Integer > eq_ids, VectorImpl &vector) const
 Normalize a linear system.
eErrorType _normalize (MatrixImpl &matrix, Arccore::ConstArrayView< Arccore::Integer > eq_ids, MatrixImpl &matrix2, bool trans, VectorImpl &vector) const
 Normalize a linear system.

Private Attributes

eAlgoType m_algo
 The algorithm.
bool m_sum_first_eq
 Flag to sum the fist equation.

Detailed Description

Normalize a linear system.

Definition at line 32 of file NormalizeOpt.h.

Member Typedef Documentation

◆ MatrixImpl

Type of the matrix implementation.

Definition at line 57 of file NormalizeOpt.h.

◆ VectorImpl

Type of the vector implementation.

Definition at line 59 of file NormalizeOpt.h.

Member Enumeration Documentation

◆ eAlgoType

Type of algorithm.

Definition at line 36 of file NormalizeOpt.h.

◆ eErrorType

Type of the error.

Definition at line 49 of file NormalizeOpt.h.

◆ eOptType

Type of the options.

Definition at line 43 of file NormalizeOpt.h.

Constructor & Destructor Documentation

◆ NormalizeOpt()

Alien::NormalizeOpt::NormalizeOpt ( )

Constructor.

Definition at line 32 of file NormalizeOpt.cc.

References m_algo, and m_sum_first_eq.

◆ ~NormalizeOpt()

virtual Alien::NormalizeOpt::~NormalizeOpt ( )
inlinevirtual

Free resources.

Definition at line 65 of file NormalizeOpt.h.

Member Function Documentation

◆ _normalize() [1/3]

eErrorType Alien::NormalizeOpt::_normalize ( MatrixImpl & matrix,
Arccore::ConstArrayView< Arccore::Integer > eq_ids,
MatrixImpl & matrix2,
bool trans,
VectorImpl & vector ) const
private

Normalize a linear system.

Parameters
[in]matrixThe first submatrix
[in]eq_idsThe ids of the equations
[in]matrix2The second submatrix
[in]transWhether or not the matrix is transposed
[in]vectorThe vector
Returns
The eventual error

◆ _normalize() [2/3]

NormalizeOpt::eErrorType Alien::NormalizeOpt::_normalize ( MatrixImpl & matrix,
MatrixImpl & matrix2,
bool trans,
ConstArrayView< Integer > eq_ids,
VectorImpl & vector ) const
private

Normalize a linear system.

Parameters
[in]matrixThe first submatrix
[in]matrix2The second submatrix
[in]transWhether or not the matrix is transposed
[in]eq_idsThe ids of the equations
[in]vectorThe vector
Returns
The eventual error

Definition at line 599 of file NormalizeOpt.cc.

References Alien::IVectorImpl::block(), m_algo, m_sum_first_eq, Alien::NormalizeOpt::Op2::multInvDiag(), and Alien::Block::size().

Here is the call graph for this function:

◆ _normalize() [3/3]

NormalizeOpt::eErrorType Alien::NormalizeOpt::_normalize ( MatrixImpl & matrix,
VectorImpl & vector ) const
private

Normalize a linear system.

Parameters
[in]matrixThe matrix
[in]vectorThe vector
Returns
The eventual error

Definition at line 280 of file NormalizeOpt.cc.

References Alien::IMatrixImpl::block(), m_algo, m_sum_first_eq, Alien::NormalizeOpt::Op::multInvDiag(), and Alien::Block::size().

Referenced by normalize(), and normalize().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ normalize() [1/2]

NormalizeOpt::eErrorType Alien::NormalizeOpt::normalize ( CompositeMatrix & matrix,
CompositeVector & vector,
ConstArrayView< Integer > eq_ids ) const

Normalize a composite linear system.

Parameters
[in]matrixThe composite matrix
[in]vectorThe composite vector
[in]eq_idsThe ids of the equations
Returns
The eventual error

Definition at line 75 of file NormalizeOpt.cc.

References _normalize(), Alien::MultiMatrixImpl::get(), Alien::MultiVectorImpl::get(), Alien::CompositeMatrix::impl(), and Alien::CompositeVector::impl().

Here is the call graph for this function:

◆ normalize() [2/2]

NormalizeOpt::eErrorType Alien::NormalizeOpt::normalize ( IMatrix & matrix,
IVector & vector ) const

Normalize the linear system.

Parameters
[in]matrixThe matrix
[in]vectorThe vector
Returns
The eventual error

Definition at line 64 of file NormalizeOpt.cc.

References _normalize(), Alien::MultiMatrixImpl::get(), Alien::MultiVectorImpl::get(), Alien::IMatrix::impl(), and Alien::IVector::impl().

Here is the call graph for this function:

◆ setAlgo()

void Alien::NormalizeOpt::setAlgo ( eAlgoType algo)

Set the type of algorithm.

Parameters
[in]algoThe type of algorithm

Definition at line 40 of file NormalizeOpt.cc.

References m_algo.

◆ setOpt()

void Alien::NormalizeOpt::setOpt ( eOptType opt,
bool flag )

Set the options.

Parameters
[in]optThe option
[in]flagWhether or not the option is activated

Definition at line 48 of file NormalizeOpt.cc.

References m_sum_first_eq.

Member Data Documentation

◆ m_algo

eAlgoType Alien::NormalizeOpt::m_algo
private

The algorithm.

Definition at line 138 of file NormalizeOpt.h.

Referenced by _normalize(), _normalize(), NormalizeOpt(), and setAlgo().

◆ m_sum_first_eq

bool Alien::NormalizeOpt::m_sum_first_eq
private

Flag to sum the fist equation.

Definition at line 140 of file NormalizeOpt.h.

Referenced by _normalize(), _normalize(), NormalizeOpt(), and setOpt().


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