8 #ifndef MPASJEDI_GEOMETRYMPAS_H_
9 #define MPASJEDI_GEOMETRYMPAS_H_
16 #include "eckit/mpi/Comm.h"
18 #include "atlas/field.h"
19 #include "atlas/functionspace.h"
21 #include "oops/base/Variables.h"
22 #include "oops/util/ObjectCounter.h"
23 #include "oops/util/Printable.h"
37 private util::ObjectCounter<GeometryMPAS> {
39 static const std::string
classname() {
return "mpas::GeometryMPAS";}
41 GeometryMPAS(
const eckit::Configuration &,
const eckit::mpi::Comm &);
56 std::vector<size_t>
variableSizes(
const oops::Variables &)
const;
60 void print(std::ostream &)
const;
GeometryMPAS handles geometry for MPAS model.
std::unique_ptr< atlas::FieldSet > atlasFieldSet_
std::vector< size_t > variableSizes(const oops::Variables &) const
const eckit::mpi::Comm & comm_
std::unique_ptr< atlas::functionspace::PointCloud > atlasFunctionSpace_
static const std::string classname()
GeometryMPAS & operator=(const GeometryMPAS &)
const eckit::mpi::Comm & getComm() const
GeometryMPAS(const eckit::Configuration &, const eckit::mpi::Comm &)
atlas::FunctionSpace * atlasFunctionSpace() const
void print(std::ostream &) const
bool isEqual(const GeometryMPAS &) const
atlas::FieldSet * atlasFieldSet() const
const F90geom & toFortran() const