|
PSCF v1.4.0
|
Iterator over points in a Mesh<D>. More...
#include <MeshIterator.h>
Public Member Functions | |
| MeshIterator () | |
| Default constructor. | |
| MeshIterator (const IntVec< D > &dimensions) | |
| Constructor. | |
| void | setDimensions (const IntVec< D > &dimensions) |
| Set the grid dimensions in all directions. | |
| void | begin () |
| Set iterator to the first point in the mesh. | |
| void | operator++ () |
| Increment iterator to next mesh point. | |
| bool | atEnd () const |
| Is this the end (i.e., one past the last point)? | |
| IntVec< D > | position () const |
| Get current position in the grid, as integer vector. | |
| int | position (int i) const |
| Get component i of the current position vector. | |
| int | rank () const |
| Get the rank of current element. | |
Iterator over points in a Mesh<D>.
A mesh iterator iterates over the points of a mesh, keeping track of both the IntVec<D> position and integer rank of the current point as it goes.
Definition at line 28 of file MeshIterator.h.
| Pscf::MeshIterator< D >::MeshIterator | ( | ) |
Default constructor.
Definition at line 20 of file MeshIterator.tpp.
| Pscf::MeshIterator< D >::MeshIterator | ( | const IntVec< D > & | dimensions | ) |
Constructor.
| dimensions | IntVec<D> of grid dimensions |
Definition at line 31 of file MeshIterator.tpp.
References setDimensions().
| void Pscf::MeshIterator< D >::setDimensions | ( | const IntVec< D > & | dimensions | ) |
Set the grid dimensions in all directions.
| dimensions | IntVec<D> of grid dimensions. |
Definition at line 42 of file MeshIterator.tpp.
References UTIL_THROW.
Referenced by Pscf::Rp::IntraCorrelation< D, T >::computeGsq(), and MeshIterator().
| void Pscf::MeshIterator< D >::begin | ( | ) |
Set iterator to the first point in the mesh.
Definition at line 61 of file MeshIterator.tpp.
Referenced by Pscf::Prdc::Cpu::WaveList< D >::allocate(), Pscf::Prdc::Cuda::WaveList< D >::allocate(), Pscf::Prdc::Cpu::WaveList< D >::computedKSq(), Pscf::Rp::IntraCorrelation< D, T >::computeGsq(), Pscf::Prdc::Cpu::WaveList< D >::computeKSq(), Pscf::Prdc::Cpu::WaveList< D >::computeMinimumImages(), Pscf::Prdc::Cuda::WaveList< D >::computeMinimumImages(), Pscf::Rp::FourthOrderParameter< D, T >::computePrefactor(), Pscf::Prdc::Basis< D >::isValid(), Pscf::Rp::BinaryStructureFactor< D, T >::output(), Pscf::Prdc::readCFieldData(), Pscf::Prdc::readCFieldsData(), Pscf::Prdc::replicateUnitCell(), Pscf::Prdc::sortWaves(), Pscf::Prdc::writeCFieldData(), and Pscf::Prdc::writeCFieldsData().
|
inline |
Increment iterator to next mesh point.
Definition at line 76 of file MeshIterator.tpp.
|
inline |
Is this the end (i.e., one past the last point)?
Definition at line 141 of file MeshIterator.h.
Referenced by Pscf::Prdc::Cpu::WaveList< D >::allocate(), Pscf::Prdc::Cuda::WaveList< D >::allocate(), Pscf::Prdc::Cpu::WaveList< D >::computedKSq(), Pscf::Rp::IntraCorrelation< D, T >::computeGsq(), Pscf::Prdc::Cpu::WaveList< D >::computeKSq(), Pscf::Prdc::Cpu::WaveList< D >::computeMinimumImages(), Pscf::Prdc::Cuda::WaveList< D >::computeMinimumImages(), Pscf::Rp::FourthOrderParameter< D, T >::computePrefactor(), Pscf::Prdc::Basis< D >::isValid(), Pscf::Rp::BinaryStructureFactor< D, T >::output(), Pscf::Prdc::readCFieldData(), Pscf::Prdc::readCFieldsData(), Pscf::Prdc::replicateUnitCell(), Pscf::Prdc::sortWaves(), Pscf::Prdc::writeCFieldData(), and Pscf::Prdc::writeCFieldsData().
|
inline |
Get current position in the grid, as integer vector.
Definition at line 122 of file MeshIterator.h.
Referenced by Pscf::Prdc::Cpu::WaveList< D >::allocate(), Pscf::Prdc::Cuda::WaveList< D >::allocate(), Pscf::Rp::IntraCorrelation< D, T >::computeGsq(), Pscf::Prdc::Cpu::WaveList< D >::computeMinimumImages(), Pscf::Prdc::Cuda::WaveList< D >::computeMinimumImages(), Pscf::Rp::FourthOrderParameter< D, T >::computePrefactor(), Pscf::Prdc::Basis< D >::isValid(), Pscf::Rp::BinaryStructureFactor< D, T >::output(), Pscf::Prdc::replicateUnitCell(), and Pscf::Prdc::sortWaves().
|
inline |
Get component i of the current position vector.
| i | index of Cartesian direction 0 <=i < D. |
Definition at line 127 of file MeshIterator.h.
|
inline |
Get the rank of current element.
Definition at line 136 of file MeshIterator.h.
Referenced by Pscf::Prdc::Cpu::WaveList< D >::allocate(), Pscf::Prdc::Cuda::WaveList< D >::allocate(), Pscf::Prdc::Cpu::WaveList< D >::computedKSq(), Pscf::Rp::IntraCorrelation< D, T >::computeGsq(), Pscf::Prdc::Cpu::WaveList< D >::computeKSq(), Pscf::Prdc::Cpu::WaveList< D >::computeMinimumImages(), Pscf::Prdc::Cuda::WaveList< D >::computeMinimumImages(), Pscf::Rp::FourthOrderParameter< D, T >::computePrefactor(), Pscf::Rp::BinaryStructureFactor< D, T >::output(), Pscf::Prdc::readCFieldData(), Pscf::Prdc::readCFieldsData(), Pscf::Prdc::replicateUnitCell(), Pscf::Prdc::sortWaves(), Pscf::Prdc::writeCFieldData(), and Pscf::Prdc::writeCFieldsData().