atlas
|
Base redistributer class. More...
#include <Redistribution.h>
Public Member Functions | |
Redistribution () | |
Empty default constructor. | |
Redistribution (const FunctionSpace &sourceFunctionSpace, const FunctionSpace &targetFunctionSpace) | |
Constructs and initialises the redistributor. More... | |
void | execute (const Field &sourceField, Field &targetField) const |
Maps source field to target field. More... | |
void | execute (const FieldSet &sourceFieldSet, FieldSet &targetFieldSet) const |
Redistributes source field set to target fields set. More... | |
FunctionSpace & | source () |
Get reference to source function space. | |
const FunctionSpace & | source () const |
Get const reference to source function space. | |
FunctionSpace & | target () |
Get reference to taget function space. | |
const FunctionSpace & | target () const |
Get const reference to target function space. | |
![]() | |
ObjectHandle (const redistribution::detail::RedistributionImpl *object) | |
ObjectHandle (const ObjectHandle &handle) | |
ObjectHandle & | operator= (const ObjectHandle &handle) |
ATLAS_ALWAYS_INLINE redistribution::detail::RedistributionImpl * | get () |
ATLAS_ALWAYS_INLINE const redistribution::detail::RedistributionImpl * | get () const |
ATLAS_ALWAYS_INLINE const redistribution::detail::RedistributionImpl * | operator-> () const |
ATLAS_ALWAYS_INLINE redistribution::detail::RedistributionImpl * | operator-> () |
ATLAS_ALWAYS_INLINE const redistribution::detail::RedistributionImpl & | operator* () const |
ATLAS_ALWAYS_INLINE redistribution::detail::RedistributionImpl & | operator* () |
ATLAS_ALWAYS_INLINE void | reset (const redistribution::detail::RedistributionImpl *object) |
![]() | |
ObjectHandleBase (const Object *object) | |
const ObjectHandleBase & | operator= (const ObjectHandleBase &other) |
operator bool () const | |
void | reset (const Object *other) |
int | owners () const |
Additional Inherited Members | |
![]() | |
using | Implementation = redistribution::detail::RedistributionImpl |
using | Handle = ObjectHandle< redistribution::detail::RedistributionImpl > |
![]() | |
Object * | object_ {nullptr} |
Base redistributer class.
Class to map two function spaces with the same grid but different partitioners.
atlas::Redistribution::Redistribution | ( | const FunctionSpace & | sourceFunctionSpace, |
const FunctionSpace & | targetFunctionSpace | ||
) |
Constructs and initialises the redistributor.
Initialises class to copy fields from a source function space to fields from a target functionspace. The grids of source and target function space must match.
[in] | sourceFunctionSpace | Function space of source fields. |
[in] | targetFunctionSpace | Function space of target fields. |
Maps source field to target field.
Transfers data from source field to target field. Function space of source field must match sourceFunctionSpace. Same applies to target field.
[in] | sourceField | input field matching sourceFunctionSpace. |
[out] | targetField | output field matching targetFunctionSpace. |
void atlas::Redistribution::execute | ( | const FieldSet & | sourceFieldSet, |
FieldSet & | targetFieldSet | ||
) | const |
Redistributes source field set to target fields set.
Transfers source field set to target field set via multiple invocations of execute(sourceField, targetField).
[in] | sourceFieldSet | input field set. |
[out] | targetFieldSet | output field set. |