|
PISM, A Parallel Ice Sheet Model 2.2.2-d6b3a29ca committed by Constantine Khrulev on 2025-03-28
|
"Cell type" mask. Adds convenience methods to array::Scalar.
More...
#include <CellType.hh>
Inheritance diagram for pism::array::CellType:Public Member Functions | |
| CellType (std::shared_ptr< const Grid > grid, const std::string &name) | |
| bool | ocean (int i, int j) const |
| bool | grounded (int i, int j) const |
| bool | icy (int i, int j) const |
| bool | grounded_ice (int i, int j) const |
| bool | floating_ice (int i, int j) const |
| bool | ice_free (int i, int j) const |
| bool | ice_free_ocean (int i, int j) const |
| bool | ice_free_land (int i, int j) const |
Public Member Functions inherited from pism::array::Scalar | |
| Scalar (std::shared_ptr< const Grid > grid, const std::string &name) | |
| std::shared_ptr< Scalar > | duplicate () const |
| int | as_int (int i, int j) const |
Public Member Functions inherited from pism::array::Array2D< double > | |
| Array2D (std::shared_ptr< const Grid > grid, const std::string &short_name, Kind ghostedp, unsigned int stencil_width=1) | |
| double ** | array () |
| double const *const * | array () const |
| double & | operator() (int i, int j) |
| const double & | operator() (int i, int j) const |
| void | add (double alpha, const Array2D< double > &x) |
| void | add (double alpha, const Array2D< double > &x, Array2D< double > &result) const |
| void | copy_from (const Array2D< double > &source) |
Public Member Functions inherited from pism::array::Array | |
| virtual | ~Array () |
| std::shared_ptr< const Grid > | grid () const |
| unsigned int | ndims () const |
| Returns the number of spatial dimensions. | |
| std::vector< int > | shape () const |
| unsigned int | ndof () const |
| Returns the number of degrees of freedom per grid point. | |
| unsigned int | stencil_width () const |
| Get the stencil width of the current Array. Returns 0 if ghosts are not available. | |
| const std::vector< double > & | levels () const |
| std::vector< double > | norm (int n) const |
| Computes the norm of all the components of an Array. | |
| void | add (double alpha, const Array &x) |
| Result: v <- v + alpha * x. Calls VecAXPY. | |
| void | shift (double alpha) |
| Result: v[j] <- v[j] + alpha for all j. Calls VecShift. | |
| void | scale (double alpha) |
| Result: v <- v * alpha. Calls VecScale. | |
| petsc::Vec & | vec () const |
| std::shared_ptr< petsc::DM > | dm () const |
| void | set_name (const std::string &name) |
Sets the variable name to name. | |
| const std::string & | get_name () const |
| Get the name of an Array object. | |
| void | define (const File &file, io::Type default_type) const |
Define variables corresponding to an Array in a file opened using file. | |
| void | read (const std::string &filename, unsigned int time) |
| void | read (const File &file, unsigned int time) |
| void | write (const std::string &filename) const |
| void | write (const File &file) const |
| void | regrid (const std::string &filename, io::Default default_value) |
| void | regrid (const File &file, io::Default default_value) |
| virtual void | begin_access () const |
| Checks if an Array is allocated and calls DAVecGetArray. | |
| virtual void | end_access () const |
| Checks if an Array is allocated and calls DAVecRestoreArray. | |
| void | update_ghosts () |
| Updates ghost points. | |
| std::shared_ptr< petsc::Vec > | allocate_proc0_copy () const |
| void | put_on_proc0 (petsc::Vec &onp0) const |
| Puts a local array::Scalar on processor 0. | |
| void | get_from_proc0 (petsc::Vec &onp0) |
| Gets a local Array2 from processor 0. | |
| void | set (double c) |
| Result: v[j] <- c for all j. | |
| SpatialVariableMetadata & | metadata (unsigned int N=0) |
| Returns a reference to the SpatialVariableMetadata object containing metadata for the compoment N. | |
| const SpatialVariableMetadata & | metadata (unsigned int N=0) const |
| int | state_counter () const |
| Get the object state counter. | |
| void | inc_state_counter () |
| Increment the object state counter. | |
| void | set_interpolation_type (InterpolationType type) |
| void | view (std::vector< std::shared_ptr< petsc::Viewer > > viewers) const |
| View a 2D vector field using existing PETSc viewers. | |
| void | dump (const char filename[]) const |
| Dumps a variable to a file, overwriting this file's contents (for debugging). | |
| uint64_t | fletcher64_serial () const |
| uint64_t | fletcher64 () const |
| std::string | checksum (bool serial) const |
| void | print_checksum (const char *prefix="", bool serial=false) const |
Public Member Functions inherited from pism::PetscAccessible | |
| virtual | ~PetscAccessible ()=default |
Protected Member Functions | |
| CellType (std::shared_ptr< const Grid > grid, const std::string &name, int w) | |
Protected Member Functions inherited from pism::array::Scalar | |
| stencils::Star< int > | star_int (int i, int j) const |
| stencils::Box< int > | box_int (int i, int j) const |
| Scalar (std::shared_ptr< const Grid > grid, const std::string &name, int width) | |
Protected Member Functions inherited from pism::array::Array2D< double > | |
| stencils::Star< double > | star (int i, int j) const |
| stencils::Box< double > | box (int i, int j) const |
Protected Member Functions inherited from pism::array::Array | |
| Array (std::shared_ptr< const Grid > grid, const std::string &name, Kind ghostedp, size_t dof, size_t stencil_width, const std::vector< double > &zlevels) | |
| void | set_begin_access_use_dof (bool flag) |
| void | read_impl (const File &file, unsigned int time) |
| Reads appropriate NetCDF variable(s) into an Array. | |
| virtual void | regrid_impl (const File &file, io::Default default_value) |
Gets an Array from a file file, interpolating onto the current grid. | |
| void | write_impl (const File &file) const |
| Writes an Array to a NetCDF file. | |
| void | checkCompatibility (const char *function, const Array &other) const |
| Checks if two Arrays have compatible sizes, dimensions and numbers of degrees of freedom. | |
| void | check_array_indices (int i, int j, unsigned int k) const |
| Check array indices and warn if they are out of range. | |
| void | copy_to_vec (std::shared_ptr< petsc::DM > destination_da, petsc::Vec &destination) const |
| Copies v to a global vector 'destination'. Ghost points are discarded. | |
| void | get_dof (std::shared_ptr< petsc::DM > da_result, petsc::Vec &result, unsigned int start, unsigned int count=1) const |
| void | set_dof (std::shared_ptr< petsc::DM > da_source, petsc::Vec &source, unsigned int start, unsigned int count=1) |
| void | put_on_proc0 (petsc::Vec ¶llel, petsc::Vec &onp0) const |
| void | get_from_proc0 (petsc::Vec &onp0, petsc::Vec ¶llel) const |
Additional Inherited Members | |
Public Types inherited from pism::array::Array2D< double > | |
| using | value_type = double |
Protected Attributes inherited from pism::array::Array | |
| Impl * | m_impl |
| void * | m_array |
"Cell type" mask. Adds convenience methods to array::Scalar.
Definition at line 30 of file CellType.hh.