de.cesr.more.util.distributions
Class MPascalDistribution

java.lang.Object
  extended by AbstractIntegerDistribution
      extended by de.cesr.more.util.distributions.MPascalDistribution
All Implemented Interfaces:
MIntegerDistribution

public class MPascalDistribution
extends AbstractIntegerDistribution
implements MIntegerDistribution

MORe Wrapper for PascalDistribution (also known as negative binomial distribution) to be used in e.g. MGeoRsHomophilyDistanceFfNetworkService.

Date:
14.09.2013

Nested Class Summary
static class MPascalDistribution.MPascalDistributionParam
           
 
Constructor Summary
MPascalDistribution(RandomGenerator rng)
           
 
Method Summary
 double cumulativeProbability(int x)
           
 double cumulativeProbability(int x0, int x1)
           
 double getNumericalMean()
           
 double getNumericalVariance()
           
 int getSupportLowerBound()
           
 int getSupportUpperBound()
           
 void init()
          Initialises the distribution.
 boolean isSupportConnected()
           
 double probability(int x)
           
 void setParameter(MDistributionParameter param, double value)
          Set distribution specific parameters that are defined by a distribution specific enumeration that implements MDistributionParameter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MPascalDistribution

public MPascalDistribution(RandomGenerator rng)
                    throws NotStrictlyPositiveException,
                           OutOfRangeException
Parameters:
rng -
r -
p -
Throws:
NotStrictlyPositiveException
OutOfRangeException
Method Detail

setParameter

public void setParameter(MDistributionParameter param,
                         double value)
Description copied from interface: MIntegerDistribution
Set distribution specific parameters that are defined by a distribution specific enumeration that implements MDistributionParameter.

Specified by:
setParameter in interface MIntegerDistribution
See Also:
MRealDistribution.setParameter(de.cesr.more.util.distributions.MDistributionParameter, double)

init

public void init()
Description copied from interface: MIntegerDistribution
Initialises the distribution. Parameters need to be set before via MIntegerDistribution.setParameter(MDistributionParameter, double)!

Specified by:
init in interface MIntegerDistribution
See Also:
MRealDistribution.init()

probability

public double probability(int x)
See Also:
org.apache.commons.math3.distribution.PascalDistribution#probability(int)

cumulativeProbability

public double cumulativeProbability(int x0,
                                    int x1)
                             throws NumberIsTooLargeException
Throws:
NumberIsTooLargeException
See Also:
org.apache.commons.math3.distribution.AbstractIntegerDistribution#cumulativeProbability(int, int)

isSupportConnected

public boolean isSupportConnected()
See Also:
org.apache.commons.math3.distribution.PascalDistribution#isSupportConnected()

cumulativeProbability

public double cumulativeProbability(int x)
See Also:
org.apache.commons.math3.distribution.PascalDistribution#cumulativeProbability(int)

getNumericalMean

public double getNumericalMean()
See Also:
org.apache.commons.math3.distribution.IntegerDistribution#getNumericalMean()

getNumericalVariance

public double getNumericalVariance()
See Also:
org.apache.commons.math3.distribution.IntegerDistribution#getNumericalVariance()

getSupportLowerBound

public int getSupportLowerBound()
See Also:
org.apache.commons.math3.distribution.IntegerDistribution#getSupportLowerBound()

getSupportUpperBound

public int getSupportUpperBound()
See Also:
org.apache.commons.math3.distribution.IntegerDistribution#getSupportUpperBound()