StaticBin1D
cern.hep.aida.bin

Class StaticBin1D

  • All Implemented Interfaces:
    DoubleBufferConsumer, Serializable, Cloneable
    Direct Known Subclasses:
    MightyStaticBin1D


    public class StaticBin1Dextends AbstractBin1D
    1-dimensional non-rebinnable bin consuming double elements; Efficiently computes basic statistics of data sequences. First see the package summary and javadoc tree view to get the broad picture.

    The data streamed into a SimpleBin1D is not preserved! As a consequence infinitely many elements can be added to this bin. As a further consequence this bin cannot compute more than basic statistics. It is also not rebinnable. If these drawbacks matter, consider to use a DynamicBin1D, which overcomes them at the expense of increased memory requirements.

    This class is fully thread safe (all public methods are synchronized). Thus, you can have one or more threads adding to the bin as well as one or more threads reading and viewing the statistics of the bin while it is filled. For high performance, add data in large chunks (buffers) via method addAllOf rather than piecewise via method add.

    Implementation: Incremental maintainance. Performance linear in the number of elements added.

    See Also:
    Serialized Form
    • Constructor Detail

      • StaticBin1D

        public StaticBin1D()
        Constructs and returns an empty bin.
    • Method Detail

      • add

        public void add(double element)
        Adds the specified element to the receiver.
        Specified by:
        add in class AbstractBin1D
        Parameters:
        element - element to be appended.
      • addAllOfFromTo

        public void addAllOfFromTo(DoubleArrayList list,                  int from,                  int to)
        Adds the part of the specified list between indexes from (inclusive) and to (inclusive) to the receiver.
        Overrides:
        addAllOfFromTo in class AbstractBin1D
        Parameters:
        list - the list of which elements shall be added.
        from - the index of the first element to be added (inclusive).
        to - the index of the last element to be added (inclusive).
        Throws:
        IndexOutOfBoundsException - if list.size()>0 && (from<0 || from>to || to>=list.size()).
      • clear

        public void clear()
        Removes all elements from the receiver. The receiver will be empty after this call returns.
        Specified by:
        clear in class AbstractBin
      • isRebinnable

        public boolean isRebinnable()
        Returns false. Returns whether a client can obtain all elements added to the receiver. In other words, tells whether the receiver internally preserves all added elements. If the receiver is rebinnable, the elements can be obtained via elements() methods.
        Specified by:
        isRebinnable in class AbstractBin
      • max

        public double max()
        Returns the maximum.
        Specified by:
        max in class AbstractBin1D
      • min

        public double min()
        Returns the minimum.
        Specified by:
        min in class AbstractBin1D
      • size

        public int size()
        Returns the number of elements contained in the receiver.
        Specified by:
        size in class AbstractBin
      • sum

        public double sum()
        Returns the sum of all elements, which is Sum( x[i] ).
        Specified by:
        sum in class AbstractBin1D
      • sumOfSquares

        public double sumOfSquares()
        Returns the sum of squares, which is Sum( x[i] * x[i] ).
        Specified by:
        sumOfSquares in class AbstractBin1D

SCaVis 2.1 © jWork.ORG