|
Defines the non-averaged directions on which spatial coarse-graining is applied (the x- and z-direction for XZ); all other directions are averaged
over homogeneously.
More...
#include <XZ.h>
Public Member Functions | |
void | write (std::ostream &os) const |
Writes the coordinates in human-readable form to an ostream. More... | |
Mdouble | getDistanceSquared (const Vec3D &p) const |
Returns the square of the distance between the particle p and the current CGPoint, in the non-averaged directions. More... | |
void | setXZ (Mdouble x, Mdouble z) |
Returns the position of the current CGPoint, in the non-averaged directions. More... | |
Mdouble | getINormal (const BaseInteraction &c, const Vec3D &normal) const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards I. More... | |
Mdouble | getPNormal (const BaseInteraction &c, const Vec3D &normal) const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards P. More... | |
Mdouble | getCNormal (const BaseInteraction &c, const Vec3D &normal) const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards the contact point. More... | |
Mdouble | getTangentialSquared (const BaseInteraction &c, Mdouble pNormal) const |
For the Interaction between particles/walls P and I, this function returns the square of the minimum distance between the the current CGPoint and the branch vector between P and I. More... | |
Public Member Functions inherited from CGCoordinates::BaseCoordinates | |
virtual Mdouble | getWeight () |
Static Public Member Functions | |
static void | writeNames (std::ostream &os) |
Writes the coordinate names in human-readable form to an ostream. More... | |
static Mdouble | getVolumeOfAveragedDimensions (const Vec3D &min, const Vec3D &max) |
returns the factor the CGFunction has to be divided by, due to integrating the variables over the averaged dimensions, 1.0 for XYZ. More... | |
static Mdouble | getLength (const Vec3D &p) |
Returns the length of the input vector in the non-averaged directions. More... | |
static bool | isResolvedIn (unsigned i) |
static std::string | getName () |
Static Public Member Functions inherited from CGCoordinates::Base_XY_XZ_YZ | |
static Mdouble | getGaussPrefactor (Mdouble width, Mdouble cutoff) |
Computes the prefactor of the Gauss CGFunction, which is dependent on the number of non-averaged dimensions. More... | |
static Mdouble | getGaussIntegralPrefactor (Mdouble distance, Mdouble width, Mdouble cutoff) |
Computes the prefactor of the Gauss line integral, which is dependent on the number of non-averaged dimensions. More... | |
static void | normalisePolynomialCoefficients (std::vector< Mdouble > &coefficients, Mdouble cutoff) |
Normalises the coefficients of Polynomial CGFunction such that the integral over all non-averaged dimensions is unity. More... | |
static const unsigned | countVariables () |
Static Public Member Functions inherited from CGCoordinates::BaseCoordinates | |
static Mdouble | getDomainVolume (const Vec3D &min, const Vec3D &max) |
Protected Attributes | |
Mdouble | x_ |
Mdouble | z_ |
Defines the non-averaged directions on which spatial coarse-graining is applied (the x- and z-direction for XZ); all other directions are averaged
over homogeneously.
See XYZ for details.
Mdouble XZ::getCNormal | ( | const BaseInteraction & | c, |
const Vec3D & | normal | ||
) | const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards the contact point.
References BaseInteraction::getContactPoint(), Vec3D::X, x_, Vec3D::Z, and z_.
Returns the square of the distance between the particle p and the current CGPoint, in the non-averaged directions.
References mathsFunc::square(), Vec3D::X, x_, Vec3D::Z, and z_.
Mdouble XZ::getINormal | ( | const BaseInteraction & | c, |
const Vec3D & | normal | ||
) | const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards I.
References BaseInteraction::getI(), BaseInteractable::getPosition(), Vec3D::X, x_, Vec3D::Z, and z_.
Mdouble XZ::getPNormal | ( | const BaseInteraction & | c, |
const Vec3D & | normal | ||
) | const |
For the Interaction between particles/walls P and I, this function returns the dot product between the normal vector of the interaction and the branch vector from the current CGPoint towards P.
References BaseInteraction::getP(), BaseInteractable::getPosition(), Vec3D::X, x_, Vec3D::Z, and z_.
Mdouble XZ::getTangentialSquared | ( | const BaseInteraction & | c, |
Mdouble | pNormal | ||
) | const |
For the Interaction between particles/walls P and I, this function returns the square of the minimum distance between the the current CGPoint and the branch vector between P and I.
References BaseInteraction::getP(), BaseInteractable::getPosition(), mathsFunc::square(), Vec3D::X, x_, Vec3D::Z, and z_.
|
inlinestatic |
References constants::i.
void XZ::write | ( | std::ostream & | os | ) | const |
|
static |
|
protected |
The x-position of the current CGPoint.
Referenced by getCNormal(), getDistanceSquared(), getINormal(), getPNormal(), getTangentialSquared(), setXZ(), and write().
|
protected |
The z-position of the current CGPoint.
Referenced by getCNormal(), getDistanceSquared(), getINormal(), getPNormal(), getTangentialSquared(), setXZ(), and write().