Package hep.aida.ref
Class Histogram1D
- java.lang.Object
-
- hep.aida.ref.Histogram
-
- hep.aida.ref.AbstractHistogram1D
-
- hep.aida.ref.Histogram1D
-
- All Implemented Interfaces:
IHistogram
,IHistogram1D
,java.io.Serializable
public class Histogram1D extends AbstractHistogram1D implements IHistogram1D
A reference implementation of hep.aida.IHistogram1D. The goal is to provide a clear implementation rather than the most efficient implementation. However, performance seems fine - filling 1.2 * 10^6 points/sec, both using FixedAxis or VariableAxis.- Version:
- 1.0, 23/03/2000
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private int[]
entries
private double[]
errors
private double[]
heights
private double
mean
private int
nEntry
private double
rms
private double
sumWeight
private double
sumWeightSquared
-
Fields inherited from class hep.aida.ref.AbstractHistogram1D
xAxis
-
Fields inherited from interface hep.aida.IHistogram
OVERFLOW, serialVersionUID, UNDERFLOW
-
-
Constructor Summary
Constructors Constructor Description Histogram1D(java.lang.String title, double[] edges)
Creates a variable-width histogram.Histogram1D(java.lang.String title, int bins, double min, double max)
Creates a fixed-width histogram.Histogram1D(java.lang.String title, IAxis axis)
Creates a histogram with the given axis binning.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
allEntries()
Number of all entries in all (both in-range and under/overflow) bins in the histogram.int
binEntries(int index)
Number of entries in the corresponding bin (ie the number of times fill was called for this bin).double
binError(int index)
The error on this bin.double
binHeight(int index)
Total height of the corresponding bin (ie the sum of the weights in this bin).double
equivalentBinEntries()
Number of equivalent entries.void
fill(double x)
Fill histogram with weight 1.void
fill(double x, double weight)
Fill histogram with specified weight.double
mean()
Returns the mean of the whole histogram as calculated on filling-time.void
reset()
Reset contents; as if just constructed.double
rms()
Returns the rms of the whole histogram as calculated on filling-time.(package private) void
setContents(int[] entries, double[] heights, double[] errors)
Used internally for creating slices and projections-
Methods inherited from class hep.aida.ref.AbstractHistogram1D
dimensions, entries, extraEntries, map, minMaxBins, sumAllBinHeights, sumBinHeights, sumExtraBinHeights, xAxis
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface hep.aida.IHistogram
dimensions, entries, extraEntries, sumAllBinHeights, sumBinHeights, sumExtraBinHeights, title
-
Methods inherited from interface hep.aida.IHistogram1D
minMaxBins, xAxis
-
-
-
-
Constructor Detail
-
Histogram1D
public Histogram1D(java.lang.String title, double[] edges)
Creates a variable-width histogram. Example: edges = (0.2, 1.0, 5.0) yields an axis with 2 in-range bins [0.2,1.0), [1.0,5.0) and 2 extra bins [-inf,0.2), [5.0,inf].- Parameters:
title
- The histogram title.edges
- the bin boundaries the axis shall have; must be sorted ascending and must not contain multiple identical elements.- Throws:
java.lang.IllegalArgumentException
- if edges.length < 1.
-
Histogram1D
public Histogram1D(java.lang.String title, int bins, double min, double max)
Creates a fixed-width histogram.- Parameters:
title
- The histogram title.bins
- The number of bins.min
- The minimum value on the X axis.max
- The maximum value on the X axis.
-
Histogram1D
public Histogram1D(java.lang.String title, IAxis axis)
Creates a histogram with the given axis binning.- Parameters:
title
- The histogram title.axis
- The axis description to be used for binning.
-
-
Method Detail
-
allEntries
public int allEntries()
Description copied from interface:IHistogram
Number of all entries in all (both in-range and under/overflow) bins in the histogram.- Specified by:
allEntries
in interfaceIHistogram
- Overrides:
allEntries
in classAbstractHistogram1D
-
binEntries
public int binEntries(int index)
Description copied from interface:IHistogram1D
Number of entries in the corresponding bin (ie the number of times fill was called for this bin).- Specified by:
binEntries
in interfaceIHistogram1D
- Parameters:
index
- the bin number (0...N-1) or OVERFLOW or UNDERFLOW.
-
binError
public double binError(int index)
Description copied from interface:IHistogram1D
The error on this bin.- Specified by:
binError
in interfaceIHistogram1D
- Parameters:
index
- the bin number (0...N-1) or OVERFLOW or UNDERFLOW.
-
binHeight
public double binHeight(int index)
Description copied from interface:IHistogram1D
Total height of the corresponding bin (ie the sum of the weights in this bin).- Specified by:
binHeight
in interfaceIHistogram1D
- Parameters:
index
- the bin number (0...N-1) or OVERFLOW or UNDERFLOW.
-
equivalentBinEntries
public double equivalentBinEntries()
Description copied from interface:IHistogram
Number of equivalent entries.- Specified by:
equivalentBinEntries
in interfaceIHistogram
- Returns:
- SUM[ weight ] ^ 2 / SUM[ weight^2 ].
-
fill
public void fill(double x)
Description copied from interface:IHistogram1D
Fill histogram with weight 1.- Specified by:
fill
in interfaceIHistogram1D
-
fill
public void fill(double x, double weight)
Description copied from interface:IHistogram1D
Fill histogram with specified weight.- Specified by:
fill
in interfaceIHistogram1D
-
mean
public double mean()
Description copied from interface:IHistogram1D
Returns the mean of the whole histogram as calculated on filling-time.- Specified by:
mean
in interfaceIHistogram1D
-
reset
public void reset()
Description copied from interface:IHistogram
Reset contents; as if just constructed.- Specified by:
reset
in interfaceIHistogram
-
rms
public double rms()
Description copied from interface:IHistogram1D
Returns the rms of the whole histogram as calculated on filling-time.- Specified by:
rms
in interfaceIHistogram1D
-
setContents
void setContents(int[] entries, double[] heights, double[] errors)
Used internally for creating slices and projections
-
-