class
#include <atlas/functionspace/NodeColumns.h>
NodeColumns
Base classes
- class atlas::FunctionSpace
Public types
- using Implementation = detail::NodeColumns
Public static functions
-
static auto type() -> std::
string
Constructors, destructors, conversion operators
- NodeColumns()
- NodeColumns(const FunctionSpace&)
- NodeColumns(Mesh mesh)
-
NodeColumns(Mesh mesh,
const eckit::
Configuration&) - operator bool() const
Public functions
- auto valid() const -> bool
-
auto nb_nodes() const -> idx_
t -
auto nb_nodes_global() const -> idx_
t - auto mesh() const -> const Mesh&
-
auto levels() const -> idx_
t -
auto nodes() const -> mesh::
Nodes& -
auto halo() const -> const mesh::
Halo& - void haloExchange(const FieldSet&, bool on_device = false) const
- void haloExchange(const Field&, bool on_device = false) const
-
auto halo_exchange() const -> const parallel::
HaloExchange& -
auto checksum(const FieldSet&) const -> std::
string -
auto checksum(const Field&) const -> std::
string -
auto checksum() const -> const parallel::
Checksum& -
template<typename Value>void sum(const Field&, Value& sum, idx_
t& N) const - Compute sum of scalar field.
-
void sumPerLevel(const Field&,
Field& sum,
idx_
t& N) const - Compute sum of field for each vertical level separately.
-
template<typename Value>void orderIndependentSum(const Field&, Value& sum, idx_
t& N) const - Compute order independent sum of scalar field.
-
void orderIndependentSumPerLevel(const Field&,
Field& sum,
idx_
t& N) const - Compute order independent sum of field for each vertical level separately.
-
template<typename Value>void minimum(const Field&, Value& minimum) const
- Compute minimum of scalar field.
-
template<typename Value>void maximum(const Field&, Value& maximum) const
- Compute maximum of scalar field.
- void minimumPerLevel(const Field&, Field& min) const
- Compute minimum of field for each vertical level separately.
- void maximumPerLevel(const Field&, Field& max) const
- Compute maximum of field for each vertical level separately.
-
template<typename Value>void minimumAndLocation(const Field&, Value& minimum, gidx_
t& glb_idx) const - Compute minimum of scalar field, as well as the global index and level.
-
template<typename Value>void maximumAndLocation(const Field&, Value& maximum, gidx_
t& glb_idx) const - Compute maximum of scalar field, as well as the global index and level.
-
template<typename Value>void minimumAndLocation(const Field&, Value& minimum, gidx_
t& glb_idx, idx_ t& level) const - Compute minimum of scalar field, as well as the global index and level.
-
template<typename Value>void maximumAndLocation(const Field&, Value& maximum, gidx_
t& glb_idx, idx_ t& level) const - Compute maximum of scalar field, as well as the global index and level.
-
template<typename Value>void minimumAndLocation(const Field&, std::
vector<Value>& minimum, std:: vector<gidx_ t>& glb_idx) const - Compute minimum of field for each field-variable, as well as the global indices and levels.
-
template<typename Value>void maximumAndLocation(const Field&, std::
vector<Value>& maximum, std:: vector<gidx_ t>& glb_idx) const - Compute maximum of field for each field-variable, as well as the global indices and levels.
-
template<typename Value>void minimumAndLocation(const Field&, std::
vector<Value>& minimum, std:: vector<gidx_ t>& glb_idx, std:: vector<idx_ t>& level) const - Compute minimum of field for each field-variable, as well as the global indices and levels.
-
template<typename Value>void maximumAndLocation(const Field&, std::
vector<Value>& maximum, std:: vector<gidx_ t>& glb_idx, std:: vector<idx_ t>& level) const - Compute maximum of field for each field-variable, as well as the global indices and levels.
- void minimumAndLocationPerLevel(const Field&, Field& column, Field& glb_idx) const
- Compute minimum and its location of a field for each vertical level separately.
- void maximumAndLocationPerLevel(const Field&, Field& column, Field& glb_idx) const
- Compute maximum and its location of a field for each vertical level separately.
-
template<typename Value>void mean(const Field&, Value& mean, idx_
t& N) const - Compute mean value of scalar field.
-
void meanPerLevel(const Field&,
Field& mean,
idx_
t& N) const - Compute mean values of field for vertical level separately.
-
template<typename Value>void meanAndStandardDeviation(const Field&, Value& mean, Value& stddev, idx_
t& N) const - Compute mean value and standard deviation of scalar field.
-
void meanAndStandardDeviationPerLevel(const Field&,
Field& mean,
Field& stddev,
idx_
t& N) const - Compute mean values and standard deviations of field for vertical level separately.
-
auto type() const -> std::
string - auto footprint() const -> size_t
-
auto distribution() const -> std::
string -
auto createField(const eckit::
Configuration&) const -> Field - auto createField(const Field&) const -> Field
-
auto createField(const Field&,
const eckit::
Configuration&) const -> Field -
template<typename DATATYPE>auto createField(const eckit::
Configuration&) const -> Field -
template<typename DATATYPE>auto createField() const -> Field
- void adjointHaloExchange(const FieldSet&, bool on_device = false) const
- void adjointHaloExchange(const Field&, bool on_device = false) const
- void gather(const FieldSet&, FieldSet&) const
- void gather(const Field&, Field&) const
-
auto gather() const -> const parallel::
GatherScatter& - void scatter(const FieldSet&, FieldSet&) const
- void scatter(const Field&, Field&) const
-
auto scatter() const -> const parallel::
GatherScatter& -
auto polygon(idx_
t halo = 0) const -> const util:: PartitionPolygon& -
auto polygons() const -> const util::
PartitionPolygons& - auto projection() const -> const Projection&
-
auto part() const -> idx_
t -
auto nb_parts() const -> idx_
t -
auto size() const -> idx_
t - auto lonlat() const -> Field
- auto ghost() const -> Field
- auto global_index() const -> Field
- auto remote_index() const -> Field
- auto partition() const -> Field
-
auto mpi_comm() const -> std::
string
Function documentation
void atlas:: functionspace:: NodeColumns:: sumPerLevel(const Field&,
Field& sum,
idx_ t& N) const
Compute sum of field for each vertical level separately.
Parameters | |
---|---|
sum out | Field of dimension of input without the nodes index |
N out | Number of nodes used to sum each level |
template<typename Value>
void atlas:: functionspace:: NodeColumns:: orderIndependentSum(const Field&,
Value& sum,
idx_ t& N) const
Compute order independent sum of scalar field.
Parameters | |
---|---|
sum out | Scalar value containing the sum of the full 3D field |
N out | Number of values that are contained in the sum (nodes*levels) |
void atlas:: functionspace:: NodeColumns:: orderIndependentSumPerLevel(const Field&,
Field& sum,
idx_ t& N) const
Compute order independent sum of field for each vertical level separately.
Parameters | |
---|---|
sum out | Field of dimension of input without the nodes index |
N out | Number of nodes used to sum each level |
void atlas:: functionspace:: NodeColumns:: minimumPerLevel(const Field&,
Field& min) const
Compute minimum of field for each vertical level separately.
Parameters | |
---|---|
min out | Field of dimension of input without the nodes index |
void atlas:: functionspace:: NodeColumns:: maximumPerLevel(const Field&,
Field& max) const
Compute maximum of field for each vertical level separately.
Parameters | |
---|---|
max out | Field of dimension of input without the nodes index |
void atlas:: functionspace:: NodeColumns:: meanPerLevel(const Field&,
Field& mean,
idx_ t& N) const
Compute mean values of field for vertical level separately.
Parameters | |
---|---|
mean out | Field of dimension of input without the nodes index |
N out | Number of values used to create the means |
template<typename Value>
void atlas:: functionspace:: NodeColumns:: meanAndStandardDeviation(const Field&,
Value& mean,
Value& stddev,
idx_ t& N) const
Compute mean value and standard deviation of scalar field.
Parameters | |
---|---|
mean out | Mean value |
stddev out | Standard deviation |
N out | Number of value used to create the mean |
void atlas:: functionspace:: NodeColumns:: meanAndStandardDeviationPerLevel(const Field&,
Field& mean,
Field& stddev,
idx_ t& N) const
Compute mean values and standard deviations of field for vertical level separately.
Parameters | |
---|---|
mean out | Field of dimension of input without the nodes index |
stddev out | Field of dimension of input without the nodes index |
N out | Number of values used to create the means |
std:: string atlas:: functionspace:: NodeColumns:: type() const
size_t atlas:: functionspace:: NodeColumns:: footprint() const
std:: string atlas:: functionspace:: NodeColumns:: distribution() const
Field atlas:: functionspace:: NodeColumns:: createField(const eckit:: Configuration&) const
Field atlas:: functionspace:: NodeColumns:: createField(const Field&) const
Field atlas:: functionspace:: NodeColumns:: createField(const Field&,
const eckit:: Configuration&) const
template<typename DATATYPE>
Field atlas:: functionspace:: NodeColumns:: createField(const eckit:: Configuration&) const
template<typename DATATYPE>
Field atlas:: functionspace:: NodeColumns:: createField() const
void atlas:: functionspace:: NodeColumns:: adjointHaloExchange(const FieldSet&,
bool on_device = false) const
void atlas:: functionspace:: NodeColumns:: adjointHaloExchange(const Field&,
bool on_device = false) const
const parallel:: GatherScatter& atlas:: functionspace:: NodeColumns:: gather() const
const parallel:: GatherScatter& atlas:: functionspace:: NodeColumns:: scatter() const
const util:: PartitionPolygon& atlas:: functionspace:: NodeColumns:: polygon(idx_ t halo = 0) const
const util:: PartitionPolygons& atlas:: functionspace:: NodeColumns:: polygons() const
const Projection& atlas:: functionspace:: NodeColumns:: projection() const
Field atlas:: functionspace:: NodeColumns:: global_index() const
Field atlas:: functionspace:: NodeColumns:: remote_index() const
std:: string atlas:: functionspace:: NodeColumns:: mpi_comm() const