Advanced Multi-Physics (AMP)
On-Line Documentation
Public Member Functions | Private Member Functions | Private Attributes | List of all members
AMP::LinearAlgebra::GetRowHelper Class Referencefinal

#include <GetRowHelper.h>

Public Member Functions

void deallocate ()
 Release all internal storage.
 
const size_t * getLocals () const
 
const size_t * getRemotes () const
 
template<class INT >
void getRow (size_t row, INT *local, INT *remote) const
 Get the row.
 
 GetRowHelper ()=default
 
 GetRowHelper (const GetRowHelper &)=delete
 
 GetRowHelper (GetRowHelper &&)=default
 
 GetRowHelper (std::shared_ptr< const AMP::Discretization::DOFManager > leftDOF, std::shared_ptr< const AMP::Discretization::DOFManager > rightDOF)
 Construct GetRowHelper.
 
std::array< size_t, 2 > NNZ (size_t row) const
 Get the number of non-zeros.
 
template<class INT >
void NNZ (size_t row, INT &N_local, INT &N_remote) const
 Get the number of non-zeros.
 
GetRowHelperoperator= (const GetRowHelper &)=delete
 
GetRowHelperoperator= (GetRowHelper &&)=default
 
 ~GetRowHelper ()
 Destructor.
 

Private Member Functions

std::array< size_t *, 2 > getRow2 (size_t row) const
 
void reserve (size_t N)
 

Private Attributes

size_t d_capacity [2] = { 0, 0 }
 
bool d_hasFields = true
 
std::shared_ptr< const AMP::Discretization::DOFManagerd_leftDOF
 
size_t * d_local = nullptr
 
size_t * d_localOffset = nullptr
 
std::array< size_t, 2 > * d_NNZ = nullptr
 
size_t * d_remote = nullptr
 
size_t * d_remoteOffset = nullptr
 
std::shared_ptr< const AMP::Discretization::DOFManagerd_rightDOF
 
size_t d_size [2] = { 0, 0 }
 

Detailed Description

Definition at line 14 of file GetRowHelper.h.

Constructor & Destructor Documentation

◆ GetRowHelper() [1/4]

AMP::LinearAlgebra::GetRowHelper::GetRowHelper ( std::shared_ptr< const AMP::Discretization::DOFManager leftDOF,
std::shared_ptr< const AMP::Discretization::DOFManager rightDOF 
)

Construct GetRowHelper.

This will construct the GetRowHelper from the left and right DOFManager

Parameters
[in]leftDOFThe left DOFManager
[in]rightDOFThe right DOFManager

◆ ~GetRowHelper()

AMP::LinearAlgebra::GetRowHelper::~GetRowHelper ( )

Destructor.

◆ GetRowHelper() [2/4]

AMP::LinearAlgebra::GetRowHelper::GetRowHelper ( )
default

◆ GetRowHelper() [3/4]

AMP::LinearAlgebra::GetRowHelper::GetRowHelper ( GetRowHelper &&  )
default

◆ GetRowHelper() [4/4]

AMP::LinearAlgebra::GetRowHelper::GetRowHelper ( const GetRowHelper )
delete

Member Function Documentation

◆ deallocate()

void AMP::LinearAlgebra::GetRowHelper::deallocate ( )

Release all internal storage.

◆ getLocals()

const size_t * AMP::LinearAlgebra::GetRowHelper::getLocals ( ) const
inline

Definition at line 62 of file GetRowHelper.h.

References d_local.

◆ getRemotes()

const size_t * AMP::LinearAlgebra::GetRowHelper::getRemotes ( ) const
inline

Definition at line 64 of file GetRowHelper.h.

References d_remote.

◆ getRow()

template<class INT >
void AMP::LinearAlgebra::GetRowHelper::getRow ( size_t  row,
INT *  local,
INT *  remote 
) const

Get the row.

This will return the local and remote non-zero entries for the row

Parameters
[in]rowThe row of interest
[out]localThe local non-zero entries (may be null)
[out]remoteThe remote non-zero entries (may be null)

◆ getRow2()

std::array< size_t *, 2 > AMP::LinearAlgebra::GetRowHelper::getRow2 ( size_t  row) const
private

◆ NNZ() [1/2]

std::array< size_t, 2 > AMP::LinearAlgebra::GetRowHelper::NNZ ( size_t  row) const

Get the number of non-zeros.

This will return the number of non-zeros for the row as [local,remote]

Parameters
[in]rowThe row

◆ NNZ() [2/2]

template<class INT >
void AMP::LinearAlgebra::GetRowHelper::NNZ ( size_t  row,
INT &  N_local,
INT &  N_remote 
) const

Get the number of non-zeros.

This will return the number of non-zeros for the row

Parameters
[in]rowThe row
[out]N_localThe number of local non-zeros
[out]N_remoteThe number of remote non-zeros

◆ operator=() [1/2]

GetRowHelper & AMP::LinearAlgebra::GetRowHelper::operator= ( const GetRowHelper )
delete

◆ operator=() [2/2]

GetRowHelper & AMP::LinearAlgebra::GetRowHelper::operator= ( GetRowHelper &&  )
default

◆ reserve()

void AMP::LinearAlgebra::GetRowHelper::reserve ( size_t  N)
private

Member Data Documentation

◆ d_capacity

size_t AMP::LinearAlgebra::GetRowHelper::d_capacity[2] = { 0, 0 }
private

Definition at line 79 of file GetRowHelper.h.

◆ d_hasFields

bool AMP::LinearAlgebra::GetRowHelper::d_hasFields = true
private

Definition at line 72 of file GetRowHelper.h.

◆ d_leftDOF

std::shared_ptr<const AMP::Discretization::DOFManager> AMP::LinearAlgebra::GetRowHelper::d_leftDOF
private

Definition at line 80 of file GetRowHelper.h.

◆ d_local

size_t* AMP::LinearAlgebra::GetRowHelper::d_local = nullptr
private

Definition at line 74 of file GetRowHelper.h.

Referenced by getLocals().

◆ d_localOffset

size_t* AMP::LinearAlgebra::GetRowHelper::d_localOffset = nullptr
private

Definition at line 76 of file GetRowHelper.h.

◆ d_NNZ

std::array<size_t, 2>* AMP::LinearAlgebra::GetRowHelper::d_NNZ = nullptr
private

Definition at line 73 of file GetRowHelper.h.

◆ d_remote

size_t* AMP::LinearAlgebra::GetRowHelper::d_remote = nullptr
private

Definition at line 75 of file GetRowHelper.h.

Referenced by getRemotes().

◆ d_remoteOffset

size_t* AMP::LinearAlgebra::GetRowHelper::d_remoteOffset = nullptr
private

Definition at line 77 of file GetRowHelper.h.

◆ d_rightDOF

std::shared_ptr<const AMP::Discretization::DOFManager> AMP::LinearAlgebra::GetRowHelper::d_rightDOF
private

Definition at line 81 of file GetRowHelper.h.

◆ d_size

size_t AMP::LinearAlgebra::GetRowHelper::d_size[2] = { 0, 0 }
private

Definition at line 78 of file GetRowHelper.h.


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



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:42.
Comments on this page