Advanced Multi-Physics (AMP)
On-Line Documentation
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
AMP::LinearAlgebra::VS_MeshIterator Class Reference

Create a subset based on a mesh iterator. More...

#include <VectorSelector.h>

Inheritance diagram for AMP::LinearAlgebra::VS_MeshIterator:
Inheritance graph
[legend]

Public Member Functions

virtual AMP_MPI communicator (const Vector &vec) const
 Returns the communicator for the subset.
 
virtual bool isSelected (const Vector &v) const override
 Returns true if Vector grossly matches a selection condition.
 
std::shared_ptr< const Vectorsubset (std::shared_ptr< const Vector > vec) const
 Subset the given vector.
 
virtual std::shared_ptr< Vectorsubset (std::shared_ptr< Vector > vec) const override
 Subset the given vector.
 
virtual std::shared_ptr< Vectorsubset (std::shared_ptr< Vector > vec) const=0
 Subset the given vector.
 
 VS_MeshIterator (const AMP::Mesh::MeshIterator &iterator, const AMP::AMP_MPI &comm)
 Constructor.
 

Static Public Member Functions

static std::shared_ptr< VectorSelectorcreate (const std::vector< std::shared_ptr< VectorSelector > > &selectors)
 Create a VectorSelector.
 

Protected Attributes

const AMP_MPI d_comm
 
const Mesh::MeshIterator d_iterator
 

Detailed Description

Create a subset based on a mesh iterator.

This will select the portion of a vector that is on the given mesh iterator

Definition at line 202 of file VectorSelector.h.

Constructor & Destructor Documentation

◆ VS_MeshIterator()

AMP::LinearAlgebra::VS_MeshIterator::VS_MeshIterator ( const AMP::Mesh::MeshIterator iterator,
const AMP::AMP_MPI comm 
)
explicit

Constructor.

Parameters
[in]iteratorThe mesh iterator to use
[in]commThe communicator to use

Member Function Documentation

◆ communicator()

virtual AMP_MPI AMP::LinearAlgebra::VectorSelector::communicator ( const Vector vec) const
virtualinherited

Returns the communicator for the subset.

Parameters
[in]vecThe Vector to match

This function will return the proper communicator given the current vector. For most subsetters, this will be the same communicator as the current vector, however some subsetters (MeshSelector) may opperate on a different (smaller) comm.

Reimplemented in AMP::LinearAlgebra::VS_Comm, and AMP::LinearAlgebra::VS_Mesh.

◆ create()

static std::shared_ptr< VectorSelector > AMP::LinearAlgebra::VectorSelector::create ( const std::vector< std::shared_ptr< VectorSelector > > &  selectors)
staticinherited

Create a VectorSelector.

Create a VectorSelector that applies a set of selectors which all must be met for the subset operation

Parameters
[in]selectorsA list of subsequent selectors to apply

◆ isSelected()

virtual bool AMP::LinearAlgebra::VS_MeshIterator::isSelected ( const Vector vec) const
overridevirtual

Returns true if Vector grossly matches a selection condition.

Parameters
[in]vecThe Vector to match

Base class defaults to accepting all vectors.

Implements AMP::LinearAlgebra::VectorSelector.

◆ subset() [1/3]

std::shared_ptr< const Vector > AMP::LinearAlgebra::VectorSelector::subset ( std::shared_ptr< const Vector vec) const
virtual

Subset the given vector.

Parameters
[in]vecThe Vector to subset

Base class defaults to returning all data in the vector

Implements AMP::LinearAlgebra::VectorSelector.

◆ subset() [2/3]

virtual std::shared_ptr< Vector > AMP::LinearAlgebra::VS_MeshIterator::subset ( std::shared_ptr< Vector vec) const
overridevirtual

Subset the given vector.

Parameters
[in]vecThe Vector to subset

Base class defaults to returning all data in the vector

Implements AMP::LinearAlgebra::VectorSelector.

◆ subset() [3/3]

virtual std::shared_ptr< Vector > AMP::LinearAlgebra::VectorSelector::subset ( std::shared_ptr< Vector vec) const
virtual

Subset the given vector.

Parameters
[in]vecThe Vector to subset

Base class defaults to returning all data in the vector

Implements AMP::LinearAlgebra::VectorSelector.

Member Data Documentation

◆ d_comm

const AMP_MPI AMP::LinearAlgebra::VS_MeshIterator::d_comm
protected

Definition at line 217 of file VectorSelector.h.

◆ d_iterator

const Mesh::MeshIterator AMP::LinearAlgebra::VS_MeshIterator::d_iterator
protected

Definition at line 218 of file VectorSelector.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:43.
Comments on this page