Actual source code: petscao.h

  1: /* 
  2:   An application ordering is mapping between an application-centric
  3:   ordering (the ordering that is "natural" for the application) and 
  4:   the parallel ordering that PETSc uses.
  5: */
 8:  #include petscis.h
 9:  #include petscmat.h

 12: /*S
 13:      AO - Abstract PETSc object that manages mapping between different global numbering

 15:    Level: intermediate

 17:   Concepts: global numbering

 19: .seealso:  AOCreateBasic(), AOCreateBasicIS(), AOPetscToApplication(), AOView(), AOApplicationToPetsc()
 20: S*/
 21: typedef struct _p_AO* AO;

 23: /*J
 24:     AOType - String with the name of a PETSc application ordering or the creation function
 25:        with an optional dynamic library name.

 27:    Level: beginner

 29: .seealso: AOSetType(), AO
 30: J*/
 31: #define AOType char*
 32: #define AOBASIC               "basic"
 33: #define AOADVANCED            "advanced"
 34: #define AOMAPPING             "mapping"
 35: #define AOMEMORYSCALABLE      "memoryscalable"

 37: /* Logging support */





 56: /* Dynamic creation and loading functions */


 66: #if defined(PETSC_USE_DYNAMIC_LIBRARIES)
 67: #define AORegisterDynamic(a,b,c,d) AORegister(a,b,c,0)
 68: #else
 69: #define AORegisterDynamic(a,b,c,d) AORegister(a,b,c,d)
 70: #endif




 85: /* ----------------------------------------------------*/
 87: #endif