MercuryDPM
Alpha
|
This class stores statistical values for a given spatial position; to be used in combination with StatisticsVector. More...
#include <StatisticsPoint.h>
Public Member Functions | |
StatisticsPoint () | |
Constructor sets sensible values. More... | |
StatisticsPoint (const StatisticsPoint &other) | |
Copy constructor; simply copies everything. More... | |
void | setCGShape (const char *CG_type) |
see StatisticsVector::setCGShape More... | |
CG | getCGShape () const |
see StatisticsVector::getCGShape More... | |
void | setCGWidth2 (Mdouble new_) |
see StatisticsVector::setCGWidth2 More... | |
Mdouble | getCGWidthSquared () const |
see StatisticsVector::getCGWidthSquared More... | |
Mdouble | getCGWidth () const |
see StatisticsVector::getCGWidth More... | |
Mdouble | getCutoff () |
see StatisticsVector::getCutoff More... | |
Mdouble | getCutoff2 () |
see StatisticsVector::getCutoff2 More... | |
Mdouble | getXMaxStat () |
see StatisticsVector::getXMaxStat More... | |
Mdouble | getYMaxStat () |
see StatisticsVector::getYMaxStat More... | |
Mdouble | getZMaxStat () |
see StatisticsVector::getZMaxStat More... | |
Mdouble | getXMinStat () |
see StatisticsVector::getXMinStat More... | |
Mdouble | getYMinStat () |
see StatisticsVector::getYMinStat More... | |
Mdouble | getZMinStat () |
see StatisticsVector::getZMinStat More... | |
void | getN (int &nx_, int &ny_, int &nz_) |
see StatisticsVector::get_n More... | |
Mdouble | evaluatePolynomial (Mdouble r) |
see StatisticsVector::evaluatePolynomial More... | |
Mdouble | evaluatePolynomialGradient (Mdouble r) |
see StatisticsVector::evaluatePolynomialGradient More... | |
Mdouble | evaluateIntegral (Mdouble n1, Mdouble n2, Mdouble t) |
see StatisticsVector::evaluateIntegral More... | |
void | setCGInverseVolume () |
sets CG_invvolume More... | |
int | nonaveragedDim () |
double | averagingVolume () |
Mdouble | getCGInverseVolume () |
returns CG_invvolume More... | |
void | set_Gaussian_invvolume (int dim) |
sets CG_invvolume if CG_type=Gaussian More... | |
double | compute_Gaussian_invvolume (int dim) |
computes CG_invvolume if CG_type=Gaussian More... | |
void | set_Heaviside_invvolume () |
sets CG_invvolume if CG_type=HeaviSideSphere More... | |
void | set_Polynomial_invvolume (int dim) |
sets CG_invvolume if CG_type=Polynomial More... | |
void | setPosition (Vec3D new_) |
sets Position More... | |
Vec3D | getPosition () const |
returns Position More... | |
void | set_zero () |
Sets all statistical variables to zero. More... | |
StatisticsPoint< T > | getSquared () |
Squares all statistical variables; needed for variance. More... | |
StatisticsPoint< T > & | operator= (const StatisticsPoint< T > &P) |
Defines a equal operator needed for copy constructor. More... | |
StatisticsPoint< T > & | operator+= (const StatisticsPoint< T > &P) |
Defines a plus operator needed to average values ( ) More... | |
StatisticsPoint< T > & | operator-= (const StatisticsPoint< T > &P) |
Defines a plus operator needed to calculate variance. More... | |
StatisticsPoint< T > & | operator/= (const Mdouble a) |
Defines a division operator needed to average values ( ) More... | |
void | firstTimeAverage (const int n) |
Defines a division operator needed to time-average values (because the displacement does not have a value at the first timestep, this is slightly different than /=) More... | |
Mdouble | getDistanceSquaredNonAveraged (const Vec3D &P) |
returns the coarse graining distance in the coordinates that are not averaged about More... | |
Mdouble | dotNonAveraged (const Vec3D &P, const Vec3D &Q) |
Returns the dot product of two vectors in the coordinates that are not averaged about. More... | |
Vec3D | clearAveragedDirections (Vec3D P) |
Returns a vector where the averaged directions are zero. More... | |
Vec3D | crossNonAveraged (Vec3D P, Vec3D &Q) |
Returns the cross product of two vectors in the coordinates that are not averaged about. More... | |
Matrix3D | matrixCrossNonAveraged (Vec3D P, Matrix3D &Q) |
Returns the cross product of two vectors in the coordinates that are not averaged about. More... | |
Mdouble | CG_function (const Vec3D &PI) |
Returns the value of the course graining function phi(P,PI) More... | |
Mdouble | CG_function_2D (const Vec3D &PI) |
returns the value of the course graining function phi(P,PI) averaged along a line More... | |
Mdouble | CG_function_1D (const Vec3D &PI) |
Returns the value of the course graining function phi(P,PI) averaged along a plane. More... | |
Vec3D | CG_gradient (const Vec3D &P, const Mdouble phi) |
gradient of phi More... | |
Vec3D | CG_integral_gradient (Vec3D &P1, Vec3D &P2, Vec3D &P1_P2_normal, Mdouble P1_P2_distance) |
gradient of phi More... | |
Mdouble | CG_integral_gradient_1D (Vec3D &P1, Vec3D &P2, Vec3D &P1_P2_normal, Mdouble P1_P2_distance) |
Mdouble | CG_integral (Vec3D &P1, Vec3D &P2, Vec3D &P1_P2_normal, Mdouble P1_P2_distance, Vec3D &rpsi) |
Returns the value of the coarse graining integral . More... | |
Mdouble | CG_integral_2D (Vec3D &P1, Vec3D &P2, Vec3D &P1_P2_normal, Mdouble P1_P2_distance, Mdouble &rpsi_scalar) |
Returns the value of the coarse graining integral averaged along a line. More... | |
Mdouble | CG_integral_1D (Vec3D &P1, Vec3D &P2, Vec3D &P1_P2_normal, Mdouble P1_P2_distance, Mdouble &rpsi_scalar) |
Returns the value of the coarse graining integral averaged along a plane. More... | |
std::string | print () const |
Outputs statistical variables in human-readable format. More... | |
std::string | print_sqrt () const |
Outputs root of statistical variables in human-readable format. More... | |
std::string | write_variable_names () |
Outputs names of statistical variables in computer-readable format. More... | |
std::string | write () const |
Outputs statistical variables in computer-readable format. More... | |
Static Public Member Functions | |
static void | set_gb (StatisticsVector< T > *new_gb) |
see StatisticsVector::setCGShape More... | |
Public Attributes | |
Mdouble | Nu |
Particle volume fraction, . More... | |
Mdouble | Density |
Density, . More... | |
Vec3D | Momentum |
Momentum, . More... | |
Vec3D | DisplacementMomentum |
Momentum from linear displacement, , where , with the time intervall between outputs. More... | |
MatrixSymmetric3D | Displacement |
Linear displacement, . More... | |
MatrixSymmetric3D | MomentumFlux |
Momentum flux, . More... | |
MatrixSymmetric3D | DisplacementMomentumFlux |
Momentum flux from linear displacement, . More... | |
Vec3D | EnergyFlux |
Energy flux, . More... | |
Matrix3D | NormalStress |
Stress from normal forces, . More... | |
Matrix3D | TangentialStress |
Stress from tangential forces, . More... | |
Vec3D | NormalTraction |
Traction from normal forces, . More... | |
Vec3D | TangentialTraction |
Traction from tangential forces, . More... | |
MatrixSymmetric3D | Fabric |
Fabric tensor, . More... | |
Vec3D | CollisionalHeatFlux |
Heat flux from collisions, . More... | |
Mdouble | Dissipation |
Dissipation form collisions, . More... | |
Mdouble | Potential |
Elastic energy . More... | |
Vec3D | LocalAngularMomentum |
Matrix3D | LocalAngularMomentumFlux |
Matrix3D | ContactCoupleStress |
Mdouble | CG_invvolume |
Prefactor of CG function which depends on $w. More... | |
int | mirrorParticle |
indicates that a position is a (fake) particles used for periodic walls More... | |
Private Attributes | |
Vec3D | Position |
Position at which evaluation occurs. More... | |
Static Private Attributes | |
static StatisticsVector< T > * | gb |
Pointer to StatisticsVector (to obtain global parameters) More... | |
Friends | |
std::ostream & | operator (std::ostream &os, const StatisticsPoint< T > &stat) |
Outputs statistical variables to ostream. More... | |
This class stores statistical values for a given spatial position; to be used in combination with StatisticsVector.
Definition at line 39 of file StatisticsPoint.h.
|
inline |
Constructor sets sensible values.
Definition at line 53 of file StatisticsPoint.h.
References StatisticsPoint< T >::mirrorParticle, StatisticsPoint< T >::Position, and Vec3D::setZero().
|
inline |
Copy constructor; simply copies everything.
Definition at line 61 of file StatisticsPoint.h.
References StatisticsPoint< T >::mirrorParticle.
double StatisticsPoint< T >::averagingVolume | ( | ) |
Mdouble StatisticsPoint< T >::CG_function | ( | const Vec3D & | PI | ) |
Returns the value of the course graining function phi(P,PI)
Mdouble StatisticsPoint< T >::CG_function_1D | ( | const Vec3D & | PI | ) |
Returns the value of the course graining function phi(P,PI) averaged along a plane.
Mdouble StatisticsPoint< T >::CG_function_2D | ( | const Vec3D & | PI | ) |
returns the value of the course graining function phi(P,PI) averaged along a line
Vec3D StatisticsPoint< T >::CG_gradient | ( | const Vec3D & | P, |
const Mdouble | phi | ||
) |
gradient of phi
Mdouble StatisticsPoint< T >::CG_integral | ( | Vec3D & | P1, |
Vec3D & | P2, | ||
Vec3D & | P1_P2_normal, | ||
Mdouble | P1_P2_distance, | ||
Vec3D & | rpsi | ||
) |
Returns the value of the coarse graining integral .
Mdouble StatisticsPoint< T >::CG_integral_1D | ( | Vec3D & | P1, |
Vec3D & | P2, | ||
Vec3D & | P1_P2_normal, | ||
Mdouble | P1_P2_distance, | ||
Mdouble & | rpsi_scalar | ||
) |
Returns the value of the coarse graining integral averaged along a plane.
Mdouble StatisticsPoint< T >::CG_integral_2D | ( | Vec3D & | P1, |
Vec3D & | P2, | ||
Vec3D & | P1_P2_normal, | ||
Mdouble | P1_P2_distance, | ||
Mdouble & | rpsi_scalar | ||
) |
Returns the value of the coarse graining integral averaged along a line.
Vec3D StatisticsPoint< T >::CG_integral_gradient | ( | Vec3D & | P1, |
Vec3D & | P2, | ||
Vec3D & | P1_P2_normal, | ||
Mdouble | P1_P2_distance | ||
) |
gradient of phi
Mdouble StatisticsPoint< T >::CG_integral_gradient_1D | ( | Vec3D & | P1, |
Vec3D & | P2, | ||
Vec3D & | P1_P2_normal, | ||
Mdouble | P1_P2_distance | ||
) |
Vec3D StatisticsPoint< T >::clearAveragedDirections | ( | Vec3D | P | ) |
Returns a vector where the averaged directions are zero.
double StatisticsPoint< T >::compute_Gaussian_invvolume | ( | int | dim | ) |
computes CG_invvolume if CG_type=Gaussian
Vec3D StatisticsPoint< T >::crossNonAveraged | ( | Vec3D | P, |
Vec3D & | Q | ||
) |
Returns the cross product of two vectors in the coordinates that are not averaged about.
Mdouble StatisticsPoint< T >::dotNonAveraged | ( | const Vec3D & | P, |
const Vec3D & | Q | ||
) |
Returns the dot product of two vectors in the coordinates that are not averaged about.
|
inline |
see StatisticsVector::evaluateIntegral
Definition at line 154 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::evaluatePolynomial
Definition at line 144 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::evaluatePolynomialGradient
Definition at line 149 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
Defines a division operator needed to time-average values (because the displacement does not have a value at the first timestep, this is slightly different than /=)
|
inline |
returns CG_invvolume
Definition at line 164 of file StatisticsPoint.h.
References StatisticsPoint< T >::CG_invvolume.
|
inline |
see StatisticsVector::getCGShape
Definition at line 79 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getCGWidth
Definition at line 94 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getCGWidthSquared
Definition at line 89 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getCutoff
Definition at line 99 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getCutoff2
Definition at line 104 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
Mdouble StatisticsPoint< T >::getDistanceSquaredNonAveraged | ( | const Vec3D & | P | ) |
returns the coarse graining distance in the coordinates that are not averaged about
|
inline |
see StatisticsVector::get_n
Definition at line 139 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
returns Position
Definition at line 184 of file StatisticsPoint.h.
References StatisticsPoint< T >::Position.
StatisticsPoint<T> StatisticsPoint< T >::getSquared | ( | ) |
Squares all statistical variables; needed for variance.
|
inline |
see StatisticsVector::getXMaxStat
Definition at line 109 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getXMinStat
Definition at line 124 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getYMaxStat
Definition at line 114 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getYMinStat
Definition at line 129 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getZMaxStat
Definition at line 119 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::getZMinStat
Definition at line 134 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
Matrix3D StatisticsPoint< T >::matrixCrossNonAveraged | ( | Vec3D | P, |
Matrix3D & | Q | ||
) |
Returns the cross product of two vectors in the coordinates that are not averaged about.
int StatisticsPoint< T >::nonaveragedDim | ( | ) |
|
inline |
Defines a plus operator needed to average values ( )
|
inline |
Defines a plus operator needed to calculate variance.
|
inline |
Defines a division operator needed to average values ( )
|
inline |
Defines a equal operator needed for copy constructor.
std::string StatisticsPoint< T >::print | ( | ) | const |
Outputs statistical variables in human-readable format.
std::string StatisticsPoint< T >::print_sqrt | ( | ) | const |
Outputs root of statistical variables in human-readable format.
void StatisticsPoint< T >::set_Gaussian_invvolume | ( | int | dim | ) |
sets CG_invvolume if CG_type=Gaussian
|
inlinestatic |
see StatisticsVector::setCGShape
Definition at line 69 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
void StatisticsPoint< T >::set_Heaviside_invvolume | ( | ) |
sets CG_invvolume if CG_type=HeaviSideSphere
void StatisticsPoint< T >::set_Polynomial_invvolume | ( | int | dim | ) |
sets CG_invvolume if CG_type=Polynomial
void StatisticsPoint< T >::set_zero | ( | ) |
Sets all statistical variables to zero.
void StatisticsPoint< T >::setCGInverseVolume | ( | ) |
sets CG_invvolume
|
inline |
see StatisticsVector::setCGShape
Definition at line 74 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
see StatisticsVector::setCGWidth2
Definition at line 84 of file StatisticsPoint.h.
References StatisticsPoint< T >::gb.
|
inline |
sets Position
Definition at line 179 of file StatisticsPoint.h.
References StatisticsPoint< T >::Position.
std::string StatisticsPoint< T >::write | ( | ) | const |
Outputs statistical variables in computer-readable format.
std::string StatisticsPoint< T >::write_variable_names | ( | ) |
Outputs names of statistical variables in computer-readable format.
|
friend |
Outputs statistical variables to ostream.
Mdouble StatisticsPoint< T >::CG_invvolume |
Prefactor of CG function which depends on $w.
Definition at line 311 of file StatisticsPoint.h.
Referenced by StatisticsPoint< T >::getCGInverseVolume().
Vec3D StatisticsPoint< T >::CollisionalHeatFlux |
Heat flux from collisions, .
Definition at line 298 of file StatisticsPoint.h.
Matrix3D StatisticsPoint< T >::ContactCoupleStress |
Definition at line 308 of file StatisticsPoint.h.
Mdouble StatisticsPoint< T >::Density |
Density, .
Definition at line 273 of file StatisticsPoint.h.
MatrixSymmetric3D StatisticsPoint< T >::Displacement |
Linear displacement, .
Definition at line 279 of file StatisticsPoint.h.
Vec3D StatisticsPoint< T >::DisplacementMomentum |
Momentum from linear displacement, , where , with the time intervall between outputs.
Definition at line 277 of file StatisticsPoint.h.
MatrixSymmetric3D StatisticsPoint< T >::DisplacementMomentumFlux |
Momentum flux from linear displacement, .
Definition at line 283 of file StatisticsPoint.h.
Mdouble StatisticsPoint< T >::Dissipation |
Dissipation form collisions, .
Definition at line 301 of file StatisticsPoint.h.
Vec3D StatisticsPoint< T >::EnergyFlux |
Energy flux, .
Definition at line 285 of file StatisticsPoint.h.
MatrixSymmetric3D StatisticsPoint< T >::Fabric |
Fabric tensor, .
Definition at line 295 of file StatisticsPoint.h.
|
staticprivate |
Pointer to StatisticsVector (to obtain global parameters)
Definition at line 318 of file StatisticsPoint.h.
Referenced by StatisticsPoint< T >::evaluateIntegral(), StatisticsPoint< T >::evaluatePolynomial(), StatisticsPoint< T >::evaluatePolynomialGradient(), StatisticsPoint< T >::getCGShape(), StatisticsPoint< T >::getCGWidth(), StatisticsPoint< T >::getCGWidthSquared(), StatisticsPoint< T >::getCutoff(), StatisticsPoint< T >::getCutoff2(), StatisticsPoint< T >::getN(), StatisticsPoint< T >::getXMaxStat(), StatisticsPoint< T >::getXMinStat(), StatisticsPoint< T >::getYMaxStat(), StatisticsPoint< T >::getYMinStat(), StatisticsPoint< T >::getZMaxStat(), StatisticsPoint< T >::getZMinStat(), StatisticsPoint< T >::set_gb(), StatisticsPoint< T >::setCGShape(), and StatisticsPoint< T >::setCGWidth2().
Vec3D StatisticsPoint< T >::LocalAngularMomentum |
Definition at line 306 of file StatisticsPoint.h.
Matrix3D StatisticsPoint< T >::LocalAngularMomentumFlux |
Definition at line 307 of file StatisticsPoint.h.
int StatisticsPoint< T >::mirrorParticle |
indicates that a position is a (fake) particles used for periodic walls
Definition at line 314 of file StatisticsPoint.h.
Referenced by StatisticsPoint< T >::StatisticsPoint().
Vec3D StatisticsPoint< T >::Momentum |
Momentum, .
Definition at line 275 of file StatisticsPoint.h.
MatrixSymmetric3D StatisticsPoint< T >::MomentumFlux |
Momentum flux, .
Definition at line 281 of file StatisticsPoint.h.
Matrix3D StatisticsPoint< T >::NormalStress |
Stress from normal forces, .
Definition at line 287 of file StatisticsPoint.h.
Vec3D StatisticsPoint< T >::NormalTraction |
Traction from normal forces, .
Definition at line 291 of file StatisticsPoint.h.
Mdouble StatisticsPoint< T >::Nu |
Particle volume fraction, .
Definition at line 271 of file StatisticsPoint.h.
|
private |
Position at which evaluation occurs.
Definition at line 320 of file StatisticsPoint.h.
Referenced by StatisticsPoint< T >::getPosition(), StatisticsPoint< T >::setPosition(), and StatisticsPoint< T >::StatisticsPoint().
Mdouble StatisticsPoint< T >::Potential |
Elastic energy .
Definition at line 304 of file StatisticsPoint.h.
Matrix3D StatisticsPoint< T >::TangentialStress |
Stress from tangential forces, .
Definition at line 289 of file StatisticsPoint.h.
Vec3D StatisticsPoint< T >::TangentialTraction |
Traction from tangential forces, .
Definition at line 293 of file StatisticsPoint.h.