|
virtual | ~Interface ()=default |
|
virtual DEAL_II_DEPRECATED std::vector< std::vector< double > > | properties_at_points (const ParticleHandler< dim > &particle_handler, const std::vector< Point< dim >> &positions, const typename parallel::distributed::Triangulation< dim >::active_cell_iterator &cell=typename parallel::distributed::Triangulation< dim >::active_cell_iterator()) const |
|
virtual std::vector< std::vector< double > > | properties_at_points (const ParticleHandler< dim > &particle_handler, const std::vector< Point< dim >> &positions, const ComponentMask &selected_properties, const typename parallel::distributed::Triangulation< dim >::active_cell_iterator &cell=typename parallel::distributed::Triangulation< dim >::active_cell_iterator()) const =0 |
|
virtual void | parse_parameters (ParameterHandler &prm) |
|
template<int dim>
class aspect::Particle::Interpolator::Interface< dim >
An abstract class defining virtual methods for performing interpolation of particle properties to arbitrary points.
Definition at line 50 of file interface.h.
template<int dim>
virtual std::vector<std::vector<double> > aspect::Particle::Interpolator::Interface< dim >::properties_at_points |
( |
const ParticleHandler< dim > & |
particle_handler, |
|
|
const std::vector< Point< dim >> & |
positions, |
|
|
const ComponentMask & |
selected_properties, |
|
|
const typename parallel::distributed::Triangulation< dim >::active_cell_iterator & |
cell = typename parallel::distributed::Triangulation< dim >::active_cell_iterator() |
|
) |
| const |
|
pure virtual |
Perform an interpolation of the properties of the particles in this cell onto a vector of positions in this cell. Implementations of this function must return a vector of a vector of doubles with as many entries as positions in positions
. Each entry is a vector with as many entries as there are particle properties in this computation. All in selected_properties
selected components will be filled with computed properties, all other components are not filled (or filled with invalid values).
- Parameters
-
[in] | particle_handler | Reference to the particle handler that allows accessing the particles in the domain. |
[in] | positions | The vector of positions where the properties should be evaluated. |
[in] | selected_properties | A component mask that determines which particle properties are interpolated in this function. |
[in] | cell | An optional iterator to the cell containing the particles. Not all callers will know the cell of the particles, but providing the cell when known speeds up the interpolation significantly. |
- Returns
- A vector with as many entries as
positions
. Every entry is a vector of interpolated particle properties at this position.
Implemented in aspect::Particle::Interpolator::QuadraticLeastSquares< dim >, aspect::Particle::Interpolator::BilinearLeastSquares< dim >, aspect::Particle::Interpolator::NearestNeighbor< dim >, aspect::Particle::Interpolator::CellAverage< dim >, and aspect::Particle::Interpolator::HarmonicAverage< dim >.