A class used by Vector::select and Vector::selectInto to create vectors with particular data. More...
#include <VectorSelector.h>

Public Member Functions | |
| virtual AMP_MPI | communicator (const Vector &vec) const |
| Returns the communicator for the subset. | |
| virtual bool | isSelected (const Vector &vec) const =0 |
| Returns true if Vector grossly matches a selection condition. | |
| std::shared_ptr< const Vector > | subset (std::shared_ptr< const Vector > vec) const |
| Subset the given vector. | |
| virtual std::shared_ptr< Vector > | subset (std::shared_ptr< Vector > vec) const =0 |
| Subset the given vector. | |
| virtual | ~VectorSelector () |
| Virtual destructor. | |
Static Public Member Functions | |
| static std::shared_ptr< VectorSelector > | create (const std::vector< std::shared_ptr< VectorSelector > > &selectors) |
| Create a VectorSelector. | |
A class used by Vector::select and Vector::selectInto to create vectors with particular data.
VectorSelector is designed to perform two types of selection: gross and fine. The isSelected method will determine if a Vector should be considered for fine selection. The subset method can be used to create a fine subset of the Vector. These methods are meant to be used solely in Vector::selectInto(). Subclasses of Vector are encouraged to call Vector::selectInto() rather than use these methods.
Definition at line 21 of file VectorSelector.h.
|
virtual |
Virtual destructor.
|
virtual |
Returns the communicator for the subset.
| [in] | vec | The 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.
|
static |
Create a VectorSelector.
Create a VectorSelector that applies a set of selectors which all must be met for the subset operation
| [in] | selectors | A list of subsequent selectors to apply |
|
pure virtual |
Returns true if Vector grossly matches a selection condition.
| [in] | vec | The Vector to match |
Base class defaults to accepting all vectors.
Implemented in AMP::LinearAlgebra::VS_MultiVariable, AMP::LinearAlgebra::NullSelector, AMP::LinearAlgebra::MultiSelector, AMP::LinearAlgebra::VS_ByVariableName, AMP::LinearAlgebra::VS_Stride, AMP::LinearAlgebra::VS_Components, AMP::LinearAlgebra::VS_Comm, AMP::LinearAlgebra::VS_Mesh, and AMP::LinearAlgebra::VS_MeshIterator.
| std::shared_ptr< const Vector > AMP::LinearAlgebra::VectorSelector::subset | ( | std::shared_ptr< const Vector > | vec | ) | const |
Subset the given vector.
| [in] | vec | The Vector to subset |
Base class defaults to returning all data in the vector
|
pure virtual |
Subset the given vector.
| [in] | vec | The Vector to subset |
Base class defaults to returning all data in the vector
Implemented in AMP::LinearAlgebra::VS_ByVariableName, AMP::LinearAlgebra::VS_Stride, AMP::LinearAlgebra::VS_Components, AMP::LinearAlgebra::VS_Comm, AMP::LinearAlgebra::VS_Mesh, AMP::LinearAlgebra::VS_MeshIterator, AMP::LinearAlgebra::MultiSelector, AMP::LinearAlgebra::VS_ByVariableName, AMP::LinearAlgebra::VS_Stride, AMP::LinearAlgebra::VS_Components, AMP::LinearAlgebra::VS_Comm, AMP::LinearAlgebra::VS_Mesh, AMP::LinearAlgebra::VS_MeshIterator, AMP::LinearAlgebra::NullSelector, AMP::LinearAlgebra::MultiSelector, AMP::LinearAlgebra::VS_ByVariableName, AMP::LinearAlgebra::VS_Stride, AMP::LinearAlgebra::VS_Components, AMP::LinearAlgebra::VS_Comm, AMP::LinearAlgebra::VS_Mesh, AMP::LinearAlgebra::VS_MeshIterator, and AMP::LinearAlgebra::MultiSelector.
|
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:43. Comments on this page |