28#ifndef SUPER_GEOMETRY_STATISTICS_2D_H
29#define SUPER_GEOMETRY_STATISTICS_2D_H
52template<
typename T,
unsigned D>
61 bool _statisticsUpdateNeeded;
66 std::map<int, int> _material2n;
68 std::map<int, std::vector<T> > _material2min;
70 std::map<int, std::vector<T> > _material2max;
92 void update(
bool verbose=
false);
119 std::vector<int>
getType(
int iC,
int iX,
int iY);
120 std::vector<int>
getType(
int iC,
int iX,
int iY)
const;
class for marking output with some text
int getNvoxel()
Returns the number of voxels with material!=0.
std::vector< T > getPhysExtend(int material)
Returns the phys extend as length in each direction.
std::vector< int > getType(int iC, int iX, int iY)
Returns the boundary type which is characterized by a discrte normal (c.f. Zimny)
std::vector< int > computeDiscreteNormal(int material, T maxNorm=1.1)
Returns discrete normal with norm maxNorm that points into the fluid for paraxial surfaces maxNorm=1....
std::vector< T > getPhysRadius(int material)
Returns the phys radius as length in each direction.
std::vector< T > getCenterPhysR(int material)
Returns the center position.
void print()
Prints some statistic information, i.e. the number of voxels and min. max. physical position for each...
SuperGeometryStatistics2D< T > & operator=(SuperGeometryStatistics2D const &rhs)
Copy assignment.
void update(bool verbose=false)
Updates the statistics if it is really needed.
std::vector< T > getMinPhysR(int material)
Returns the min. phys position in each direction.
int getNmaterials()
Returns the number of different materials.
std::vector< T > getMaxPhysR(int material)
Returns the max. phys position in each direction.
std::vector< T > computeNormal(int material)
Returns normal that points into the fluid for paraxial surfaces.
SuperGeometryStatistics2D(SuperGeometry< T, 2 > *superGeometry)
Constructor.
bool & getStatisticsStatus()
Read and write access to a flag, which indicates if an uptate is needed (=true)
Representation of a statistic for a parallel 2D geometry.
Top level namespace for all of OpenLB.
Representation of a parallel 2D geometry – header file.