Class CauchyDistributionImpl

    • Field Detail

      • DEFAULT_INVERSE_ABSOLUTE_ACCURACY

        public static final double DEFAULT_INVERSE_ABSOLUTE_ACCURACY
        Default inverse cumulative probability accuracy
        Since:
        2.1
        See Also:
        Constant Field Values
    • Constructor Detail

      • CauchyDistributionImpl

        public CauchyDistributionImpl()
        Creates cauchy distribution with the medain equal to zero and scale equal to one.
      • CauchyDistributionImpl

        public CauchyDistributionImpl​(double median,
                                      double s)
        Create a cauchy distribution using the given median and scale.
        Parameters:
        median - median for this distribution
        s - scale parameter for this distribution
      • CauchyDistributionImpl

        public CauchyDistributionImpl​(double median,
                                      double s,
                                      double inverseCumAccuracy)
        Create a cauchy distribution using the given median and scale.
        Parameters:
        median - median for this distribution
        s - scale parameter for this distribution
        inverseCumAccuracy - the maximum absolute error in inverse cumulative probability estimates (defaults to DEFAULT_INVERSE_ABSOLUTE_ACCURACY)
        Since:
        2.1
    • Method Detail

      • cumulativeProbability

        public double cumulativeProbability​(double x)
        For this distribution, X, this method returns P(X < x).
        Specified by:
        cumulativeProbability in interface Distribution
        Parameters:
        x - the value at which the CDF is evaluated.
        Returns:
        CDF evaluated at x.
      • getMedian

        public double getMedian()
        Access the median.
        Specified by:
        getMedian in interface CauchyDistribution
        Returns:
        median for this distribution
      • getScale

        public double getScale()
        Access the scale parameter.
        Specified by:
        getScale in interface CauchyDistribution
        Returns:
        scale parameter for this distribution
      • density

        public double density​(double x)
        Returns the probability density for a particular point.
        Overrides:
        density in class AbstractContinuousDistribution
        Parameters:
        x - The point at which the density should be computed.
        Returns:
        The pdf at point x.
        Since:
        2.1
      • inverseCumulativeProbability

        public double inverseCumulativeProbability​(double p)
        For this distribution, X, this method returns the critical point x, such that P(X < x) = p.

        Returns Double.NEGATIVE_INFINITY for p=0 and Double.POSITIVE_INFINITY for p=1.

        Specified by:
        inverseCumulativeProbability in interface ContinuousDistribution
        Overrides:
        inverseCumulativeProbability in class AbstractContinuousDistribution
        Parameters:
        p - the desired probability
        Returns:
        x, such that P(X < x) = p
        Throws:
        java.lang.IllegalArgumentException - if p is not a valid probability.
      • setMedian

        @Deprecated
        public void setMedian​(double median)
        Deprecated.
        as of 2.1 (class will become immutable in 3.0)
        Modify the median.
        Specified by:
        setMedian in interface CauchyDistribution
        Parameters:
        median - for this distribution
      • setScale

        @Deprecated
        public void setScale​(double s)
        Deprecated.
        as of 2.1 (class will become immutable in 3.0)
        Modify the scale parameter.
        Specified by:
        setScale in interface CauchyDistribution
        Parameters:
        s - scale parameter for this distribution
        Throws:
        java.lang.IllegalArgumentException - if sd is not positive.
      • getDomainLowerBound

        protected double getDomainLowerBound​(double p)
        Access the domain value lower bound, based on p, used to bracket a CDF root. This method is used by inverseCumulativeProbability(double) to find critical values.
        Specified by:
        getDomainLowerBound in class AbstractContinuousDistribution
        Parameters:
        p - the desired probability for the critical value
        Returns:
        domain value lower bound, i.e. P(X < lower bound) < p
      • getDomainUpperBound

        protected double getDomainUpperBound​(double p)
        Access the domain value upper bound, based on p, used to bracket a CDF root. This method is used by inverseCumulativeProbability(double) to find critical values.
        Specified by:
        getDomainUpperBound in class AbstractContinuousDistribution
        Parameters:
        p - the desired probability for the critical value
        Returns:
        domain value upper bound, i.e. P(X < upper bound) > p
      • getSolverAbsoluteAccuracy

        protected double getSolverAbsoluteAccuracy()
        Return the absolute accuracy setting of the solver used to estimate inverse cumulative probabilities.
        Overrides:
        getSolverAbsoluteAccuracy in class AbstractContinuousDistribution
        Returns:
        the solver absolute accuracy
        Since:
        2.1
      • getSupportLowerBound

        public double getSupportLowerBound()
        Returns the lower bound of the support for this distribution. The lower bound of the support of the Cauchy distribution is always negative infinity, regardless of the parameters.
        Returns:
        lower bound of the support (always Double.NEGATIVE_INFINITY)
        Since:
        2.2
      • getSupportUpperBound

        public double getSupportUpperBound()
        Returns the upper bound of the support for this distribution. The upper bound of the support of the Cauchy distribution is always positive infinity, regardless of the parameters.
        Returns:
        upper bound of the support (always Double.POSITIVE_INFINITY)
        Since:
        2.2
      • getNumericalMean

        public double getNumericalMean()
        Returns the mean. The mean is always undefined, regardless of the parameters.
        Returns:
        mean (always Double.NaN)
        Since:
        2.2
      • getNumericalVariance

        public double getNumericalVariance()
        Returns the variance. The variance is always undefined, regardless of the parameters.
        Returns:
        variance (always Double.NaN)
        Since:
        2.2