|
PISM, A Parallel Ice Sheet Model 2.3.0-79cae578d committed by Constantine Khrulev on 2026-03-22
|
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::DM > | create_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 Context > | ctx |
| 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::DM > | dm_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< double > | z |
| 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< double > | x |
| x coordinates | |
| std::vector< double > | y |
| y coordinates | |