lt.monarch.chart.spc.math
Class ControlValuesCalculator

java.lang.Object
  extended by lt.monarch.chart.spc.math.ValuesCalculator
      extended by lt.monarch.chart.spc.math.ControlValuesCalculator
Direct Known Subclasses:
CValuesCalculator, IMRValuesCalculator, NPValuesCalculator, PValuesCalculator, RangeValuesCalculator, SigmaValuesCalculator, UValuesCalculator, XBarValuesCalculator

public abstract class ControlValuesCalculator
extends ValuesCalculator

Base class for all control charts. Defines interface for getting LCL, UCL, center line, and measured values data models.


Field Summary
Modifier and Type Field and Description
 
Fields inherited from class lt.monarch.chart.spc.math.ValuesCalculator
nullName
 
Constructor Summary
Constructor and Description
ControlValuesCalculator()
           
 
Method Summary
Modifier and Type Method and Description
protected  double averageRange(ChartDataModel dataModel)
          Calculates chart average Range (mainly for a range chart and process sigma).
abstract  ChartDataModel getCenter(ChartDataModel dataModel)
          Calculates the center line data model (usually the average of all data)
abstract  void getCenter(ChartDataModel dataModel, ChartDataModel dstModel)
          Fill given data model with center line data.
abstract  ChartDataModel getChartLine(ChartDataModel dataModel)
          Calculates chart line data model (measurements, averages, standard deviation of sample of measurements, depending on the chart type).
abstract  void getChartLine(ChartDataModel dataModel, ChartDataModel dstModel)
          Fill given data model (measurements, averages, standard deviation of sample of measurements, depending on the chart type).
 java.lang.Object[] getLabels(ChartDataModel dataModel)
          Extracts chart x axis labels from the input data model.
abstract  ChartDataModel getLCL(ChartDataModel dataModel)
          Calculates chart lower control limit data model.
abstract  void getLCL(ChartDataModel dataModel, ChartDataModel dstModel)
          Calculates chart lower control limit data and fills given data model.
protected  int getN(ChartDataModel dataModel)
          Get sample size in the input data.
protected  double getRange(java.util.List<java.lang.Object> data)
          Calculates range in the data sample (max - min)
abstract  ChartDataModel getUCL(ChartDataModel dataModel)
          Calculates chart upper control limit data model.
abstract  void getUCL(ChartDataModel dataModel, ChartDataModel dstModel)
          Calculates chart upper control limit data and fills given data model.
 double sigmaX(ChartDataModel dataModel)
          Calculates process sigma.
 
Methods inherited from class lt.monarch.chart.spc.math.ValuesCalculator
average, fill, fill, fillColumn, fillColumn, fillConstant, fillConstant, getAverage, getc4, getColumn, getd2, getd3, getD3, getD4, getDouble, getE, getF, getG, getH, isEmpty, isNconstant, validateDataModel, validateDataModel, validateDataModel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ControlValuesCalculator

public ControlValuesCalculator()
Method Detail

getCenter

public abstract ChartDataModel getCenter(ChartDataModel dataModel)
                                  throws DataFormatException
Calculates the center line data model (usually the average of all data)

Parameters:
dataModel - input data.
Throws:
DataFormatException

getCenter

public abstract void getCenter(ChartDataModel dataModel,
                               ChartDataModel dstModel)
                        throws DataFormatException
Fill given data model with center line data.

Parameters:
dataModel - input data model.
dstModel - destination data model
Throws:
DataFormatException - when the invalid data is found.

getChartLine

public abstract ChartDataModel getChartLine(ChartDataModel dataModel)
                                     throws DataFormatException
Calculates chart line data model (measurements, averages, standard deviation of sample of measurements, depending on the chart type).

Parameters:
dataModel - input data model.
Returns:
chart line data model.
Throws:
DataFormatException - when the input data are invalid.

getChartLine

public abstract void getChartLine(ChartDataModel dataModel,
                                  ChartDataModel dstModel)
                           throws DataFormatException
Fill given data model (measurements, averages, standard deviation of sample of measurements, depending on the chart type).

Parameters:
dataModel - input data model.
dstModel - destination data model
Throws:
DataFormatException - when the invalid data is found.

getLCL

public abstract ChartDataModel getLCL(ChartDataModel dataModel)
                               throws DataFormatException
Calculates chart lower control limit data model.

Parameters:
dataModel - input data model.
Returns:
chart lower control limit data model.
Throws:
DataFormatException - when the input data are invalid.

getLCL

public abstract void getLCL(ChartDataModel dataModel,
                            ChartDataModel dstModel)
                     throws DataFormatException
Calculates chart lower control limit data and fills given data model.

Parameters:
dataModel - input data model.
dstModel - lower control limit destination data model.
Throws:
DataFormatException - when the input data are invalid.

getUCL

public abstract ChartDataModel getUCL(ChartDataModel dataModel)
                               throws DataFormatException
Calculates chart upper control limit data model.

Parameters:
dataModel - input data model.
Returns:
chart upper control limit data model.
Throws:
DataFormatException - when the input data are invalid.

getUCL

public abstract void getUCL(ChartDataModel dataModel,
                            ChartDataModel dstModel)
                     throws DataFormatException
Calculates chart upper control limit data and fills given data model.

Parameters:
dataModel - input data model.
dstModel - upper control limit destination data model.
Throws:
DataFormatException - when the input data are invalid.

getLabels

public java.lang.Object[] getLabels(ChartDataModel dataModel)
Extracts chart x axis labels from the input data model.

Parameters:
dataModel - input data model.
Returns:
chart lower control limit data model.

sigmaX

public double sigmaX(ChartDataModel dataModel)
              throws DataFormatException
Calculates process sigma. when n = constant, sigma = R/d2 when n != constant, sigma = SUM(e*R)/SUM(f) e,R,f = 1..j

Parameters:
dataModel - input data model.
Returns:
process sigma.
Throws:
DataFormatException

averageRange

protected double averageRange(ChartDataModel dataModel)
                       throws DataFormatException
Calculates chart average Range (mainly for a range chart and process sigma).

Parameters:
dataModel - input data model.
Returns:
data average rage.
Throws:
DataFormatException - when the input data are invalid.

getN

protected int getN(ChartDataModel dataModel)
Get sample size in the input data.

Parameters:
dataModel - input data.
Returns:
sample size

getRange

protected double getRange(java.util.List<java.lang.Object> data)
                   throws DataFormatException
Calculates range in the data sample (max - min)

Parameters:
data - a list of input values
Returns:
data range.
Throws:
DataFormatException - when the input data are invalid.