## edu.ucla.stat.SOCR.distributions Class JohnsonSUDistribution

```java.lang.Object
edu.ucla.stat.SOCR.core.SOCRValueSettable
edu.ucla.stat.SOCR.core.Distribution
edu.ucla.stat.SOCR.distributions.JohnsonSUDistribution
```
All Implemented Interfaces:
IValueSettable, Pluginable, java.util.Observer

`public class JohnsonSUDistributionextends Distribution`

This class models the Johnson SU (Special Unbounded) distribution with specified first 4 parameters (mean, SD, skewness, kurtosis): The Johnson family of distributions (N.L. Johnson, 1949), is a versatile model distribution. It is based on a transformation of the standard normal variable, and includes 4 forms: 1. Unbounded: the set of distributions that go to infinity in both the upper or lower tail. 2. Bounded: the set of distributions that have a fixed boundary on either the upper or lower tail, or both. 3. Log Normal: a border between the Unbounded and Bounded distribution forms. 4. Normal: a special case of the Unbounded form. The flexibility of Johnson family of distributions comes from the choice of form and fitting parameters which allows better fits data. The Johnson family involves a transformation of the raw variable to a Normal variable. This facilitates the estimates of the percentiles of the fitted distribution to be calculated from the Normal distribution percentiles. http://www.qualityamerica.com/knowledgecente/knowctrBest_Fit_Johnson.htm http://www.mathwave.com/articles/johnson_su_distribution.html

Field Summary

Fields inherited from class edu.ucla.stat.SOCR.core.Distribution
`applet, CONTINUOUS, DISCRETE, MAXMGFXVAL, MAXMGFYVAL, MINMGFXVAL, MIXED, name`

Constructor Summary
`JohnsonSUDistribution()`
Default constructor: creates a beta distribution with xi and lambda parameters equal to 1
```JohnsonSUDistribution(double _xi, double _lambda, double _gamma, double _delta)```
This general constructor creates a new JohnsonSBDistribution distribution with specified parameters

Method Summary
` double` `getCDF(double x)`
This method computes the cumulative distribution function
` double` `getDelta()`
Get delta
` double` `getDensity(double x)`
Define the beta getDensity function
` double` `getGamma()`
Get gamma
` double` `getLambda()`
Get lambda
` double` `getMean()`
This method returns the Johnson SU mean http://www.mathwave.com/articles/johnson_su_distribution.html
` java.lang.String` `getOnlineDescription()`
This method returns an online description of this distribution.
` double[]` `getParameters()`
This method gets the 4 parameters
` double` `getSD()`
This method returns the Johnson SU SD http://www.mathwave.com/articles/johnson_su_distribution.html
` double` `getVariance()`
This method returns the Johnson SU Variance http://www.mathwave.com/articles/johnson_su_distribution.html
` double` `getXi()`

` void` `initialize()`
used for some subclass to initialize before being used
` double` `inverseCDF(double probability)`
Computes the inverse Johnson SU CDF function
` void` `setDelta(double _delta)`
This method sets Kurtosis
` void` `setGamma(double _gamma)`
This method sets skewness
` void` `setLambda(double _lambda)`
This method sets sigma
` void` ```setParameters(double _xi, double _lambda, double _gamma, double _delta)```
This method sets the parameters, computes the default interval
` void` `setXi(double _xi)`
This method sets mean
` double` `simulate()`
This method simulates a value from the distribution
` void` ```valueChanged(java.util.Observable o, java.lang.Object arg)```

Methods inherited from class edu.ucla.stat.SOCR.core.Distribution
`addObserver, betaCDF, comb, factorial, findGFRoot, findRoot, gamma, gammaCDF, getDisplayPane, getDomain, getFailureRate, getGFDerivative, getGFSecondDerivative, getInstance, getLocalHelp, getMaxDensity, getMean, getMedian, getMGF, getMgfDomain, getName, getPGF, getPGFDomain, getQuantile, getSampleMoment, getSOCRDistributionFunctors, getSOCRDistributions, getType, getVariance, logGamma, paramEstimate, perm, sampleMean, sampleVar, setApplet, setDomain, setDomain, setMGFDomain, setMGFDomain, setMGFParameters, setMGFParameters, setMGFParameters, setMGFParameters, setParameters, setPGFDomain, setPGFDomain, setPGFParameters, setPGFParameters, setPGFParameters, setPGFParameters, update, valueChanged`

Methods inherited from class edu.ucla.stat.SOCR.core.SOCRValueSettable
`createComponentSetter, createValueSetter, createValueSetter, createValueSetter, createValueSetter, getComponentSetter, getComponentSetters, getValueSetter, getValueSetters`

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

Constructor Detail

### JohnsonSUDistribution

```public JohnsonSUDistribution(double _xi,
double _lambda,
double _gamma,
double _delta)```
This general constructor creates a new JohnsonSBDistribution distribution with specified parameters

Parameters:
`xi` - = location mean
`lambda` - = scale SD
`gamma` - = shape skewness
`delta` - = shape kurtosis

### JohnsonSUDistribution

`public JohnsonSUDistribution()`
Default constructor: creates a beta distribution with xi and lambda parameters equal to 1

Method Detail

### initialize

`public void initialize()`
Description copied from class: `Distribution`
used for some subclass to initialize before being used

Overrides:
`initialize` in class `Distribution`

### valueChanged

```public void valueChanged(java.util.Observable o,
java.lang.Object arg)```
Overrides:
`valueChanged` in class `Distribution`

### setParameters

```public void setParameters(double _xi,
double _lambda,
double _gamma,
double _delta)```
This method sets the parameters, computes the default interval

Parameters:
`_xi` - = location
`_lambda` - = scale
`_gamma` - = shape
`_delta` - = shape

### getParameters

`public double[] getParameters()`
This method gets the 4 parameters

### getXi

`public double getXi()`

### setXi

`public void setXi(double _xi)`
This method sets mean

### getLambda

`public double getLambda()`
Get lambda

### setLambda

`public void setLambda(double _lambda)`
This method sets sigma

### getGamma

`public double getGamma()`
Get gamma

### setGamma

`public void setGamma(double _gamma)`
This method sets skewness

### getDelta

`public double getDelta()`
Get delta

### setDelta

`public void setDelta(double _delta)`
This method sets Kurtosis

### getDensity

`public double getDensity(double x)`
Define the beta getDensity function

Specified by:
`getDensity` in class `Distribution`

### getCDF

`public double getCDF(double x)`
This method computes the cumulative distribution function

Overrides:
`getCDF` in class `Distribution`
Parameters:
`x` - = value to evaluate the CDF at http://www.mathwave.com/articles/johnson_su_distribution.html

### inverseCDF

`public double inverseCDF(double probability)`
Computes the inverse Johnson SU CDF function

Overrides:
`inverseCDF` in class `Distribution`
Parameters:
`probability` - - a probability value in [0, 1]
Returns:
the value X for which P(X)==P(x < X) = probability.

### simulate

`public double simulate()`
This method simulates a value from the distribution

Overrides:
`simulate` in class `Distribution`

### getMean

`public double getMean()`
This method returns the Johnson SU mean http://www.mathwave.com/articles/johnson_su_distribution.html

Overrides:
`getMean` in class `Distribution`

### getVariance

`public double getVariance()`
This method returns the Johnson SU Variance http://www.mathwave.com/articles/johnson_su_distribution.html

Overrides:
`getVariance` in class `Distribution`

### getSD

`public double getSD()`
This method returns the Johnson SU SD http://www.mathwave.com/articles/johnson_su_distribution.html

Overrides:
`getSD` in class `Distribution`

### getOnlineDescription

`public java.lang.String getOnlineDescription()`
This method returns an online description of this distribution.

Overrides:
`getOnlineDescription` in class `Distribution`