HG-MD
1
|
00001 #ifndef HGRID_3D_H 00002 #define HGRID_3D_H 00003 00004 00005 #include "HGRID_base.h" 00006 #include <iostream> 00007 00009 00010 class HGRID_3D : public HGRID_base 00011 { 00012 public: 00013 00015 HGRID_3D() 00016 { 00017 constructor(); 00018 #ifdef CONSTUCTOR_OUTPUT 00019 cerr << "HGRID_3D() finished"<<endl; 00020 #endif 00021 } 00022 00024 00026 00027 //The copy-constructor of MD has to be called because the link from MD to HGRID_base is virtual 00028 HGRID_3D(MD& other) : MD(other), HGRID_base(other) 00029 { 00030 /*constructor();*/ 00031 #ifdef CONSTUCTOR_OUTPUT 00032 cerr << "HGRID_3D(MD& other) finished"<<endl; 00033 #endif 00034 } 00035 HGRID_3D(HGRID_base& other) : MD(other), HGRID_base(other) 00036 { 00037 /*constructor();*/ 00038 #ifdef CONSTUCTOR_OUTPUT 00039 cerr << "HGRID_3D(HGRID_base& other) finished"<<endl; 00040 #endif 00041 } 00042 00044 void constructor(){ 00045 set_dim_particle(3); 00046 set_dim(3); 00047 } 00048 00049 protected: 00050 00052 void HGRID_UpdateParticleInHgrid (Particle *obj); 00053 void HGRID_RemoveParticleFromHgrid(Particle *obj); 00054 00056 void CheckCell(Cell cell, Particle *obj, HGrid *grid); 00057 00059 void CheckCell_current(Cell cell, HGrid *grid); 00060 00062 void CheckObjAgainstGrid(HGrid *grid, Particle *obj); 00063 00065 void CheckObjAgainstWholeGrid(HGrid *grid, Particle *obj); 00066 00069 bool TestCell(Cell cell, Particle *obj, HGrid *grid); 00070 00073 bool TestObjAgainstGrid(HGrid *grid, Particle *obj); 00074 }; 00075 //end class defintion 00076 00077 #endif