PISM, A Parallel Ice Sheet Model 2.3.0-79cae578d committed by Constantine Khrulev on 2026-03-22
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
pism::Grid::Impl Struct Reference

Internal structures of Grid. More...

+ Inheritance diagram for pism::Grid::Impl:

Public Member Functions

 Impl (std::shared_ptr< const Context > context)
 
std::shared_ptr< petsc::DMcreate_dm (unsigned int da_dof, unsigned int stencil_width) const
 Create a DM with the given number of dof (degrees of freedom per grid point) and stencil width.
 
void set_ownership_ranges (const std::vector< unsigned int > &procs_x, const std::vector< unsigned int > &procs_y)
 Set processor ownership ranges. Takes care of type conversion (unsigned int -> PetscInt).
 
void compute_horizontal_coordinates ()
 Compute horizontal spacing parameters dx and dy and grid coordinates using Mx, My, Lx, Ly and periodicity.
 

Public Attributes

std::shared_ptr< const Contextctx
 
VariableMetadata mapping_info
 
std::vector< PetscInt > procs_x
 array containing lenghts (in the x-direction) of processor sub-domains
 
std::vector< PetscInt > procs_y
 array containing lenghts (in the y-direction) of processor sub-domains
 
std::map< std::array< unsigned int, 2 >, std::weak_ptr< petsc::DM > > dms
 
std::shared_ptr< petsc::DMdm_scalar_global
 
Vars variables
 A dictionary with pointers to array::Arrays, for passing them from the one component to another (e.g. from IceModel to surface and ocean models).
 
gsl_interp_accel * bsearch_accel
 GSL binary search accelerator used to speed up kBelowHeight().
 
std::map< std::string, std::shared_ptr< InputInterpolation > > regridding_2d
 
std::vector< doublez
 z coordinates within the ice
 
- Public Attributes inherited from pism::grid::DistributedGridInfo
grid::Periodicity periodicity
 Grid periodicity in X and Y directions.
 
grid::Registration registration
 Grid registration (cell center or cell corner)
 
double dx
 Grid spacing in the X direction.
 
double dy
 Grid spacing in the Y direction.
 
double cell_area
 Cell area (meters^2) (same as dx*dy)
 
unsigned int xs
 Starting index (in the X direction) of the patch owned by the current MPI rank.
 
unsigned int xm
 
unsigned int ys
 Starting index of the patch owned by the current MPI rank (X direction)
 
unsigned int ym
 
unsigned int Mx
 Total number of grid points in the X direction.
 
unsigned int My
 Total number of grid points in the Y direction.
 
int max_patch_size
 Number of grid points in the largest patch (max(xm*ym) over all MPI ranks)
 
int rank
 Current MPI rank.
 
int size
 MPI Communicator size.
 
- Public Attributes inherited from pism::grid::GridInfo
double x0
 x-coordinate of the domain center
 
double y0
 y-coordinate of the domain center
 
double Lx
 domain half-width in the X direction
 
double Ly
 domain half-width in the Y direction
 
std::vector< doublex
 x coordinates
 
std::vector< doubley
 y coordinates
 

Detailed Description

Internal structures of Grid.

Definition at line 53 of file Grid.cc.


The documentation for this struct was generated from the following file: