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 2430b9ff8bSMatthew 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[]); 2830b9ff8bSMatthew 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[]); 3230b9ff8bSMatthew 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[]); 3630b9ff8bSMatthew 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); 508aec7d55SBarry Smith PETSC_STATIC_INLINE PetscErrorCode PetscDSViewFromOptions(PetscDS A,PetscObject B,const char name[]) {return PetscObjectViewFromOptions((PetscObject)A,B,name);} 518aec7d55SBarry Smith 522764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSView(PetscDS,PetscViewer); 532764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegister(const char [], PetscErrorCode (*)(PetscDS)); 542764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegisterDestroy(void); 552764a2aaSMatthew G. Knepley 562764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetSpatialDimension(PetscDS, PetscInt *); 572764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetNumFields(PetscDS, PetscInt *); 582764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalDimension(PetscDS, PetscInt *); 592764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalBdDimension(PetscDS, PetscInt *); 602764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalComponents(PetscDS, PetscInt *); 614cd1e086SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldIndex(PetscDS, PetscObject, PetscInt *); 624cd1e086SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldSize(PetscDS, PetscInt, PetscInt *); 632764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldOffset(PetscDS, PetscInt, PetscInt *); 642764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdFieldOffset(PetscDS, PetscInt, PetscInt *); 656ce16762SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffset(PetscDS, PetscInt, PetscInt *); 66194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffsets(PetscDS, PetscInt *[]); 6739b9c202SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentBdOffsets(PetscDS, PetscInt *[]); 68194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentDerivativeOffsets(PetscDS, PetscInt *[]); 6939b9c202SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentBdDerivativeOffsets(PetscDS, PetscInt *[]); 702764a2aaSMatthew G. Knepley 712764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetDiscretization(PetscDS, PetscInt, PetscObject *); 722764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetDiscretization(PetscDS, PetscInt, PetscObject); 732764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddDiscretization(PetscDS, PetscObject); 742764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdDiscretization(PetscDS, PetscInt, PetscObject *); 752764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdDiscretization(PetscDS, PetscInt, PetscObject); 762764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddBdDiscretization(PetscDS, PetscObject); 77249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetImplicit(PetscDS, PetscInt, PetscBool*); 78249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetImplicit(PetscDS, PetscInt, PetscBool); 79a6cbbb48SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetAdjacency(PetscDS, PetscInt, PetscBool*, PetscBool*); 80a6cbbb48SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetAdjacency(PetscDS, PetscInt, PetscBool, PetscBool); 81194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetObjective(PetscDS, PetscInt, 8230b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 83194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[])); 86194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetObjective(PetscDS, PetscInt, 8730b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 88194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 89194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 90d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[])); 912764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetResidual(PetscDS, PetscInt, 9230b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 93194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 94194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 95d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[]), 9630b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 97194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 98194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 99d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[])); 1002764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetResidual(PetscDS, PetscInt, 10130b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 102194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 103194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 104d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[]), 10530b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 106194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 107194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 108d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], PetscScalar[])); 1093e75805dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasJacobian(PetscDS, PetscBool *); 1102764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJacobian(PetscDS, PetscInt, PetscInt, 11130b9ff8bSMatthew 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[]), 11530b9ff8bSMatthew 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[]), 11930b9ff8bSMatthew 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[]), 12330b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 124194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 125194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 1262aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 1272764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJacobian(PetscDS, PetscInt, PetscInt, 12830b9ff8bSMatthew 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[]), 13230b9ff8bSMatthew 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[]), 13630b9ff8bSMatthew 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[]), 14030b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 141194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 142194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 1432aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 144475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasJacobianPreconditioner(PetscDS, PetscBool *); 145475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 146475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 147475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 148475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 149475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 150475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 151475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 152475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 153475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 154475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 155475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 156475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 157475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 158475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 159475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 160475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 161475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 162475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 163475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 164475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 165475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 166475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 167475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 168475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 169475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 170475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 171475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 172475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 173475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 174475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 175475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 176475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 177475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 178475e0ac9SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 179b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasDynamicJacobian(PetscDS, PetscBool *); 180b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetDynamicJacobian(PetscDS, PetscInt, PetscInt, 181b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 182b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 183b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 184b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 185b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 186b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 187b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 188b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 189b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 190b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 191b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 192b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 193b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 194b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 195b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 196b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 197b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetDynamicJacobian(PetscDS, PetscInt, PetscInt, 198b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 199b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 200b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 201b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 202b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 203b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 204b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 205b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 206b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 207b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 208b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 209b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[]), 210b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 211b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 212b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 213b7e05686SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscScalar[])); 2140c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetRiemannSolver(PetscDS, PetscInt, 2155db36cf9SMatthew G. Knepley void (**)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscScalar[], void *)); 2160c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetRiemannSolver(PetscDS, PetscInt, 2175db36cf9SMatthew G. Knepley void (*)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscScalar[], void *)); 2180c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetContext(PetscDS, PetscInt, void **); 2190c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetContext(PetscDS, PetscInt, void *); 2202764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdResidual(PetscDS, PetscInt, 22130b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 222194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 223194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 224d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 22530b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 226194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 227194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 228d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscScalar[])); 2292764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdResidual(PetscDS, PetscInt, 23030b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 231194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 232194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 233d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 23430b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 235194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 236194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 237d4fdcb91SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscScalar[])); 2382764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdJacobian(PetscDS, PetscInt, PetscInt, 23930b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 240194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 241194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2422aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 24330b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 244194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 245194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2462aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 24730b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 248194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 249194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2502aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 25130b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 252194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 253194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2542aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[])); 2552764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdJacobian(PetscDS, PetscInt, PetscInt, 25630b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 257194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 258194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2592aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 26030b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 261194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 262194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2632aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 26430b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 265194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 266194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2672aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[]), 26830b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 269194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 270194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 2712aa1fc23SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscScalar[])); 2722764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTabulation(PetscDS, PetscReal ***, PetscReal ***); 2732764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdTabulation(PetscDS, PetscReal ***, PetscReal ***); 2742764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetEvaluationArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **); 2752764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetWeakFormArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **); 2762764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetRefCoordArrays(PetscDS, PetscReal **, PetscScalar **); 277da51fcedSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCopyEquations(PetscDS, PetscDS); 2783424c85cSToby Isaac PETSC_EXTERN PetscErrorCode PetscDSAddBoundary(PetscDS, PetscBool, const char[], const char[], PetscInt, PetscInt, const PetscInt *, void (*)(), PetscInt, const PetscInt *, void *); 2793424c85cSToby Isaac PETSC_EXTERN PetscErrorCode PetscDSGetNumBoundary(PetscDS, PetscInt *); 2803424c85cSToby Isaac PETSC_EXTERN PetscErrorCode PetscDSGetBoundary(PetscDS, PetscInt, PetscBool *, const char **, const char **, PetscInt *, PetscInt *, const PetscInt **, void (**)(), PetscInt *, const PetscInt **, void **); 281*e6f8dbb6SToby Isaac PETSC_EXTERN PetscErrorCode PetscDSCopyBoundary(PetscDS, PetscDS); 2822764a2aaSMatthew G. Knepley 2832764a2aaSMatthew G. Knepley #endif 284