#ifndef H_EX1 #define H_EX1 #define PI 3.1415926536 #define PCW PETSC_COMM_WORLD #define NEUMANN 1 #define DIRICHLET 2 #define max(a,b) ((a)<(b)?(b):(a)) #define min(a,b) ((a)>(b)?(b):(a)) #define _LU_ 1 #define _KSP_ 2 #define _HYPRE_ 3 #define _PETSC_GAMG_ 4 PetscErrorCode setup_LHS_matrix(Mat A, DM DA2d, short int boundary_condition, PetscScalar dx, PetscScalar dy, PetscInt Nx, PetscInt Ny) ; PetscErrorCode setup_RHS_vector(Vec b, DM DA2d, short int boundary_condition, PetscScalar dx, PetscScalar dy, PetscInt Nx, PetscInt Ny) ; PetscErrorCode setup_analytical_vector(Vec sol_an, DM DA2d, short int boundary_condition, PetscScalar dx, PetscScalar dy, PetscInt Nx, PetscInt Ny) ; PetscErrorCode compute_error(Vec sol, Vec sol_an, PetscScalar dx, PetscScalar dy) ; #endif