Class BreitWignerMeanSquare

  • All Implemented Interfaces:
    DoubleFunction, IntFunction, java.io.Serializable, java.lang.Cloneable

    public class BreitWignerMeanSquare
    extends BreitWigner
    Mean-square BreitWigner distribution; See the math definition.

    Instance methods operate on a user supplied uniform random number generator; they are unsynchronized.

    Static methods operate on a default uniform random number generator; they are synchronized.

    Implementation: This is a port of RandBreitWigner used in CLHEP 1.4.0 (C++).

    Version:
    1.0, 09/24/99
    See Also:
    Serialized Form
    • Constructor Detail

      • BreitWignerMeanSquare

        public BreitWignerMeanSquare​(double mean,
                                     double gamma,
                                     double cut,
                                     RandomEngine randomGenerator)
        Constructs a mean-squared BreitWigner distribution.
        Parameters:
        cut - cut==Double.NEGATIVE_INFINITY indicates "don't cut".
    • Method Detail

      • clone

        public java.lang.Object clone()
        Returns a deep copy of the receiver; the copy will produce identical sequences. After this call has returned, the copy and the receiver have equal but separate state.
        Overrides:
        clone in class AbstractDistribution
        Returns:
        a copy of the receiver.
      • nextDouble

        public double nextDouble​(double mean,
                                 double gamma,
                                 double cut)
        Returns a mean-squared random number from the distribution; bypasses the internal state.
        Overrides:
        nextDouble in class BreitWigner
        Parameters:
        cut - cut==Double.NEGATIVE_INFINITY indicates "don't cut".
      • staticNextDouble

        public static double staticNextDouble​(double mean,
                                              double gamma,
                                              double cut)
        Returns a random number from the distribution.
        Parameters:
        cut - cut==Double.NEGATIVE_INFINITY indicates "don't cut".
      • xstaticSetRandomGenerator

        private static void xstaticSetRandomGenerator​(RandomEngine randomGenerator)
        Sets the uniform random number generated shared by all static methods.
        Parameters:
        randomGenerator - the new uniform random number generator to be shared.