xref: /petsc/src/mat/tutorials/ex18.h (revision a69119a591a03a9d906b29c0a4e9802e4d7c9795)
1 #ifndef EX18_H_
2 #define EX18_H_
3 
4 #include <petscmat.h>
5 
6 typedef struct {
7   PetscInt  Nv;       /* number of vertices */
8   PetscInt  Ne;       /* number of elements */
9   PetscInt  n;        /* dimension of the resulting linear system; size of the Jacobian */
10   PetscInt *vertices; /* list of vertices for each element */
11   PetscInt *coo;      /* offset into the matrices COO array for the start of each element stiffness */
12 } FEStruct;
13 
14 PETSC_EXTERN PetscErrorCode FillMatrixKokkosCOO(FEStruct *, Mat);
15 PETSC_EXTERN PetscErrorCode FillMatrixCUDACOO(FEStruct *, Mat);
16 
17 #endif // EX18_H_
18