20 #ifndef ICEMODELVEC2CELLTYPE_H
21 #define ICEMODELVEC2CELLTYPE_H
32 typedef std::shared_ptr<IceModelVec2CellType>
Ptr;
33 typedef std::shared_ptr<const IceModelVec2CellType>
ConstPtr;
41 inline bool ocean(
int i,
int j)
const {
49 inline bool icy(
int i,
int j)
const {
81 return (
icy(i + 1, j) or
icy(i - 1, j) or
icy(i, j + 1) or
icy(i, j - 1));
std::shared_ptr< const IceGrid > ConstPtr
bool ice_margin(int i, int j) const
Ice margin (ice-filled with at least one of four neighbors ice-free).
bool next_to_ice(int i, int j) const
Ice-free margin (at least one of four neighbors has ice).
bool next_to_ice_free_ocean(int i, int j) const
IceModelVec2CellType(IceGrid::ConstPtr grid, const std::string &name, IceModelVecKind ghostedp, int width=1)
bool ice_free_land(int i, int j) const
bool icy(int i, int j) const
bool next_to_floating_ice(int i, int j) const
bool ice_free_ocean(int i, int j) const
bool next_to_ice_free_land(int i, int j) const
bool ocean(int i, int j) const
bool grounded(int i, int j) const
bool floating_ice(int i, int j) const
bool next_to_grounded_ice(int i, int j) const
std::shared_ptr< const IceModelVec2CellType > ConstPtr
bool ice_free(int i, int j) const
bool grounded_ice(int i, int j) const
std::shared_ptr< IceModelVec2CellType > Ptr
"Cell type" mask. Adds convenience methods to IceModelVec2Int.
int as_int(int i, int j) const
A simple class "hiding" the fact that the mask is stored as floating-point scalars (instead of intege...
IceGrid::ConstPtr grid() const
bool icy(int M)
Ice-filled cell (grounded or floating).
bool ice_free_land(int M)
bool ice_free_ocean(int M)
bool grounded(int M)
Grounded cell (grounded ice or ice-free).
bool ice_free(int M)
Ice-free cell (grounded or ocean).
bool ocean(int M)
An ocean cell (floating ice or ice-free).
IceModelVecKind
What "kind" of a vector to create: with or without ghosts.