1: #ifndef EX18_H_ 2: #define EX18_H_ 4: #include <petscmat.h> 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; 14: PETSC_EXTERN PetscErrorCode FillMatrixKokkosCOO(FEStruct *, Mat); 15: PETSC_EXTERN PetscErrorCode FillMatrixCUDACOO(FEStruct *, Mat); 17: #endif // EX18_H_