A class used to hold basic parameters for a matrix. More...
#include <MatrixParameters.h>

Public Member Functions | |
| AMP::AMP_MPI & | getComm () |
| Get the communicator for the matrix. | |
| size_t | getGlobalNumberOfColumns () const |
| Return the global number of columns. | |
| size_t | getGlobalNumberOfRows () const |
| Return the global number of rows. | |
| uint64_t | getID () const |
| Get a unique id hash. | |
| std::shared_ptr< CommunicationList > | getLeftCommList () |
| Get the communication list for the left vector. | |
| std::shared_ptr< AMP::Discretization::DOFManager > | getLeftDOFManager () |
| std::shared_ptr< Variable > | getLeftVariable () const |
| size_t | getLocalNumberOfColumns () const |
| Return the local number of columns. | |
| size_t | getLocalNumberOfRows () const |
| Return the local number of rows. | |
| std::shared_ptr< CommunicationList > | getRightCommList () |
| Get the communication list for the right vector. | |
| std::shared_ptr< AMP::Discretization::DOFManager > | getRightDOFManager () |
| std::shared_ptr< Variable > | getRightVariable () const |
| const std::function< std::vector< size_t >(size_t)> & | getRowFunction () const |
| Get the bound function that generates column IDs for each row. | |
| MatrixParameters ()=delete | |
| MatrixParameters (int64_t fid, AMP::IO::RestartManager *manager) | |
| Read restart data from file. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, AMP::Utilities::Backend backend, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< CommunicationList > commListLeft, std::shared_ptr< CommunicationList > commListRight, AMP::Utilities::Backend backend, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< CommunicationList > commListLeft, std::shared_ptr< CommunicationList > commListRight, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< Variable > varLeft, std::shared_ptr< Variable > varRight, AMP::Utilities::Backend backend, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< Variable > varLeft, std::shared_ptr< Variable > varRight, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< Variable > varLeft, std::shared_ptr< Variable > varRight, std::shared_ptr< CommunicationList > commListLeft, std::shared_ptr< CommunicationList > commListRight, AMP::Utilities::Backend backend, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| MatrixParameters (std::shared_ptr< AMP::Discretization::DOFManager > dofLeft, std::shared_ptr< AMP::Discretization::DOFManager > dofRight, const AMP_MPI &comm, std::shared_ptr< Variable > varLeft, std::shared_ptr< Variable > varRight, std::shared_ptr< CommunicationList > commListLeft, std::shared_ptr< CommunicationList > commListRight, const std::function< std::vector< size_t >(size_t)> getRow={}) | |
| Constructor. | |
| void | registerChildObjects (AMP::IO::RestartManager *manager) const override |
| Register any child objects. | |
| void | setLeftVariable (std::shared_ptr< Variable > var) |
| void | setRightVariable (std::shared_ptr< Variable > var) |
| std::string | type () const override |
| type of this object | |
| void | writeRestart (int64_t fid) const override |
| Write restart data to file. | |
| virtual | ~MatrixParameters ()=default |
| Destructor. | |
Public Attributes | |
| AMP::Utilities::Backend | d_backend = AMP::Utilities::Backend::Serial |
| uint64_t | d_hash = 0 |
Protected Member Functions | |
| void | generateCommLists () |
Protected Attributes | |
| AMP_MPI | d_comm |
| std::shared_ptr< CommunicationList > | d_CommListLeft |
| std::shared_ptr< CommunicationList > | d_CommListRight |
| std::shared_ptr< AMP::Discretization::DOFManager > | d_DOFManagerLeft |
| std::shared_ptr< AMP::Discretization::DOFManager > | d_DOFManagerRight |
| std::function< std::vector< size_t >(size_t)> | d_getRow |
| Function that generates column ids for each row of the matrix. | |
| std::shared_ptr< Variable > | d_VariableLeft |
| std::shared_ptr< Variable > | d_VariableRight |
A class used to hold basic parameters for a matrix.
Definition at line 15 of file MatrixParameters.h.
|
delete |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | backend | Acceleration backend for matrix operations |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | varLeft | Pointer to left variable |
| [in] | varRight | Pointer to right variable |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | varLeft | Pointer to left variable |
| [in] | varRight | Pointer to right variable |
| [in] | backend | Acceleration backend for matrix operations |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | commListLeft | Communication list for the left vector |
| [in] | commListRight | Communication list for the right vector |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | commListLeft | Communication list for the left vector |
| [in] | commListRight | Communication list for the right vector |
| [in] | backend | Acceleration backend for matrix operations |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | varLeft | Pointer to left variable |
| [in] | varRight | Pointer to right variable |
| [in] | commListLeft | Communication list for the left vector |
| [in] | commListRight | Communication list for the right vector |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
explicit |
Constructor.
| [in] | dofLeft | The DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector ) |
| [in] | dofRight | The DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector ) |
| [in] | comm | Communicator for the matrix |
| [in] | varLeft | Pointer to left variable |
| [in] | varRight | Pointer to right variable |
| [in] | commListLeft | Communication list for the left vector |
| [in] | commListRight | Communication list for the right vector |
| [in] | backend | Acceleration backend for matrix operations |
| [in] | getRow | Function that finds finds column indices of a row in each block |
|
virtualdefault |
Destructor.
| AMP::LinearAlgebra::MatrixParameters::MatrixParameters | ( | int64_t | fid, |
| AMP::IO::RestartManager * | manager | ||
| ) |
Read restart data from file.
| fid | File identifier to write |
| manager | Restart manager |
|
protected |
|
inlineinherited |
Get the communicator for the matrix.
Definition at line 90 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_comm.
| size_t AMP::LinearAlgebra::MatrixParameters::getGlobalNumberOfColumns | ( | ) | const |
Return the global number of columns.
| size_t AMP::LinearAlgebra::MatrixParameters::getGlobalNumberOfRows | ( | ) | const |
Return the global number of rows.
|
inlineinherited |
Get a unique id hash.
Definition at line 84 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_hash.
| std::shared_ptr< CommunicationList > AMP::LinearAlgebra::MatrixParameters::getLeftCommList | ( | ) |
Get the communication list for the left vector.
| std::shared_ptr< AMP::Discretization::DOFManager > AMP::LinearAlgebra::MatrixParameters::getLeftDOFManager | ( | ) |
Get the DOFManager for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector )
|
inlineinherited |
Definition at line 96 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_VariableLeft.
| size_t AMP::LinearAlgebra::MatrixParameters::getLocalNumberOfColumns | ( | ) | const |
Return the local number of columns.
| size_t AMP::LinearAlgebra::MatrixParameters::getLocalNumberOfRows | ( | ) | const |
Return the local number of rows.
| std::shared_ptr< CommunicationList > AMP::LinearAlgebra::MatrixParameters::getRightCommList | ( | ) |
Get the communication list for the right vector.
| std::shared_ptr< AMP::Discretization::DOFManager > AMP::LinearAlgebra::MatrixParameters::getRightDOFManager | ( | ) |
Get the DOFManager for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector )
|
inlineinherited |
Definition at line 98 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_VariableRight.
|
inline |
Get the bound function that generates column IDs for each row.
Definition at line 181 of file MatrixParameters.h.
References d_getRow.
|
overridevirtual |
Register any child objects.
This function will register child objects with the manager
| manager | Restart manager |
Reimplemented from AMP::LinearAlgebra::MatrixParametersBase.
|
inlineinherited |
Definition at line 92 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_VariableLeft.
|
inlineinherited |
Definition at line 94 of file MatrixParametersBase.h.
References AMP::LinearAlgebra::MatrixParametersBase::d_VariableRight.
|
inlineoverridevirtual |
type of this object
Reimplemented from AMP::LinearAlgebra::MatrixParametersBase.
Definition at line 197 of file MatrixParameters.h.
|
overridevirtual |
Write restart data to file.
This function will write the mesh to an HDF5 file
| fid | File identifier to write |
Reimplemented from AMP::LinearAlgebra::MatrixParametersBase.
|
inherited |
Definition at line 136 of file MatrixParametersBase.h.
|
protectedinherited |
Definition at line 124 of file MatrixParametersBase.h.
Referenced by AMP::LinearAlgebra::MatrixParametersBase::getComm().
|
protected |
The communication list of a left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector )
Definition at line 233 of file MatrixParameters.h.
|
protected |
The communication list of a right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector )
Definition at line 237 of file MatrixParameters.h.
|
protected |
Definition at line 226 of file MatrixParameters.h.
|
protected |
Definition at line 229 of file MatrixParameters.h.
|
protected |
Function that generates column ids for each row of the matrix.
Definition at line 240 of file MatrixParameters.h.
Referenced by getRowFunction().
|
inherited |
Definition at line 139 of file MatrixParametersBase.h.
Referenced by AMP::LinearAlgebra::MatrixParametersBase::getID().
|
protectedinherited |
The variable for the left vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(y\) is a left vector )
Definition at line 128 of file MatrixParametersBase.h.
Referenced by AMP::LinearAlgebra::MatrixParametersBase::getLeftVariable(), and AMP::LinearAlgebra::MatrixParametersBase::setLeftVariable().
|
protectedinherited |
The variable for the right vector ( For \(\mathbf{y}^T\mathbf{Ax}\), \(x\) is a right vector )
Definition at line 132 of file MatrixParametersBase.h.
Referenced by AMP::LinearAlgebra::MatrixParametersBase::getRightVariable(), and AMP::LinearAlgebra::MatrixParametersBase::setRightVariable().
|
Advanced Multi-Physics (AMP) Oak Ridge National Laboratory Idaho National Laboratory Los Alamos National Laboratory |
This page automatically produced from the source code by Last updated: Tue Mar 10 2026 13:06:42. Comments on this page |