atlas::RegularLonLatGrid class

Specialization of RegularGrid, assuming a global domain.

Base classes

class RegularGrid
Specialization of StructuredGrid, where all rows have the same number of grid points.

Public types

using grid_t = grid::detail::grid::Structured
using XSpace = grid_t::XSpace
using YSpace = grid_t::YSpace
using Config = util::Config
using Spec = util::Config
using Domain = atlas::Domain
using Projection = atlas::Projection
using PointXY = atlas::PointXY
using PointLonLat = atlas::PointLonLat
using IterateXY = grid::IterateXY
using IterateLonLat = grid::IterateLonLat

Constructors, destructors, conversion operators

operator bool() const
StructuredGrid()
StructuredGrid(const Grid&)
StructuredGrid(const Grid::Implementation*)
StructuredGrid(const std::string& name, const Domain& = Domain())
StructuredGrid(const std::string& name, const Projection&, const Domain& = Domain())
StructuredGrid(const Config&)
StructuredGrid(const XSpace&, const YSpace&, const Projection& = Projection(), const Domain& = Domain())
StructuredGrid(const Grid&, const Domain&)

Public functions

auto valid() const -> bool
auto lon(idx_t i) const -> double
auto lat(idx_t j) const -> double
auto lonlat(idx_t i, idx_t j) const -> PointLonLat
auto standard() const -> bool
auto shifted() const -> bool
auto shiftedLon() const -> bool
auto shiftedLat() const -> bool
auto nx() const -> idx_t
auto nx(idx_t j) const -> idx_t
auto dx() const -> double
auto dx(idx_t j) const -> double
increment in x for a given grid row {j}
auto dx(idx_t j) const -> double
increment in x for a given grid row {j}
auto x(idx_t i) const -> double
auto x(idx_t i, idx_t j) const -> double
x coordinate for given grid point {i,j}
auto x(idx_t i, idx_t j) const -> double
x coordinate for given grid point {i,j}
auto xy(idx_t i, idx_t j) const -> PointXY
void xy(idx_t i, idx_t j, double xy[]) const
auto xy(idx_t i, idx_t j) const -> PointXY
auto xy() const -> IterateXY
void xy(idx_t i, idx_t j, double xy[]) const
auto xy() const -> IterateXY
auto ny() const -> idx_t
auto nxmax() const -> idx_t
auto y() const -> const std::vector<double>&
auto y(idx_t j) const -> double
y coordinate for given grid row {j}
auto xmin(idx_t j) const -> double
x coordinate of beginning of a given grid row {j}
void lonlat(idx_t i, idx_t j, double lonlat[]) const
auto lonlat() const -> IterateLonLat
auto lonlat() const -> IterateLonLat
auto reduced() const -> bool
auto regular() const -> bool
auto periodic() const -> bool
auto xspace() const -> const XSpace&
auto yspace() const -> const YSpace&
auto index(idx_t i, idx_t j) const -> gidx_t
void index2ij(gidx_t gidx, idx_t& i, idx_t& j) const
auto operator==(const Grid& other) const -> bool
auto operator!=(const Grid& other) const -> bool
auto size() const -> idx_t
auto projection() const -> const Projection&
auto domain() const -> const Domain&
auto lonlatBoundingBox() const -> RectangularLonLatDomain
auto name() const -> std::string
auto type() const -> std::string
auto uid() const -> std::string
void hash(eckit::Hash& h) const
Adds to the hash the information that makes this Grid unique.
auto footprint() const -> size_t
auto spec() const -> Spec
auto meshgenerator() const -> Config
auto partitioner() const -> Config

Typedef documentation

using atlas::RegularLonLatGrid::Config = util::Config

using atlas::RegularLonLatGrid::Spec = util::Config

using atlas::RegularLonLatGrid::Domain = atlas::Domain

using atlas::RegularLonLatGrid::Projection = atlas::Projection

using atlas::RegularLonLatGrid::PointXY = atlas::PointXY

using atlas::RegularLonLatGrid::PointLonLat = atlas::PointLonLat

using atlas::RegularLonLatGrid::IterateXY = grid::IterateXY

using atlas::RegularLonLatGrid::IterateLonLat = grid::IterateLonLat

Function documentation

IterateXY atlas::RegularLonLatGrid::xy() const

IterateLonLat atlas::RegularLonLatGrid::lonlat() const

bool atlas::RegularLonLatGrid::operator==(const Grid& other) const

bool atlas::RegularLonLatGrid::operator!=(const Grid& other) const

idx_t atlas::RegularLonLatGrid::size() const

const Projection& atlas::RegularLonLatGrid::projection() const

const Domain& atlas::RegularLonLatGrid::domain() const

RectangularLonLatDomain atlas::RegularLonLatGrid::lonlatBoundingBox() const

std::string atlas::RegularLonLatGrid::name() const

std::string atlas::RegularLonLatGrid::type() const

std::string atlas::RegularLonLatGrid::uid() const

void atlas::RegularLonLatGrid::hash(eckit::Hash& h) const

Adds to the hash the information that makes this Grid unique.

size_t atlas::RegularLonLatGrid::footprint() const

Spec atlas::RegularLonLatGrid::spec() const

Config atlas::RegularLonLatGrid::meshgenerator() const

Config atlas::RegularLonLatGrid::partitioner() const