Package hep.aida.ref
Class VariableAxis
java.lang.Object
hep.aida.ref.VariableAxis
- All Implemented Interfaces:
IAxis
,Serializable
Variable-width axis; A reference implementation of hep.aida.IAxis.
- Version:
- 1.0, 23/03/2000
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected int
protected double[]
protected double
Fields inherited from interface hep.aida.IAxis
serialVersionUID
-
Constructor Summary
ConstructorsConstructorDescriptionVariableAxis
(double[] edges) Constructs and returns an axis with the given bin edges. -
Method Summary
Modifier and TypeMethodDescriptiondouble
binCentre
(int index) Centre of the bin specified.double
binLowerEdge
(int index) Lower edge of the specified bin.int
bins()
The number of bins (excluding underflow and overflow) on the axis.double
binUpperEdge
(int index) Upper edge of the specified bin.double
binWidth
(int index) Width of the bin specified.int
coordToIndex
(double coord) Converts a coordinate on the axis to a bin number.double
Lower axis edge.protected static String
toString
(double[] array) Returns a string representation of the specified array.double
Upper axis edge.
-
Field Details
-
min
protected double min -
bins
protected int bins -
edges
protected double[] edges
-
-
Constructor Details
-
VariableAxis
public VariableAxis(double[] edges) Constructs and returns an axis with the given bin edges. 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:
edges
- the bin boundaries the partition shall have; must be sorted ascending and must not contain multiple identical elements.- Throws:
IllegalArgumentException
- if edges.length invalid input: '<' 1.
-
-
Method Details
-
binCentre
public double binCentre(int index) Description copied from interface:IAxis
Centre of the bin specified. -
binLowerEdge
public double binLowerEdge(int index) Description copied from interface:IAxis
Lower edge of the specified bin.- Specified by:
binLowerEdge
in interfaceIAxis
- Parameters:
index
- Bin number (0...bins()-1) or OVERFLOW or UNDERFLOW.- Returns:
- the lower edge of the bin; for the underflow bin this is Double.NEGATIVE_INFINITY.
-
bins
public int bins()Description copied from interface:IAxis
The number of bins (excluding underflow and overflow) on the axis. -
binUpperEdge
public double binUpperEdge(int index) Description copied from interface:IAxis
Upper edge of the specified bin.- Specified by:
binUpperEdge
in interfaceIAxis
- Parameters:
index
- Bin number (0...bins()-1) or OVERFLOW or UNDERFLOW.- Returns:
- the upper edge of the bin; for the overflow bin this is Double.POSITIVE_INFINITY.
-
binWidth
public double binWidth(int index) Description copied from interface:IAxis
Width of the bin specified. -
coordToIndex
public int coordToIndex(double coord) Description copied from interface:IAxis
Converts a coordinate on the axis to a bin number. If the coordinate is invalid input: '<' lowerEdge returns UNDERFLOW, and if the coordinate is >= upperEdge returns OVERFLOW.- Specified by:
coordToIndex
in interfaceIAxis
-
lowerEdge
public double lowerEdge()Description copied from interface:IAxis
Lower axis edge. -
toString
Returns a string representation of the specified array. The string representation consists of a list of the arrays's elements, enclosed in square brackets ("[]"). Adjacent elements are separated by the characters ", " (comma and space).- Returns:
- a string representation of the specified array.
-
upperEdge
public double upperEdge()Description copied from interface:IAxis
Upper axis edge.
-