1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
#include "petscdmmg.h"
typedef struct {
PetscScalar u,v,omega;
} Field1;
typedef struct {
PetscScalar temp;
} Field2;
typedef struct {
PassiveReal lidvelocity,prandtl,grashof; /* physical parameters */
PetscInt nsolve;
Field1 **x1; /* passing local ghosted vector array of Physics 1 */
Field2 **x2; /* passing local ghosted vector array of Physics 2 */
} AppCtx;
extern PetscErrorCode FormInitialGuessLocal1(DALocalInfo*,Field1**);
extern PetscErrorCode FormFunctionLocal1(DALocalInfo*,Field1**,Field2**,Field1**,void*);
extern PetscErrorCode FormInitialGuessLocal2(DALocalInfo*,Field2**,AppCtx*);
extern PetscErrorCode FormFunctionLocal2(DALocalInfo*,Field1**,Field2**,Field2**,void*);
|