Package io.github.hakkelt.ndarrays
Class NDArrayUtils
- java.lang.Object
 - 
- io.github.hakkelt.ndarrays.NDArrayUtils
 
 
- 
public class NDArrayUtils extends Object
Utility class to help conversion between linear indexing and Cartesian indexing, and ease checks against "out of bounds" and "incompatible shape" errors. 
- 
- 
Field Summary
Fields Modifier and Type Field Description static intPARALLEL_STREAM_THRESHOLD 
- 
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static voidboundaryCheck(int[] indices, int[] shape)static voidboundaryCheck(int linearIndex, int length)static intcalculateLength(int[] shape)static int[]calculateMultipliers(int[] shape)static intcartesianIndicesToLinearIndex(int[] indices, int[] multipliers)static voidcheckDTypeCompatibility(NDArray<?> me, Object array)static voidcheckShapeCompatibility(NDArray<?> me, int[] arrayDims)static int[]computeDims(Object[] input)static Class<?>getDType(Object array)static int[]getEndCartesianIndex(int[] shape)static int[]linearIndexToCartesianIndices(int linearIndex, int[] multipliers)static int[]unwrap(int[] indices, int[] shape)static intunwrap(int linearIndex, int length) 
 - 
 
- 
- 
Field Detail
- 
PARALLEL_STREAM_THRESHOLD
public static final int PARALLEL_STREAM_THRESHOLD
- See Also:
 - Constant Field Values
 
 
 - 
 
- 
Method Detail
- 
checkShapeCompatibility
public static void checkShapeCompatibility(NDArray<?> me, int[] arrayDims)
 
- 
calculateLength
public static int calculateLength(int[] shape)
 
- 
calculateMultipliers
public static int[] calculateMultipliers(int[] shape)
 
- 
cartesianIndicesToLinearIndex
public static int cartesianIndicesToLinearIndex(int[] indices, int[] multipliers) 
- 
linearIndexToCartesianIndices
public static int[] linearIndexToCartesianIndices(int linearIndex, int[] multipliers) 
- 
boundaryCheck
public static void boundaryCheck(int[] indices, int[] shape) 
- 
unwrap
public static int[] unwrap(int[] indices, int[] shape) 
- 
unwrap
public static int unwrap(int linearIndex, int length) 
- 
boundaryCheck
public static void boundaryCheck(int linearIndex, int length) 
- 
computeDims
public static int[] computeDims(Object[] input)
 
- 
getEndCartesianIndex
public static int[] getEndCartesianIndex(int[] shape)
 
 - 
 
 -