xref: /petsc/include/petscdmpatch.h (revision 0e9bae810fdaeb60e2713eaa8ddb89f42e079fd1)
1 /*
2   DMPatch, for domains covered by sets of patches.
3 */
4 #if !defined(__PETSCDMPATCH_H)
5 #define __PETSCDMPATCH_H
6 #include <petscdm.h>
7 
8 /*S
9   DMPATCH - DM object that encapsulates a domain divided into many patches
10 
11   Level: intermediate
12 
13   Concepts: grids, grid refinement
14 
15 .seealso:  DM, DMPatchCreate()
16 S*/
17 PETSC_EXTERN PetscErrorCode DMPatchCreate(MPI_Comm, DM*);
18 
19 /*
20  * We want each patch to consist of an entire DM, DMDA at first
21  - We cannot afford to store much more than the data from a single patch in memory
22    - No global PetscSection, only PetscLayout
23    - Optional scatters
24    * There is a storable coarse level, which will also be a traditional DM (DMDA here)
25    * The local and global vectors correspond to a ghosted patch
26  * Need a way to activate a patch
27    * Jack in sizes for l/g vectors
28  - Need routine for viewing a full global vector
29  - Jed handles solver
30 */
31 
32 #endif
33