12764a2aaSMatthew G. Knepley /* 22764a2aaSMatthew G. Knepley Objects which encapsulate discretizations+continuum residuals 32764a2aaSMatthew G. Knepley */ 426bd1501SBarry Smith #if !defined(PETSCDS_H) 526bd1501SBarry Smith #define PETSCDS_H 62764a2aaSMatthew G. Knepley #include <petscfe.h> 72764a2aaSMatthew G. Knepley #include <petscfv.h> 82764a2aaSMatthew G. Knepley #include <petscdstypes.h> 92764a2aaSMatthew G. Knepley 10*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscClassId PETSCWEAKFORM_CLASSID; 11*6528b96dSMatthew G. Knepley 12*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormCreate(MPI_Comm, PetscWeakForm *); 13*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormDestroy(PetscWeakForm *); 14*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormView(PetscWeakForm, PetscViewer); 15*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetNumFields(PetscWeakForm, PetscInt *); 16*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetNumFields(PetscWeakForm, PetscInt); 17*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscHashFormKeySort(PetscInt, PetscHashFormKey[]); 18*6528b96dSMatthew G. Knepley 19*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetObjective(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt *, 20*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 21*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 22*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 23*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 24*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddObjective(PetscWeakForm, DMLabel, PetscInt, PetscInt, 25*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 26*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 27*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 28*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 29*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetObjective(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 30*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 31*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 32*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 33*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 34*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetIndexObjective(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 35*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 36*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 37*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 38*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 39*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexObjective(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 40*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 41*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 42*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 43*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 44*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 45*6528b96dSMatthew G. Knepley PetscInt *, 46*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 47*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 48*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 49*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 50*6528b96dSMatthew G. Knepley PetscInt *, 51*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 52*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 53*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 54*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 55*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 56*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 57*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 58*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 59*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 60*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 61*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 62*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 63*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 64*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 65*6528b96dSMatthew G. Knepley PetscInt, 66*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 67*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 68*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 69*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 70*6528b96dSMatthew G. Knepley PetscInt, 71*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 72*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 73*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 74*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 75*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 76*6528b96dSMatthew G. Knepley PetscInt, 77*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 78*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 79*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 80*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 81*6528b96dSMatthew G. Knepley PetscInt, 82*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 83*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 86*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormHasJacobian(PetscWeakForm, PetscBool *); 87*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 88*6528b96dSMatthew G. Knepley PetscInt *, 89*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 90*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 91*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 92*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 93*6528b96dSMatthew G. Knepley PetscInt *, 94*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 95*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 96*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 97*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 98*6528b96dSMatthew G. Knepley PetscInt *, 99*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 100*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 101*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 102*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 103*6528b96dSMatthew G. Knepley PetscInt *, 104*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 105*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 106*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 107*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 108*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 109*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 110*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 111*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 112*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 113*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 114*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 115*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 116*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 117*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 118*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 119*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 120*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 121*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 122*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 123*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 124*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 125*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 126*6528b96dSMatthew G. Knepley PetscInt, 127*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 128*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 129*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 130*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 131*6528b96dSMatthew G. Knepley PetscInt, 132*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 133*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 134*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 135*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 136*6528b96dSMatthew G. Knepley PetscInt, 137*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 138*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 139*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 140*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 141*6528b96dSMatthew G. Knepley PetscInt, 142*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 143*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 144*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 145*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 146*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 147*6528b96dSMatthew G. Knepley PetscInt, 148*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 149*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 150*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 151*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 152*6528b96dSMatthew G. Knepley PetscInt, 153*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 154*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 155*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 156*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 157*6528b96dSMatthew G. Knepley PetscInt, 158*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 159*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 160*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 161*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 162*6528b96dSMatthew G. Knepley PetscInt, 163*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 164*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 165*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 166*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 167*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormHasJacobianPreconditioner(PetscWeakForm, PetscBool *); 168*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 169*6528b96dSMatthew G. Knepley PetscInt *, 170*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 171*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 172*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 173*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 174*6528b96dSMatthew G. Knepley PetscInt *, 175*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 176*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 177*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 178*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 179*6528b96dSMatthew G. Knepley PetscInt *, 180*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 181*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 182*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 183*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 184*6528b96dSMatthew G. Knepley PetscInt *, 185*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 186*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 187*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 188*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 189*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 190*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 191*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 192*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 193*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 194*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 195*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 196*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 197*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 198*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 199*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 200*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 201*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 202*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 203*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 204*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 205*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 206*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 207*6528b96dSMatthew G. Knepley PetscInt, 208*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 209*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 210*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 211*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 212*6528b96dSMatthew G. Knepley PetscInt, 213*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 214*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 215*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 216*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 217*6528b96dSMatthew G. Knepley PetscInt, 218*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 219*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 220*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 221*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 222*6528b96dSMatthew G. Knepley PetscInt, 223*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 224*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 225*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 226*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 227*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 228*6528b96dSMatthew G. Knepley PetscInt, 229*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 230*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 231*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 232*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 233*6528b96dSMatthew G. Knepley PetscInt, 234*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 235*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 236*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 237*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 238*6528b96dSMatthew G. Knepley PetscInt, 239*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 240*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 241*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 242*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 243*6528b96dSMatthew G. Knepley PetscInt, 244*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 245*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 246*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 247*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 248*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormHasDynamicJacobian(PetscWeakForm, PetscBool *); 249*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetDynamicJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 250*6528b96dSMatthew G. Knepley PetscInt *, 251*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 252*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 253*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 254*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 255*6528b96dSMatthew G. Knepley PetscInt *, 256*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 257*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 258*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 259*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 260*6528b96dSMatthew G. Knepley PetscInt *, 261*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 262*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 263*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 264*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 265*6528b96dSMatthew G. Knepley PetscInt *, 266*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 267*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 268*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 269*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 270*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddDynamicJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 271*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 272*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 273*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 274*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 275*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 276*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 277*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 278*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 279*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 280*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 281*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 282*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 283*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 284*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 285*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 286*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 287*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetDynamicJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 288*6528b96dSMatthew G. Knepley PetscInt, 289*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 290*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 291*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 292*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 293*6528b96dSMatthew G. Knepley PetscInt, 294*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 295*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 296*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 297*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 298*6528b96dSMatthew G. Knepley PetscInt, 299*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 300*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 301*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 302*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 303*6528b96dSMatthew G. Knepley PetscInt, 304*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 305*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 306*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 307*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 308*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexDynamicJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 309*6528b96dSMatthew G. Knepley PetscInt, 310*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 311*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 312*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 313*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 314*6528b96dSMatthew G. Knepley PetscInt, 315*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 316*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 317*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 318*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 319*6528b96dSMatthew G. Knepley PetscInt, 320*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 321*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 322*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 323*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 324*6528b96dSMatthew G. Knepley PetscInt, 325*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 326*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 327*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 328*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 329*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetBdResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 330*6528b96dSMatthew G. Knepley PetscInt *, 331*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 332*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 333*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 334*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 335*6528b96dSMatthew G. Knepley PetscInt *, 336*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 337*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 338*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 339*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 340*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddBdResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 341*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 342*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 343*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 344*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 345*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 346*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 347*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 348*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 349*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetBdResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 350*6528b96dSMatthew G. Knepley PetscInt, 351*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 352*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 353*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 354*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 355*6528b96dSMatthew G. Knepley PetscInt, 356*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 357*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 358*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 359*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 360*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexBdResidual(PetscWeakForm, DMLabel, PetscInt, PetscInt, 361*6528b96dSMatthew G. Knepley PetscInt, 362*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 363*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 364*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 365*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 366*6528b96dSMatthew G. Knepley PetscInt, 367*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 368*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 369*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 370*6528b96dSMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 371*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormHasBdJacobian(PetscWeakForm, PetscBool *); 372*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetBdJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 373*6528b96dSMatthew G. Knepley PetscInt *, 374*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 375*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 376*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 377*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 378*6528b96dSMatthew G. Knepley PetscInt *, 379*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 380*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 381*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 382*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 383*6528b96dSMatthew G. Knepley PetscInt *, 384*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 385*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 386*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 387*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 388*6528b96dSMatthew G. Knepley PetscInt *, 389*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 390*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 391*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 392*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 393*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddBdJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 394*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 395*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 396*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 397*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 398*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 399*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 400*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 401*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 402*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 403*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 404*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 405*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 406*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 407*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 408*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 409*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 410*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetBdJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 411*6528b96dSMatthew G. Knepley PetscInt, 412*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 413*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 414*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 415*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 416*6528b96dSMatthew G. Knepley PetscInt, 417*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 418*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 419*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 420*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 421*6528b96dSMatthew G. Knepley PetscInt, 422*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 423*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 424*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 425*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 426*6528b96dSMatthew G. Knepley PetscInt, 427*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 428*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 429*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 430*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 431*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexBdJacobian(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 432*6528b96dSMatthew G. Knepley PetscInt, 433*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 434*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 435*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 436*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 437*6528b96dSMatthew G. Knepley PetscInt, 438*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 439*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 440*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 441*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 442*6528b96dSMatthew G. Knepley PetscInt, 443*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 444*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 445*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 446*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 447*6528b96dSMatthew G. Knepley PetscInt, 448*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 449*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 450*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 451*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 452*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormHasBdJacobianPreconditioner(PetscWeakForm, PetscBool *); 453*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetBdJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 454*6528b96dSMatthew G. Knepley PetscInt *, 455*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 456*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 457*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 458*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 459*6528b96dSMatthew G. Knepley PetscInt *, 460*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 461*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 462*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 463*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 464*6528b96dSMatthew G. Knepley PetscInt *, 465*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 466*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 467*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 468*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 469*6528b96dSMatthew G. Knepley PetscInt *, 470*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, PetscInt, 471*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 472*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 473*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 474*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormAddBdJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 475*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 476*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 477*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 478*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 479*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 480*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 481*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 482*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 483*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 484*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 485*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 486*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 487*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 488*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 489*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 490*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 491*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetBdJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 492*6528b96dSMatthew G. Knepley PetscInt, 493*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 494*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 495*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 496*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 497*6528b96dSMatthew G. Knepley PetscInt, 498*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 499*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 500*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 501*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 502*6528b96dSMatthew G. Knepley PetscInt, 503*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 504*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 505*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 506*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 507*6528b96dSMatthew G. Knepley PetscInt, 508*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 509*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 510*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 511*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 512*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexBdJacobianPreconditioner(PetscWeakForm, DMLabel, PetscInt, PetscInt, PetscInt, 513*6528b96dSMatthew G. Knepley PetscInt, 514*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 515*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 516*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 517*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 518*6528b96dSMatthew G. Knepley PetscInt, 519*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 520*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 521*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 522*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 523*6528b96dSMatthew G. Knepley PetscInt, 524*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 525*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 526*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 527*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 528*6528b96dSMatthew G. Knepley PetscInt, 529*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 530*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 531*6528b96dSMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 532*6528b96dSMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 533*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormGetRiemannSolver(PetscWeakForm, DMLabel, PetscInt, PetscInt, 534*6528b96dSMatthew G. Knepley PetscInt *, 535*6528b96dSMatthew G. Knepley void (***)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *)); 536*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetRiemannSolver(PetscWeakForm, DMLabel, PetscInt, PetscInt, 537*6528b96dSMatthew G. Knepley PetscInt, 538*6528b96dSMatthew G. Knepley void (**)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *)); 539*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscWeakFormSetIndexRiemannSolver(PetscWeakForm, DMLabel, PetscInt, PetscInt, 540*6528b96dSMatthew G. Knepley PetscInt, 541*6528b96dSMatthew G. Knepley void (*)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *)); 542*6528b96dSMatthew G. Knepley 543*6528b96dSMatthew G. Knepley 5442764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSInitializePackage(void); 5452764a2aaSMatthew G. Knepley 5462764a2aaSMatthew G. Knepley PETSC_EXTERN PetscClassId PETSCDS_CLASSID; 5472764a2aaSMatthew G. Knepley 5482764a2aaSMatthew G. Knepley /*J 5492764a2aaSMatthew G. Knepley PetscDSType - String with the name of a PETSc discrete system 5502764a2aaSMatthew G. Knepley 5512764a2aaSMatthew G. Knepley Level: beginner 5522764a2aaSMatthew G. Knepley 5532764a2aaSMatthew G. Knepley .seealso: PetscDSSetType(), PetscDS 5542764a2aaSMatthew G. Knepley J*/ 5552764a2aaSMatthew G. Knepley typedef const char *PetscDSType; 5562764a2aaSMatthew G. Knepley #define PETSCDSBASIC "basic" 5572764a2aaSMatthew G. Knepley 558665f567fSMatthew G. Knepley typedef enum {PETSC_DISC_NONE, PETSC_DISC_FE, PETSC_DISC_FV} PetscDiscType; 559665f567fSMatthew G. Knepley 56030b9ff8bSMatthew G. Knepley typedef void (*PetscPointFunc)(PetscInt, PetscInt, PetscInt, 561194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 562194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 56397b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]); 56430b9ff8bSMatthew G. Knepley typedef void (*PetscPointJac)(PetscInt, PetscInt, PetscInt, 5652aa1fc23SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 5662aa1fc23SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 56797b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]); 56830b9ff8bSMatthew G. Knepley typedef void (*PetscBdPointFunc)(PetscInt, PetscInt, PetscInt, 569194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 570194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 57197b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]); 57230b9ff8bSMatthew G. Knepley typedef void (*PetscBdPointJac)(PetscInt, PetscInt, PetscInt, 5732aa1fc23SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 5742aa1fc23SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 57597b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]); 57697b6e6e8SMatthew G. Knepley typedef void (*PetscRiemannFunc)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *); 577c371a6d1SMatthew G. Knepley typedef PetscErrorCode (*PetscSimplePointFunc)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar[], void *); 578194d53e6SMatthew G. Knepley 5792764a2aaSMatthew G. Knepley PETSC_EXTERN PetscFunctionList PetscDSList; 5802764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCreate(MPI_Comm, PetscDS *); 5812764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSDestroy(PetscDS *); 5822764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetType(PetscDS, PetscDSType); 5832764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetType(PetscDS, PetscDSType *); 5842764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetUp(PetscDS); 5852764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetFromOptions(PetscDS); 586fe2efc57SMark PETSC_EXTERN PetscErrorCode PetscDSViewFromOptions(PetscDS,PetscObject,const char[]); 5878aec7d55SBarry Smith 5882764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSView(PetscDS,PetscViewer); 5892764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegister(const char [], PetscErrorCode (*)(PetscDS)); 5902764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSRegisterDestroy(void); 5912764a2aaSMatthew G. Knepley 592b1353e8eSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetHeightSubspace(PetscDS, PetscInt, PetscDS *); 5932764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetSpatialDimension(PetscDS, PetscInt *); 594a859676bSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetCoordinateDimension(PetscDS, PetscInt *); 595a859676bSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetCoordinateDimension(PetscDS, PetscInt); 5968edf6225SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetHybrid(PetscDS, PetscBool *); 5978edf6225SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetHybrid(PetscDS, PetscBool); 5982764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetNumFields(PetscDS, PetscInt *); 5992764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalDimension(PetscDS, PetscInt *); 6002764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTotalComponents(PetscDS, PetscInt *); 6014cd1e086SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldIndex(PetscDS, PetscObject, PetscInt *); 6024cd1e086SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldSize(PetscDS, PetscInt, PetscInt *); 6032764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFieldOffset(PetscDS, PetscInt, PetscInt *); 60447e57110SSander Arens PETSC_EXTERN PetscErrorCode PetscDSGetDimensions(PetscDS, PetscInt *[]); 60547e57110SSander Arens PETSC_EXTERN PetscErrorCode PetscDSGetComponents(PetscDS, PetscInt *[]); 6066ce16762SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffset(PetscDS, PetscInt, PetscInt *); 607194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentOffsets(PetscDS, PetscInt *[]); 608194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetComponentDerivativeOffsets(PetscDS, PetscInt *[]); 6092764a2aaSMatthew G. Knepley 610*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetWeakForm(PetscDS, PetscWeakForm *); 611*6528b96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetWeakForm(PetscDS, PetscWeakForm); 6122764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetDiscretization(PetscDS, PetscInt, PetscObject *); 6132764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetDiscretization(PetscDS, PetscInt, PetscObject); 6142764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddDiscretization(PetscDS, PetscObject); 615083401c6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetQuadrature(PetscDS, PetscQuadrature*); 616249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetImplicit(PetscDS, PetscInt, PetscBool*); 617249df284SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetImplicit(PetscDS, PetscInt, PetscBool); 618f9244615SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJetDegree(PetscDS, PetscInt, PetscInt*); 619f9244615SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJetDegree(PetscDS, PetscInt, PetscInt); 62097b6e6e8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetConstants(PetscDS, PetscInt *, const PetscScalar *[]); 62197b6e6e8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetConstants(PetscDS, PetscInt, PetscScalar[]); 622194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetObjective(PetscDS, PetscInt, 62330b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 624194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 625194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 62697b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 627194d53e6SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetObjective(PetscDS, PetscInt, 62830b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 629194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 630194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 63197b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 6322764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetResidual(PetscDS, PetscInt, 63330b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 634194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 635194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 63697b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 63730b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 638194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 639194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 64097b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 6412764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetResidual(PetscDS, PetscInt, 64230b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 643194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 644194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 64597b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 64630b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 647194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 648194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 64997b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 6503e75805dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasJacobian(PetscDS, PetscBool *); 6512764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJacobian(PetscDS, PetscInt, PetscInt, 65230b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 653194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 654194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 65597b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 65630b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 657194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 658194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 65997b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 66030b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 661194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 662194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 66397b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 66430b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 665194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 666194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 66797b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 6682764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJacobian(PetscDS, PetscInt, PetscInt, 66930b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 670194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 671194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 67297b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 67330b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 674194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 675194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 67697b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 67730b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 678194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 679194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 68097b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 68130b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 682194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 683194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 68497b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 6859a5f02d0SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSUseJacobianPreconditioner(PetscDS, PetscBool); 686475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasJacobianPreconditioner(PetscDS, PetscBool *); 687475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 688475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 689475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 690475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 69197b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 692475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 693475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 694475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 69597b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 696475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 697475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 698475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 69997b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 700475e0ac9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 701475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 702475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 70397b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 704475e0ac9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 705475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 706475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 707475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 70897b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 709475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 710475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 711475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 71297b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 713475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 714475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 715475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 71697b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 717475e0ac9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 718475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 719475e0ac9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 72097b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 721b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasDynamicJacobian(PetscDS, PetscBool *); 722b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetDynamicJacobian(PetscDS, PetscInt, PetscInt, 723b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 724b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 725b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 72697b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 727b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 728b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 729b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 73097b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 731b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 732b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 733b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 73497b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 735b7e05686SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 736b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 737b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 73897b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 739b7e05686SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetDynamicJacobian(PetscDS, PetscInt, PetscInt, 740b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 741b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 742b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 74397b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 744b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 745b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 746b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 74797b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 748b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 749b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 750b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 75197b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 752b7e05686SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 753b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 754b7e05686SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 75597b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 7560c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetRiemannSolver(PetscDS, PetscInt, 75797b6e6e8SMatthew G. Knepley void (**)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *)); 7580c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetRiemannSolver(PetscDS, PetscInt, 75997b6e6e8SMatthew G. Knepley void (*)(PetscInt, PetscInt, const PetscReal[], const PetscReal[], const PetscScalar[], const PetscScalar[], PetscInt, const PetscScalar[], PetscScalar[], void *)); 76032d2bbc9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetUpdate(PetscDS, PetscInt, 76132d2bbc9SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 76232d2bbc9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 76332d2bbc9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 7643fa77dffSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 76532d2bbc9SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetUpdate(PetscDS, PetscInt, 76632d2bbc9SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 76732d2bbc9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 76832d2bbc9SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 7693fa77dffSMatthew G. Knepley PetscReal, const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 7700c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetContext(PetscDS, PetscInt, void **); 7710c2f2876SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetContext(PetscDS, PetscInt, void *); 7722764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdResidual(PetscDS, PetscInt, 77330b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 774194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 775194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 77697b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 77730b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 778194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 779194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 78097b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 7812764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdResidual(PetscDS, PetscInt, 78230b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 783194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 784194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 78597b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 78630b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 787194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 788194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 78997b6e6e8SMatthew G. Knepley PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 79027f02ce8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasBdJacobian(PetscDS, PetscBool *); 7912764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdJacobian(PetscDS, PetscInt, PetscInt, 79230b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 793194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 794194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 79597b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 79630b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 797194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 798194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 79997b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 80030b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 801194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 802194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 80397b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 80430b9ff8bSMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 805194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 806194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 80797b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 8082764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdJacobian(PetscDS, PetscInt, PetscInt, 80930b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 810194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 811194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 81297b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 81330b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 814194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 815194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 81697b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 81730b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 818194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 819194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 82097b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 82130b9ff8bSMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 822194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 823194d53e6SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 82497b6e6e8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 82527f02ce8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSHasBdJacobianPreconditioner(PetscDS, PetscBool *); 82627f02ce8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBdJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 82727f02ce8SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 82827f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 82927f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 83027f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 83127f02ce8SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 83227f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 83327f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 83427f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 83527f02ce8SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 83627f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 83727f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 83827f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 83927f02ce8SMatthew G. Knepley void (**)(PetscInt, PetscInt, PetscInt, 84027f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84127f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84227f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 84327f02ce8SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetBdJacobianPreconditioner(PetscDS, PetscInt, PetscInt, 84427f02ce8SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 84527f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84627f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 84727f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 84827f02ce8SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 84927f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85027f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85127f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 85227f02ce8SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 85327f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85427f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85527f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[]), 85627f02ce8SMatthew G. Knepley void (*)(PetscInt, PetscInt, PetscInt, 85727f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85827f02ce8SMatthew G. Knepley const PetscInt[], const PetscInt[], const PetscScalar[], const PetscScalar[], const PetscScalar[], 85927f02ce8SMatthew G. Knepley PetscReal, PetscReal, const PetscReal[], const PetscReal[], PetscInt, const PetscScalar[], PetscScalar[])); 86095cbbfd3SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetExactSolution(PetscDS, PetscInt, PetscErrorCode (**)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar[], void *), void **); 86195cbbfd3SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetExactSolution(PetscDS, PetscInt, PetscErrorCode (*)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar[], void *), void *); 862f2cacb80SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetExactSolutionTimeDerivative(PetscDS, PetscInt, PetscErrorCode (**)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar[], void *), void **); 863f2cacb80SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSetExactSolutionTimeDerivative(PetscDS, PetscInt, PetscErrorCode (*)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar[], void *), void *); 864ef0bb6c7SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetTabulation(PetscDS, PetscTabulation *[]); 865ef0bb6c7SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetFaceTabulation(PetscDS, PetscTabulation *[]); 8662764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetEvaluationArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **); 8672764a2aaSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetWeakFormArrays(PetscDS, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **); 8684bee2e38SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetWorkspace(PetscDS, PetscReal **, PetscScalar **, PetscScalar **, PetscScalar **, PetscScalar **); 8699252d075SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCopyConstants(PetscDS, PetscDS); 870da51fcedSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCopyEquations(PetscDS, PetscDS); 8716c1eb96dSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSelectDiscretizations(PetscDS, PetscInt, const PetscInt[], PetscDS); 8729252d075SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSSelectEquations(PetscDS, PetscInt, const PetscInt[], PetscDS); 87356cf3b9cSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSAddBoundary(PetscDS, DMBoundaryConditionType, const char[], const char[], PetscInt, PetscInt, const PetscInt *, void (*)(void), void (*)(void), PetscInt, const PetscInt *, void *); 87456cf3b9cSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSUpdateBoundary(PetscDS, PetscInt, DMBoundaryConditionType, const char[], const char[], PetscInt, PetscInt, const PetscInt *, void (*)(void), void (*)(void), PetscInt, const PetscInt *, void *); 8753424c85cSToby Isaac PETSC_EXTERN PetscErrorCode PetscDSGetNumBoundary(PetscDS, PetscInt *); 87656cf3b9cSMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSGetBoundary(PetscDS, PetscInt, DMBoundaryConditionType *, const char **, const char **, PetscInt *, PetscInt *, const PetscInt **, void (**)(void), void (**)(void), PetscInt *, const PetscInt **, void **); 87736951cb5SMatthew G. Knepley PETSC_EXTERN PetscErrorCode PetscDSCopyBoundary(PetscDS, PetscInt, const PetscInt[], PetscDS); 8782764a2aaSMatthew G. Knepley 8792764a2aaSMatthew G. Knepley #endif 880