class
NearestNeighbour
Base classes
- class KNearestNeighboursBase
Public types
-
using Config = eckit::
Parametrisation -
using Metadata = util::
Metadata
Constructors, destructors, conversion operators
- NearestNeighbour(const Config& config)
- ~NearestNeighbour() override
Public functions
-
void print(std::
ostream&) const override - void setup(const FunctionSpace& source, const FunctionSpace& target)
- Setup the interpolator relating two functionspaces.
- void setup(const Grid& source, const Grid& target)
- void setup(const FunctionSpace& source, const Field& target)
- void setup(const FunctionSpace& source, const FieldSet& target)
- void setup(const Grid& source, const Grid& target, const Cache&)
- auto execute(const FieldSet& source, FieldSet& target) const -> Metadata
- auto execute(const Field& source, Field& target) const -> Metadata
- auto execute_adjoint(FieldSet& source, const FieldSet& target) const -> Metadata
- execute_adjoint
- auto execute_adjoint(Field& source, const Field& target) const -> Metadata
-
auto createCache() const -> interpolation::
Cache virtual
Private functions
- auto source() const -> const FunctionSpace& override
- auto target() const -> const FunctionSpace& override
- void do_setup(const FunctionSpace& source, const FunctionSpace& target) override
- Create an interpolant sparse matrix relating two (pre-partitioned) meshes, using nearest neighbour method.
- void do_setup(const Grid& source, const Grid& target, const Cache&) override
Typedef documentation
using atlas:: interpolation:: method:: NearestNeighbour:: Config = eckit:: Parametrisation
using atlas:: interpolation:: method:: NearestNeighbour:: Metadata = util:: Metadata
Function documentation
void atlas:: interpolation:: method:: NearestNeighbour:: setup(const FunctionSpace& source,
const FunctionSpace& target)
Setup the interpolator relating two functionspaces.
Parameters | |
---|---|
source | functionspace containing source elements |
target | functionspace containing target points |
void atlas:: interpolation:: method:: NearestNeighbour:: setup(const FunctionSpace& source,
const Field& target)
void atlas:: interpolation:: method:: NearestNeighbour:: setup(const FunctionSpace& source,
const FieldSet& target)
Metadata atlas:: interpolation:: method:: NearestNeighbour:: execute_adjoint(FieldSet& source,
const FieldSet& target) const
execute_adjoint
Parameters | |
---|---|
source | - it is either a FieldSet or a Field |
target | - it is either a FieldSet or a Field Note that formally in an adjoint operation of this type we should be setting the values in the target to zero. This is not done for efficiency reasons and because in most cases it is not necessary. |
Metadata atlas:: interpolation:: method:: NearestNeighbour:: execute_adjoint(Field& source,
const Field& target) const
interpolation:: Cache atlas:: interpolation:: method:: NearestNeighbour:: createCache() const virtual
void atlas:: interpolation:: method:: NearestNeighbour:: do_setup(const FunctionSpace& source,
const FunctionSpace& target) override private
Create an interpolant sparse matrix relating two (pre-partitioned) meshes, using nearest neighbour method.
Parameters | |
---|---|
source | functionspace containing source elements |
target | functionspace containing target points |