xref: /petsc/include/petscds.h (revision 30b9ff8b0e9464c69a1cfe68f9fd962c6bcdb10d)
12764a2aaSMatthew G. Knepley /*
22764a2aaSMatthew G. Knepley       Objects which encapsulate discretizations+continuum residuals
32764a2aaSMatthew G. Knepley */
42764a2aaSMatthew G. Knepley #if !defined(__PETSCDS_H)
52764a2aaSMatthew G. Knepley #define __PETSCDS_H
62764a2aaSMatthew G. Knepley #include <petscfe.h>
72764a2aaSMatthew G. Knepley #include <petscfv.h>
82764a2aaSMatthew G. Knepley #include <petscdstypes.h>
92764a2aaSMatthew G. Knepley 
102764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSInitializePackage(void);
112764a2aaSMatthew G. Knepley 
122764a2aaSMatthew G. Knepley PETSC_EXTERN PetscClassId PETSCDS_CLASSID;
132764a2aaSMatthew G. Knepley 
142764a2aaSMatthew G. Knepley /*J
152764a2aaSMatthew G. Knepley   PetscDSType - String with the name of a PETSc discrete system
162764a2aaSMatthew G. Knepley 
172764a2aaSMatthew G. Knepley   Level: beginner
182764a2aaSMatthew G. Knepley 
192764a2aaSMatthew G. Knepley .seealso: PetscDSSetType(), PetscDS
202764a2aaSMatthew G. Knepley J*/
212764a2aaSMatthew G. Knepley typedef const char *PetscDSType;
222764a2aaSMatthew G. Knepley #define PETSCDSBASIC "basic"
232764a2aaSMatthew G. Knepley 
24*30b9ff8bSMatthew G. Knepley typedef void (*PetscPointFunc)(PetscInt, PetscInt, PetscInt,
25194d53e6SMatthew G. Knepley                                const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
26194d53e6SMatthew G. Knepley                                const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
27194d53e6SMatthew G. Knepley                                PetscReal, const PetscReal[], PetscScalar[]);
28*30b9ff8bSMatthew G. Knepley typedef void (*PetscPointJac)(PetscInt, PetscInt, PetscInt,
292aa1fc23SMatthew G. Knepley                               const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
302aa1fc23SMatthew G. Knepley                               const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
312aa1fc23SMatthew G. Knepley                               PetscReal, PetscReal, const PetscReal[], PetscScalar[]);
32*30b9ff8bSMatthew G. Knepley typedef void (*PetscBdPointFunc)(PetscInt, PetscInt, PetscInt,
33194d53e6SMatthew G. Knepley                                  const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
34194d53e6SMatthew G. Knepley                                  const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
35194d53e6SMatthew G. Knepley                                  PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]);
36*30b9ff8bSMatthew G. Knepley typedef void (*PetscBdPointJac)(PetscInt, PetscInt, PetscInt,
372aa1fc23SMatthew G. Knepley                                 const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
382aa1fc23SMatthew G. Knepley                                 const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
392aa1fc23SMatthew G. Knepley                                 PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]);
405db36cf9SMatthew G. Knepley typedef void (*PetscRiemannFunc)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscScalar[], void *);
41194d53e6SMatthew G. Knepley 
42194d53e6SMatthew G. Knepley 
432764a2aaSMatthew G. Knepley PETSC_EXTERN PetscFunctionList PetscDSList;
442764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCreate(MPI_Comm, PetscDS *);
452764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSDestroy(PetscDS *);
462764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetType(PetscDS, PetscDSType);
472764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetType(PetscDS, PetscDSType *);
482764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetUp(PetscDS);
492764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetFromOptions(PetscDS);
502764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSViewFromOptions(PetscDS,const char[],const char[]);
512764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSView(PetscDS,PetscViewer);
522764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegister(const char [], PetscErrorCode (*)(PetscDS));
532764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegisterDestroy(void);
542764a2aaSMatthew G. Knepley 
552764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetSpatialDimension(PetscDS, PetscInt *);
562764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetNumFields(PetscDS, PetscInt *);
572764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalDimension(PetscDS, PetscInt *);
582764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalBdDimension(PetscDS, PetscInt *);
592764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalComponents(PetscDS, PetscInt *);
602764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldOffset(PetscDS, PetscInt, PetscInt *);
612764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdFieldOffset(PetscDS, PetscInt, PetscInt *);
626ce16762SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffset(PetscDS, PetscInt, PetscInt *);
63194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffsets(PetscDS, PetscInt *[]);
6439b9c202SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentBdOffsets(PetscDS, PetscInt *[]);
65194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentDerivativeOffsets(PetscDS, PetscInt *[]);
6639b9c202SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentBdDerivativeOffsets(PetscDS, PetscInt *[]);
672764a2aaSMatthew G. Knepley 
682764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetDiscretization(PetscDS, PetscInt, PetscObject *);
692764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetDiscretization(PetscDS, PetscInt, PetscObject);
702764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddDiscretization(PetscDS, PetscObject);
712764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdDiscretization(PetscDS, PetscInt, PetscObject *);
722764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdDiscretization(PetscDS, PetscInt, PetscObject);
732764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddBdDiscretization(PetscDS, PetscObject);
74249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetImplicit(PetscDS, PetscInt, PetscBool*);
75249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetImplicit(PetscDS, PetscInt, PetscBool);
76a6cbbb48SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetAdjacency(PetscDS, PetscInt, PetscBool*, PetscBool*);
77a6cbbb48SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetAdjacency(PetscDS, PetscInt, PetscBool,  PetscBool);
78194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetObjective(PetscDS, PetscInt,
79*30b9ff8bSMatthew G. Knepley                                                 void (**)(PetscInt, PetscInt, PetscInt,
80194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
81194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
82d4fdcb91SMatthew G. Knepley                                                           PetscReal, const PetscReal[], PetscScalar[]));
83194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetObjective(PetscDS, PetscInt,
84*30b9ff8bSMatthew G. Knepley                                                 void (*)(PetscInt, PetscInt, PetscInt,
85194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
86194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
87d4fdcb91SMatthew G. Knepley                                                          PetscReal, const PetscReal[], PetscScalar[]));
882764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetResidual(PetscDS, PetscInt,
89*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
90194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
91194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
92d4fdcb91SMatthew G. Knepley                                                          PetscReal, const PetscReal[], PetscScalar[]),
93*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
94194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
95194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
96d4fdcb91SMatthew G. Knepley                                                          PetscReal, const PetscReal[], PetscScalar[]));
972764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetResidual(PetscDS, PetscInt,
98*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
99194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
100194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
101d4fdcb91SMatthew G. Knepley                                                         PetscReal, const PetscReal[], PetscScalar[]),
102*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
103194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
104194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
105d4fdcb91SMatthew G. Knepley                                                         PetscReal, const PetscReal[], PetscScalar[]));
1062764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJacobian(PetscDS, PetscInt, PetscInt,
107*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
108194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
109194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1102aa1fc23SMatthew G. Knepley                                                          PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
111*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
112194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
113194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1142aa1fc23SMatthew G. Knepley                                                          PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
115*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
116194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
117194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1182aa1fc23SMatthew G. Knepley                                                          PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
119*30b9ff8bSMatthew G. Knepley                                                void (**)(PetscInt, PetscInt, PetscInt,
120194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
121194d53e6SMatthew G. Knepley                                                          const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1222aa1fc23SMatthew G. Knepley                                                          PetscReal, PetscReal, const PetscReal[], PetscScalar[]));
1232764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJacobian(PetscDS, PetscInt, PetscInt,
124*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
125194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
126194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1272aa1fc23SMatthew G. Knepley                                                         PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
128*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
129194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
130194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1312aa1fc23SMatthew G. Knepley                                                         PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
132*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
133194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
134194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1352aa1fc23SMatthew G. Knepley                                                         PetscReal, PetscReal, const PetscReal[], PetscScalar[]),
136*30b9ff8bSMatthew G. Knepley                                                void (*)(PetscInt, PetscInt, PetscInt,
137194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
138194d53e6SMatthew G. Knepley                                                         const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1392aa1fc23SMatthew G. Knepley                                                         PetscReal, PetscReal, const PetscReal[], PetscScalar[]));
1400c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetRiemannSolver(PetscDS, PetscInt,
1415db36cf9SMatthew G. Knepley                                                     void (**)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscScalar[], void *));
1420c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetRiemannSolver(PetscDS, PetscInt,
1435db36cf9SMatthew G. Knepley                                                     void (*)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscScalar[], void *));
1440c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetContext(PetscDS, PetscInt, void **);
1450c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetContext(PetscDS, PetscInt, void *);
1462764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdResidual(PetscDS, PetscInt,
147*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
148194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
149194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
150d4fdcb91SMatthew G. Knepley                                                            PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
151*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
152194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
153194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
154d4fdcb91SMatthew G. Knepley                                                            PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]));
1552764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdResidual(PetscDS, PetscInt,
156*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
157194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
158194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
159d4fdcb91SMatthew G. Knepley                                                           PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
160*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
161194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
162194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
163d4fdcb91SMatthew G. Knepley                                                           PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]));
1642764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdJacobian(PetscDS, PetscInt, PetscInt,
165*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
166194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
167194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1682aa1fc23SMatthew G. Knepley                                                            PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
169*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
170194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
171194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1722aa1fc23SMatthew G. Knepley                                                            PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
173*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
174194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
175194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1762aa1fc23SMatthew G. Knepley                                                            PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
177*30b9ff8bSMatthew G. Knepley                                                  void (**)(PetscInt, PetscInt, PetscInt,
178194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
179194d53e6SMatthew G. Knepley                                                            const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1802aa1fc23SMatthew G. Knepley                                                            PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]));
1812764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdJacobian(PetscDS, PetscInt, PetscInt,
182*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
183194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
184194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1852aa1fc23SMatthew G. Knepley                                                           PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
186*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
187194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
188194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1892aa1fc23SMatthew G. Knepley                                                           PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
190*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
191194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
192194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1932aa1fc23SMatthew G. Knepley                                                           PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]),
194*30b9ff8bSMatthew G. Knepley                                                  void (*)(PetscInt, PetscInt, PetscInt,
195194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
196194d53e6SMatthew G. Knepley                                                           const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[],
1972aa1fc23SMatthew G. Knepley                                                           PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]));
1982764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTabulation(PetscDS, PetscReal ***, PetscReal ***);
1992764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdTabulation(PetscDS, PetscReal ***, PetscReal ***);
2002764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetEvaluationArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **);
2012764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetWeakFormArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **);
2022764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetRefCoordArrays(PetscDS, PetscReal **, PetscScalar **);
2032764a2aaSMatthew G. Knepley 
2042764a2aaSMatthew G. Knepley #endif
205