Class UnrollableDoubleVector

  • All Implemented Interfaces:
    de.jungblut.math.DoubleVector

    public final class UnrollableDoubleVector
    extends java.lang.Object
    implements de.jungblut.math.DoubleVector
    Unrollable proxy double vector class, that wraps multiple vectors into one that can be later unrolled.
    Author:
    thomas.jungblut
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface de.jungblut.math.DoubleVector

        de.jungblut.math.DoubleVector.DoubleVectorElement
    • Constructor Summary

      Constructors 
      Constructor Description
      UnrollableDoubleVector​(de.jungblut.math.DoubleVector mainVector, de.jungblut.math.DoubleVector[] sideVectors)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      de.jungblut.math.DoubleVector abs()  
      de.jungblut.math.DoubleVector add​(double scalar)  
      de.jungblut.math.DoubleVector add​(de.jungblut.math.DoubleVector v)  
      de.jungblut.math.DoubleVector apply​(de.jungblut.math.DoubleVector other, de.jungblut.math.function.DoubleDoubleVectorFunction func)  
      de.jungblut.math.DoubleVector apply​(de.jungblut.math.function.DoubleVectorFunction func)  
      de.jungblut.math.DoubleVector deepCopy()  
      de.jungblut.math.DoubleVector divide​(double scalar)  
      de.jungblut.math.DoubleVector divide​(de.jungblut.math.DoubleVector vector)  
      de.jungblut.math.DoubleVector divideFrom​(double scalar)  
      de.jungblut.math.DoubleVector divideFrom​(de.jungblut.math.DoubleVector vector)  
      double dot​(de.jungblut.math.DoubleVector s)  
      de.jungblut.math.DoubleVector exp()  
      double get​(int index)  
      int getDimension()  
      int getLength()  
      de.jungblut.math.DoubleVector getMainVector()  
      java.lang.String getName()  
      de.jungblut.math.DoubleVector[] getSideVectors()  
      boolean isNamed()  
      boolean isSingle()  
      boolean isSparse()  
      java.util.Iterator<de.jungblut.math.DoubleVector.DoubleVectorElement> iterate()  
      java.util.Iterator<de.jungblut.math.DoubleVector.DoubleVectorElement> iterateNonZero()  
      de.jungblut.math.DoubleVector log()  
      double max()  
      int maxIndex()  
      double min()  
      int minIndex()  
      de.jungblut.math.DoubleVector multiply​(double scalar)  
      de.jungblut.math.DoubleVector multiply​(de.jungblut.math.DoubleVector vector)  
      de.jungblut.math.DoubleVector pow​(double x)  
      void set​(int index, double value)  
      de.jungblut.math.DoubleVector slice​(int end)  
      de.jungblut.math.DoubleVector slice​(int start, int end)  
      de.jungblut.math.DoubleVector sliceByLength​(int start, int length)  
      de.jungblut.math.DoubleVector sqrt()  
      de.jungblut.math.DoubleVector subtract​(double scalar)  
      de.jungblut.math.DoubleVector subtract​(de.jungblut.math.DoubleVector v)  
      de.jungblut.math.DoubleVector subtractFrom​(double scalar)  
      double sum()  
      double[] toArray()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UnrollableDoubleVector

        public UnrollableDoubleVector​(de.jungblut.math.DoubleVector mainVector,
                                      de.jungblut.math.DoubleVector[] sideVectors)
    • Method Detail

      • getMainVector

        public de.jungblut.math.DoubleVector getMainVector()
      • getSideVectors

        public de.jungblut.math.DoubleVector[] getSideVectors()
      • get

        public double get​(int index)
        Specified by:
        get in interface de.jungblut.math.DoubleVector
      • getLength

        public int getLength()
        Specified by:
        getLength in interface de.jungblut.math.DoubleVector
      • getDimension

        public int getDimension()
        Specified by:
        getDimension in interface de.jungblut.math.DoubleVector
      • set

        public void set​(int index,
                        double value)
        Specified by:
        set in interface de.jungblut.math.DoubleVector
      • apply

        public de.jungblut.math.DoubleVector apply​(de.jungblut.math.function.DoubleVectorFunction func)
        Specified by:
        apply in interface de.jungblut.math.DoubleVector
      • apply

        public de.jungblut.math.DoubleVector apply​(de.jungblut.math.DoubleVector other,
                                                   de.jungblut.math.function.DoubleDoubleVectorFunction func)
        Specified by:
        apply in interface de.jungblut.math.DoubleVector
      • add

        public de.jungblut.math.DoubleVector add​(de.jungblut.math.DoubleVector v)
        Specified by:
        add in interface de.jungblut.math.DoubleVector
      • add

        public de.jungblut.math.DoubleVector add​(double scalar)
        Specified by:
        add in interface de.jungblut.math.DoubleVector
      • subtract

        public de.jungblut.math.DoubleVector subtract​(de.jungblut.math.DoubleVector v)
        Specified by:
        subtract in interface de.jungblut.math.DoubleVector
      • subtract

        public de.jungblut.math.DoubleVector subtract​(double scalar)
        Specified by:
        subtract in interface de.jungblut.math.DoubleVector
      • subtractFrom

        public de.jungblut.math.DoubleVector subtractFrom​(double scalar)
        Specified by:
        subtractFrom in interface de.jungblut.math.DoubleVector
      • multiply

        public de.jungblut.math.DoubleVector multiply​(double scalar)
        Specified by:
        multiply in interface de.jungblut.math.DoubleVector
      • multiply

        public de.jungblut.math.DoubleVector multiply​(de.jungblut.math.DoubleVector vector)
        Specified by:
        multiply in interface de.jungblut.math.DoubleVector
      • divide

        public de.jungblut.math.DoubleVector divide​(double scalar)
        Specified by:
        divide in interface de.jungblut.math.DoubleVector
      • divideFrom

        public de.jungblut.math.DoubleVector divideFrom​(double scalar)
        Specified by:
        divideFrom in interface de.jungblut.math.DoubleVector
      • divideFrom

        public de.jungblut.math.DoubleVector divideFrom​(de.jungblut.math.DoubleVector vector)
        Specified by:
        divideFrom in interface de.jungblut.math.DoubleVector
      • divide

        public de.jungblut.math.DoubleVector divide​(de.jungblut.math.DoubleVector vector)
        Specified by:
        divide in interface de.jungblut.math.DoubleVector
      • pow

        public de.jungblut.math.DoubleVector pow​(double x)
        Specified by:
        pow in interface de.jungblut.math.DoubleVector
      • abs

        public de.jungblut.math.DoubleVector abs()
        Specified by:
        abs in interface de.jungblut.math.DoubleVector
      • sqrt

        public de.jungblut.math.DoubleVector sqrt()
        Specified by:
        sqrt in interface de.jungblut.math.DoubleVector
      • sum

        public double sum()
        Specified by:
        sum in interface de.jungblut.math.DoubleVector
      • dot

        public double dot​(de.jungblut.math.DoubleVector s)
        Specified by:
        dot in interface de.jungblut.math.DoubleVector
      • slice

        public de.jungblut.math.DoubleVector slice​(int end)
        Specified by:
        slice in interface de.jungblut.math.DoubleVector
      • slice

        public de.jungblut.math.DoubleVector slice​(int start,
                                                   int end)
        Specified by:
        slice in interface de.jungblut.math.DoubleVector
      • sliceByLength

        public de.jungblut.math.DoubleVector sliceByLength​(int start,
                                                           int length)
        Specified by:
        sliceByLength in interface de.jungblut.math.DoubleVector
      • max

        public double max()
        Specified by:
        max in interface de.jungblut.math.DoubleVector
      • min

        public double min()
        Specified by:
        min in interface de.jungblut.math.DoubleVector
      • maxIndex

        public int maxIndex()
        Specified by:
        maxIndex in interface de.jungblut.math.DoubleVector
      • minIndex

        public int minIndex()
        Specified by:
        minIndex in interface de.jungblut.math.DoubleVector
      • toArray

        public double[] toArray()
        Specified by:
        toArray in interface de.jungblut.math.DoubleVector
      • deepCopy

        public de.jungblut.math.DoubleVector deepCopy()
        Specified by:
        deepCopy in interface de.jungblut.math.DoubleVector
      • iterateNonZero

        public java.util.Iterator<de.jungblut.math.DoubleVector.DoubleVectorElement> iterateNonZero()
        Specified by:
        iterateNonZero in interface de.jungblut.math.DoubleVector
      • iterate

        public java.util.Iterator<de.jungblut.math.DoubleVector.DoubleVectorElement> iterate()
        Specified by:
        iterate in interface de.jungblut.math.DoubleVector
      • isSparse

        public boolean isSparse()
        Specified by:
        isSparse in interface de.jungblut.math.DoubleVector
      • isSingle

        public boolean isSingle()
        Specified by:
        isSingle in interface de.jungblut.math.DoubleVector
      • isNamed

        public boolean isNamed()
        Specified by:
        isNamed in interface de.jungblut.math.DoubleVector
      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface de.jungblut.math.DoubleVector
      • log

        public de.jungblut.math.DoubleVector log()
        Specified by:
        log in interface de.jungblut.math.DoubleVector
      • exp

        public de.jungblut.math.DoubleVector exp()
        Specified by:
        exp in interface de.jungblut.math.DoubleVector