#ifndef PATCH_H #define PATCH_H #include #include "MyList.h" #include "Block.h" #include "var.h" #include "macrodef.h" //need dim here; Vertex or Cell; ghost_width class Patch { public: int lev; int shape[dim]; double bbox[2 * dim]; // this bbox includes buffer points MyList *blb, *ble; int lli[dim], uui[dim]; // denote the buffer points on each boundary public: Patch() {}; Patch(int DIM, int *shapei, double *bboxi, int levi, bool buflog, int Symmetry); ~Patch(); void checkPatch(bool buflog); void checkPatch(bool buflog, const int out_rank); void checkBlock(); void Interp_Points(MyList *VarList, int NN, double **XX, double *Shellf, int Symmetry); bool Interp_ONE_Point(MyList *VarList, double *XX, double *Shellf, int Symmetry); double getdX(int dir); void Find_Maximum(MyList *VarList, double *XX, double *Shellf); bool Find_Point(double *XX); void Interp_Points(MyList *VarList, int NN, double **XX, double *Shellf, int Symmetry, MPI_Comm Comm_here); bool Interp_ONE_Point(MyList *VarList, double *XX, double *Shellf, int Symmetry, MPI_Comm Comm_here); void Find_Maximum(MyList *VarList, double *XX, double *Shellf, MPI_Comm Comm_here); }; #endif /* PATCH_H */