struct walberla::pe::Thresholds< Type >
Collection of numerical threshold values.
The Thresholds class defines numerical floating point thresholds for the pe module. The following thresholds can be used:
- collisionThreshold: This threshold is used for the contact classification. It is used to separate between separating, resting and colliding contacts.
- contactThreshold: This threshold is used to tell whether two rigid bodies are in contact or not. If the distance between two bodies is smaller than this threshold, they are considered to be in contact with each other.
- restitutionThreshold: In case the relative velocity between two colliding rigid bodies is smaller than this threshold, a coefficient of restitution of 0 is used to avoid an infinite number of collisions during a single time step.
- frictionThreshold: This threshold represents the boundary between static and dynamic friction. In case the relative tangential velocity of two contacting rigid bodies is smaller than this threshold, static friction is applied, else dynamic friction is used.
- surfaceThreshold: This threshold is used for surface checks. Only points with a distance to the surface smaller than this threshold are considered surface point.
- parallelThreshold: This threshold is used for parallelism checks. If the scalar product of two vectors is smaller than this threshold the vectors are considered to be parallel.
The Thresholds class is used in the following manner:
const double acc = Thresholds<double>::accuracy();
Note: The Thresholds class is not defined for integral data types.