1 #pragma once 2 3 #include <petscmat.h> 4 5 typedef struct { 6 PetscInt Nv; /* number of vertices */ 7 PetscInt Ne; /* number of elements */ 8 PetscInt n; /* dimension of the resulting linear system; size of the Jacobian */ 9 PetscInt *vertices; /* list of vertices for each element */ 10 PetscInt *coo; /* offset into the matrices COO array for the start of each element stiffness */ 11 } FEStruct; 12 13 PETSC_EXTERN PetscErrorCode FillMatrixKokkosCOO(FEStruct *, Mat); 14 PETSC_EXTERN PetscErrorCode FillMatrixCUDACOO(FEStruct *, Mat); 15