Package hep.aida.ref

Class Histogram1D

java.lang.Object
hep.aida.ref.Histogram1D
All Implemented Interfaces:
IHistogram, IHistogram1D, Serializable

public class Histogram1D extends Object 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
Author:
Wolfgang Hoschek, Tony Johnson, and others.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected IAxis
     

    Fields inherited from interface hep.aida.IHistogram

    OVERFLOW, serialVersionUID, UNDERFLOW
  • Constructor Summary

    Constructors
    Constructor
    Description
    Histogram1D(String title, double[] edges)
    Creates a variable-width histogram.
    Histogram1D(String title, int bins, double min, double max)
    Creates a fixed-width histogram.
    Histogram1D(String title, IAxis axis)
    Creates a histogram with the given axis binning.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    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).
    int
    Returns 1 for one-dimensional histograms, 2 for two-dimensional histograms, and so on.
    int
    Number of in-range entries in the histogram.
    double
    Number of equivalent entries.
    int
    Number of under and overflow entries in the histogram.
    void
    fill(double x)
    Fill histogram with weight 1.
    void
    fill(double x, double weight)
    Fill histogram with specified weight.
    double
    Returns the mean of the whole histogram as calculated on filling-time.
    int[]
    Indexes of the in-range bins containing the smallest and largest binHeight(), respectively.
    void
    Reset contents; as if just constructed.
    double
    rms()
    Returns the rms of the whole histogram as calculated on filling-time.
    double
    Sum of all (both in-range and under/overflow) bin heights in the histogram.
    double
    Sum of in-range bin heights in the histogram.
    double
    Sum of under/overflow bin heights in the histogram.
    Title of the histogram (will be set only in the constructor).
    Returns the X Axis.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface hep.aida.IHistogram1D

    minMaxBins, xAxis
  • Field Details

    • xAxis

      protected IAxis xAxis
  • Constructor Details

    • Histogram1D

      public Histogram1D(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:
      IllegalArgumentException - if edges.length invalid input: '<' 1.
    • Histogram1D

      public Histogram1D(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(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 Details

    • 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 interface IHistogram
    • 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 interface IHistogram1D
      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 interface IHistogram1D
      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 interface IHistogram1D
      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 interface IHistogram
      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 interface IHistogram1D
    • fill

      public void fill(double x, double weight)
      Description copied from interface: IHistogram1D
      Fill histogram with specified weight.
      Specified by:
      fill in interface IHistogram1D
    • 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 interface IHistogram1D
    • reset

      public void reset()
      Description copied from interface: IHistogram
      Reset contents; as if just constructed.
      Specified by:
      reset in interface IHistogram
    • 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 interface IHistogram1D
    • dimensions

      public int dimensions()
      Description copied from interface: IHistogram
      Returns 1 for one-dimensional histograms, 2 for two-dimensional histograms, and so on.
      Specified by:
      dimensions in interface IHistogram
    • entries

      public int entries()
      Description copied from interface: IHistogram
      Number of in-range entries in the histogram.
      Specified by:
      entries in interface IHistogram
    • extraEntries

      public int extraEntries()
      Description copied from interface: IHistogram
      Number of under and overflow entries in the histogram.
      Specified by:
      extraEntries in interface IHistogram
    • minMaxBins

      public int[] minMaxBins()
      Description copied from interface: IHistogram1D
      Indexes of the in-range bins containing the smallest and largest binHeight(), respectively.
      Specified by:
      minMaxBins in interface IHistogram1D
      Returns:
      {minBin,maxBin}.
    • sumAllBinHeights

      public double sumAllBinHeights()
      Description copied from interface: IHistogram
      Sum of all (both in-range and under/overflow) bin heights in the histogram.
      Specified by:
      sumAllBinHeights in interface IHistogram
    • sumBinHeights

      public double sumBinHeights()
      Description copied from interface: IHistogram
      Sum of in-range bin heights in the histogram.
      Specified by:
      sumBinHeights in interface IHistogram
    • sumExtraBinHeights

      public double sumExtraBinHeights()
      Description copied from interface: IHistogram
      Sum of under/overflow bin heights in the histogram.
      Specified by:
      sumExtraBinHeights in interface IHistogram
    • xAxis

      public IAxis xAxis()
      Description copied from interface: IHistogram1D
      Returns the X Axis.
      Specified by:
      xAxis in interface IHistogram1D
    • title

      public String title()
      Description copied from interface: IHistogram
      Title of the histogram (will be set only in the constructor).
      Specified by:
      title in interface IHistogram