Class DOT

java.lang.Object
org.ojalgo.array.operation.DOT
All Implemented Interfaces:
ArrayOperation

public abstract class DOT extends Object implements ArrayOperation
The ?dot routines perform a vector-vector reduction operation defined as Equation where xi and yi are elements of vectors x and y.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    DOT()
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static double
    invoke(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
     
    static double
    invoke(double[] array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
     
    static float
    invoke(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    static float
    invoke(float[] array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
     
    static BigDecimal
    invoke(BigDecimal[] array1, int offset1, BigDecimal[] array2, int offset2, int first, int limit)
     
    static <N extends Scalar<N>>
    N
    invoke(N[] array1, int offset1, N[] array2, int offset2, int first, int limit, Scalar.Factory<N> factory)
     
    static <N extends Scalar<N>>
    N
    invoke(N[] array1, int offset1, Access1D<N> array2, int offset2, int first, int limit, Scalar.Factory<N> factory)
     
    invoke(ComplexNumber[] array1, int offset1, ComplexNumber[] array2, int offset2, int first, int limit)
     
    static double
    invoke(Access1D<?> array1, int offset1, double[] array2, int offset2, int first, int limit)
     
    static float
    invoke(Access1D<?> array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    static <N extends Scalar<N>>
    N
    invoke(Access1D<N> array2, int offset2, N[] array1, int offset1, int first, int limit, Scalar.Factory<N> factory)
     
    static <N extends Scalar<N>>
    N
    invokeG(Access1D<N> array1, int offset1, Access1D<N> array2, int offset2, int first, int limit, Scalar.Factory<N> scalar)
     
    static double
    invokeP64(Access1D<?> array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
     
    (package private) static double
    plain(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
     
    (package private) static float
    plain(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    (package private) static float
    unrolled02(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    (package private) static double
    unrolled04(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
     
    (package private) static float
    unrolled04(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    (package private) static float
    unrolled08(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     
    (package private) static float
    unrolled16(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • THRESHOLD

      public static int THRESHOLD
  • Constructor Details

    • DOT

      public DOT()
  • Method Details

    • invoke

      public static double invoke(Access1D<?> array1, int offset1, double[] array2, int offset2, int first, int limit)
    • invoke

      public static float invoke(Access1D<?> array1, int offset1, float[] array2, int offset2, int first, int limit)
    • invoke

      public static <N extends Scalar<N>> N invoke(Access1D<N> array2, int offset2, N[] array1, int offset1, int first, int limit, Scalar.Factory<N> factory)
    • invoke

      public static BigDecimal invoke(BigDecimal[] array1, int offset1, BigDecimal[] array2, int offset2, int first, int limit)
    • invoke

      public static ComplexNumber invoke(ComplexNumber[] array1, int offset1, ComplexNumber[] array2, int offset2, int first, int limit)
    • invoke

      public static double invoke(double[] array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
    • invoke

      public static double invoke(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
    • invoke

      public static float invoke(float[] array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
    • invoke

      public static float invoke(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
    • invoke

      public static <N extends Scalar<N>> N invoke(N[] array1, int offset1, Access1D<N> array2, int offset2, int first, int limit, Scalar.Factory<N> factory)
    • invoke

      public static <N extends Scalar<N>> N invoke(N[] array1, int offset1, N[] array2, int offset2, int first, int limit, Scalar.Factory<N> factory)
    • invokeG

      public static <N extends Scalar<N>> N invokeG(Access1D<N> array1, int offset1, Access1D<N> array2, int offset2, int first, int limit, Scalar.Factory<N> scalar)
    • invokeP64

      public static double invokeP64(Access1D<?> array1, int offset1, Access1D<?> array2, int offset2, int first, int limit)
    • plain

      static double plain(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
    • plain

      static float plain(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
    • unrolled02

      static float unrolled02(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
    • unrolled04

      static double unrolled04(double[] array1, int offset1, double[] array2, int offset2, int first, int limit)
    • unrolled04

      static float unrolled04(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
    • unrolled08

      static float unrolled08(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)
    • unrolled16

      static float unrolled16(float[] array1, int offset1, float[] array2, int offset2, int first, int limit)