edu.ucla.stat.SOCR.distributions
Class PowerFunctionDistribution

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

public class PowerFunctionDistribution
extends Distribution

A Java implementation of the PowerFunction distribution with specified Location, Scale and Shape parameters http://www.mathwave.com/articles/power_function_distribution.html. Formulas according to: http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471371246,descCd-tableOfContents.html


Field Summary
 
Fields inherited from class edu.ucla.stat.SOCR.core.Distribution
applet, CONTINUOUS, DISCRETE, MAXMGFXVAL, MAXMGFYVAL, MINMGFXVAL, MIXED, name
 
Constructor Summary
PowerFunctionDistribution()
          Default constructor: creates a Power-Function distribution with scale and shape parameters equal to 1
PowerFunctionDistribution(double[] distData)
           
PowerFunctionDistribution(double a, double b)
           
PowerFunctionDistribution(float[] distData)
           
 
Method Summary
 double getCDF(double x)
          Compute the cumulative distribution function.
 double getDensity(double x)
          Define the PowerFunction getDensity function
 double getMaxDensity()
          Compute the maximum getDensity
 double getMean()
          Compute the mean in closed form
 double getMode()
          Compute the Mode in closed form
 java.lang.String getOnlineDescription()
          This method returns an online description of this distribution.
 double getScale()
          Get the scale paramter
 double getSD()
          Compute the variance in closed form
 double getShape()
          Get the shape parameter
 double getVariance()
          Compute the variance in closed form
 void initialize()
          used for some subclass to initialize before being used
 void paramEstimate(double[] distData)
          overwrites the method in distribution for estimating parameters By assuming that the shape parameter is known, the location and scale parameters could be easily obtained by using the maximum likelihood estimation method.
 void setParameters(double a, double b)
          Set the parameters, compute the normalizing constant NormalizingConst, and specifies the interval and partition
 void setScale(double b)
          Sets the Scale parameter
 void setShape(double a)
          Sets the Shape parameter
 void valueChanged()
           
 
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, getMean, getMedian, getMGF, getMgfDomain, getName, getPGF, getPGFDomain, getQuantile, getSampleMoment, getSOCRDistributionFunctors, getSOCRDistributions, getType, getVariance, inverseCDF, logGamma, perm, sampleMean, sampleVar, setApplet, setDomain, setDomain, setMGFDomain, setMGFDomain, setMGFParameters, setMGFParameters, setMGFParameters, setMGFParameters, setParameters, setPGFDomain, setPGFDomain, setPGFParameters, setPGFParameters, setPGFParameters, setPGFParameters, simulate, 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

PowerFunctionDistribution

public PowerFunctionDistribution()
Default constructor: creates a Power-Function distribution with scale and shape parameters equal to 1


PowerFunctionDistribution

public PowerFunctionDistribution(double a,
                                 double b)

PowerFunctionDistribution

public PowerFunctionDistribution(double[] distData)

PowerFunctionDistribution

public PowerFunctionDistribution(float[] distData)
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()
Overrides:
valueChanged in class Distribution

setParameters

public void setParameters(double a,
                          double b)
Set the parameters, compute the normalizing constant NormalizingConst, and specifies the interval and partition


setScale

public void setScale(double b)
Sets the Scale parameter


setShape

public void setShape(double a)
Sets the Shape parameter


getScale

public double getScale()
Get the scale paramter


getShape

public double getShape()
Get the shape parameter


getDensity

public double getDensity(double x)
Define the PowerFunction getDensity function

Specified by:
getDensity in class Distribution

getMaxDensity

public double getMaxDensity()
Compute the maximum getDensity

Overrides:
getMaxDensity in class Distribution

getMean

public double getMean()
Compute the mean in closed form

Overrides:
getMean in class Distribution

getMode

public double getMode()
Compute the Mode in closed form


paramEstimate

public void paramEstimate(double[] distData)
overwrites the method in distribution for estimating parameters By assuming that the shape parameter is known, the location and scale parameters could be easily obtained by using the maximum likelihood estimation method. The estimate of the shape parameter p is an open problem, so far. See this paper for an idea of how to implement a numerical scheme for estimation of the Shape parameter: http://www.jstatsoft.org/v12/i04/v12i04.pdf#search=%22%22exponential%20power%20distribution%22%20estimate%20%22shape%22%22

Overrides:
paramEstimate in class Distribution

getVariance

public double getVariance()
Compute the variance in closed form

Overrides:
getVariance in class Distribution

getSD

public double getSD()
Compute the variance in closed form

Overrides:
getSD in class Distribution

getCDF

public double getCDF(double x)
Compute the cumulative distribution function. The CDF is NOT known in closed form!!!

Overrides:
getCDF in class Distribution

getOnlineDescription

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

Overrides:
getOnlineDescription in class Distribution