chrono::ChContinuumDistribution Class Reference

## Description

Class that can be used to generate sample numbers according to a probability distribution.

Probability distribution is defined with x,y points, at least a dozen of pairs to be more precise in the reconstruction of probability. It uses the "Smirnov transform" (inverse probability integral transform)

#include <ChDistribution.h>

Inheritance diagram for chrono::ChContinuumDistribution:
Collaboration diagram for chrono::ChContinuumDistribution:

## Public Member Functions

ChContinuumDistribution (ChMatrix<> &mx, ChMatrix<> &my)
Create an object that can be used to generate sample numbers according to a generic probability distribution. More...

virtual double GetRandom ()
Compute a random value whose probability is the probability curve that has been entered with x,y points during the creation of this object. More...

ChMatrixGetProbabilityXpoints ()

ChMatrixGetProbabilityYpoints ()

ChMatrixGetProbabilityCDFcumulativeX ()

ChMatrixGetProbabilityCDFcumulativeY ()

Public Member Functions inherited from chrono::ChDistribution
virtual ~ChDistribution ()
Default destructor for distribution object.

## Constructor & Destructor Documentation

 chrono::ChContinuumDistribution::ChContinuumDistribution ( ChMatrix<> & mx, ChMatrix<> & my )

Create an object that can be used to generate sample numbers according to a generic probability distribution.

The probability distribution is a curve represented by simplified x,y pairs of points. The integral of the probability curve must be unit, i.e normalized (but if not, a normalization will be enforced) Note: too few points means approximate results, but too many points might give a small performance overhead when calling GetRandom().

## Member Function Documentation

 virtual double chrono::ChContinuumDistribution::GetRandom ( )
virtual

Compute a random value whose probability is the probability curve that has been entered with x,y points during the creation of this object.

Implements chrono::ChDistribution.