## cern.jet.random Class BreitWigner

```java.lang.Object
|
+--cern.colt.PersistentObject
|
+--cern.jet.random.AbstractDistribution
|
+--cern.jet.random.AbstractContinousDistribution
|
+--cern.jet.random.BreitWigner
```
All Implemented Interfaces:
java.lang.Cloneable, cern.colt.function.DoubleFunction, cern.colt.function.IntFunction, java.io.Serializable
Direct Known Subclasses:
BreitWignerMeanSquare

public class BreitWigner
extends AbstractContinousDistribution

BreitWigner (aka Lorentz) distribution; See the math definition. A more general form of the Cauchy distribution.

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++).

Serialized Form

 Field Summary `protected  double` `cut` `protected  double` `gamma` `protected  double` `mean` `protected static BreitWigner` `shared`

 Fields inherited from class cern.jet.random.AbstractDistribution `randomGenerator`

 Constructor Summary ```BreitWigner(double mean, double gamma, double cut, RandomElement randomGenerator)```           Constructs a BreitWigner distribution.

 Method Summary ` double` `nextDouble()`           Returns a random number from the distribution. ` double` ```nextDouble(double mean, double gamma, double cut)```           Returns a random number from the distribution; bypasses the internal state. ` void` ```setState(double mean, double gamma, double cut)```           Sets the mean, gamma and cut parameters. `static double` ```staticNextDouble(double mean, double gamma, double cut)```           Returns a random number from the distribution. ` java.lang.String` `toString()`           Returns a String representation of the receiver.

 Methods inherited from class cern.jet.random.AbstractDistribution `apply, apply, clone, getRandomGenerator, makeDefaultGenerator, nextInt, setRandomGenerator`

 Methods inherited from class java.lang.Object `equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

 Field Detail

### mean

`protected double mean`

### gamma

`protected double gamma`

### cut

`protected double cut`

### shared

`protected static BreitWigner shared`
 Constructor Detail

### BreitWigner

```public BreitWigner(double mean,
double gamma,
double cut,
RandomElement randomGenerator)```
Constructs a BreitWigner distribution.

Parameters:
`cut` - cut==Double.NEGATIVE_INFINITY indicates "don't cut".
 Method Detail

### nextDouble

`public double nextDouble()`
Returns a random number from the distribution.

Specified by:
`nextDouble` in class `AbstractDistribution`

### nextDouble

```public double nextDouble(double mean,
double gamma,
double cut)```
Returns a random number from the distribution; bypasses the internal state.

Parameters:
`cut` - cut==Double.NEGATIVE_INFINITY indicates "don't cut".

### setState

```public void setState(double mean,
double gamma,
double cut)```
Sets the mean, gamma and cut parameters.

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".

### toString

`public java.lang.String toString()`
Returns a String representation of the receiver.

Overrides:
`toString` in class `java.lang.Object`