diff options
Report total number of active cells in refinement hierarchy
Diffstat (limited to 'src/refinement')
| -rw-r--r-- | src/refinement/grid2D.h | 2 | ||||
| -rw-r--r-- | src/refinement/grid2D.hh | 10 | 
2 files changed, 12 insertions, 0 deletions
| diff --git a/src/refinement/grid2D.h b/src/refinement/grid2D.h index 37e764a..95324f7 100644 --- a/src/refinement/grid2D.h +++ b/src/refinement/grid2D.h @@ -110,6 +110,8 @@ public:    RefiningGrid2D<T,DESCRIPTOR>& refine(Vector<T,2> origin, Vector<T,2> extend, bool addCouplers=true); +  std::size_t getActiveVoxelN() const; +  };  template <typename T, template<typename> class DESCRIPTOR> diff --git a/src/refinement/grid2D.hh b/src/refinement/grid2D.hh index 941bff7..504808a 100644 --- a/src/refinement/grid2D.hh +++ b/src/refinement/grid2D.hh @@ -218,6 +218,16 @@ Vector<T,2> Grid2D<T,DESCRIPTOR>::alignExtendToGrid(Vector<T,2> extend) const  }  template <typename T, template<typename> class DESCRIPTOR> +std::size_t Grid2D<T,DESCRIPTOR>::getActiveVoxelN() const +{ +  std::size_t n = _geometry->getStatistics().getNvoxel(); +  for (const auto& grid : _fineGrids) { +    n += grid->getActiveVoxelN(); +  } +  return n; +} + +template <typename T, template<typename> class DESCRIPTOR>  RefiningGrid2D<T,DESCRIPTOR>& Grid2D<T,DESCRIPTOR>::refine(    Vector<T,2> wantedOrigin, Vector<T,2> wantedExtend, bool addCouplers)  { | 
