33 #ifndef PETSC_INTERFACE_H
34 #define PETSC_INTERFACE_H
86 void petsc_initialize(
const PetscInt nNo,
const PetscInt mynNo,
87 const PetscInt nnz,
const PetscInt nEq,
const PetscInt *svFSI_ltg,
88 const PetscInt *svFSI_map,
const PetscInt *svFSI_rowPtr,
89 const PetscInt *svFSI_colPtr,
char *inp);
91 void petsc_create_linearsystem(
const PetscInt dof,
const PetscInt iEq,
const PetscInt nEq,
92 const PetscReal *svFSI_DirBC,
const PetscReal *svFSI_lpBC);
94 void petsc_create_linearsolver(
const consts::PreconditionerType
lsType,
const consts::PreconditionerType pcType,
95 const PetscInt kSpace,
const PetscInt maxIter,
const PetscReal relTol,
96 const PetscReal absTol,
const consts::EquationType phys,
const PetscInt dof,
97 const PetscInt iEq,
const PetscInt nEq);
99 void petsc_set_values(
const PetscInt dof,
const PetscInt iEq,
const PetscReal *R,
100 const PetscReal *Val,
const PetscReal *svFSI_DirBC,
const PetscReal *svFSI_lpBC);
102 void petsc_solve(PetscReal *resNorm, PetscReal *initNorm, PetscReal *dB,
103 PetscReal *execTime,
bool *converged, PetscInt *numIter,
104 PetscReal *R,
const PetscInt maxIter,
const PetscInt dof,
107 void petsc_destroy_all(
const PetscInt);
109 PetscErrorCode petsc_create_lhs(
const PetscInt,
const PetscInt,
const PetscInt,
110 const PetscInt *,
const PetscInt *,
111 const PetscInt *,
const PetscInt *);
113 PetscErrorCode petsc_create_bc(
const PetscInt,
const PetscInt,
const PetscReal *,
116 PetscErrorCode petsc_create_vecmat(
const PetscInt,
const PetscInt,
const PetscInt);
118 PetscErrorCode petsc_set_vec(
const PetscInt,
const PetscInt,
const PetscReal *);
120 PetscErrorCode petsc_set_mat(
const PetscInt,
const PetscInt,
const PetscReal *);
122 PetscErrorCode petsc_set_bc(
const PetscInt,
const PetscReal *,
const PetscReal *);
124 PetscErrorCode petsc_set_pcfieldsplit(
const PetscInt,
const PetscInt);
126 PetscErrorCode petsc_pc_rcs(
const PetscInt,
const PetscInt);
129 PetscErrorCode petsc_debug_save_vec(
const char *, Vec);
130 PetscErrorCode petsc_debug_save_mat(
const char *, Mat);
Linear system of equations solver type.
Definition: ComMod.h:640
Definition: petsc_impl.h:48
Definition: petsc_impl.h:66