Class BernoulliStochasticLaw

  • All Implemented Interfaces:
    MathFunction, MathInversableFunction, JsonableObject

    public class BernoulliStochasticLaw
    extends StochasticLaw
    Law that representes a Bernoulli density.

    Bernoulli distribution with parameter p is defined for x=0 and x=1:
    F(x) = p.x + (1-p)(1-x) = (2p-1).x - p + 1
    This distribution returns 0 or 1 with probability (1-p) and p, respectively.

    This class uses the uniform random number distribution provider by Random.

    Since:
    13.0
    Version:
    17.0 2020-01-04 14:41:41
    Author:
    Christophe BOHRHAUER
    Maven Group Id:
    org.arakhne.afc.core
    Maven Artifact Id:
    mathstochastic
    • Constructor Detail

      • BernoulliStochasticLaw

        public BernoulliStochasticLaw​(double p)
        Construct a law with the p parameter.
        Parameters:
        p - is the probability where the value is 1
    • Method Detail

      • random

        @Pure
        public static double random​(double p)
                             throws MathException
        Replies a random value that respect the current stochastic law.
        Parameters:
        p - is the probability where the value is 1
        Returns:
        a value depending of the stochastic law parameters
        Throws:
        MathException - when error in the math definition.
      • f

        @Pure
        public double f​(double x)
                 throws MathException
        Description copied from interface: MathFunction
        Replies the value of the function.
        Parameters:
        x - the x.
        Returns:
        the value of f(x).
        Throws:
        MathException - in case f(x) could not be computed
      • getRange

        @Pure
        public MathFunctionRange[] getRange()
        Description copied from interface: MathFunction
        Replies the range of the function.
        Returns:
        a array of ranges. It corresponds to a list of couples that defined the set of valid values.
      • inverseF

        @Pure
        public double inverseF​(double u)
                        throws MathException
        Replies the x according to the value of the distribution function.
        Specified by:
        inverseF in interface MathInversableFunction
        Specified by:
        inverseF in class StochasticLaw
        Parameters:
        u - is a value given by the uniform random variable generator U(0, 1).
        Returns:
        F<sup>-1</sup>(u)
        Throws:
        MathException - in case F<sup>-1</sup>(u) could not be computed
      • toJson

        @Pure
        public void toJson​(JsonBuffer buffer)
        Description copied from interface: JsonableObject
        Replies the Json representation of this node.
        Parameters:
        buffer - the Json buffer.