scalation.linalgebra

VectorR

class VectorR extends PartiallyOrdered[VectorR] with Error with Serializable

The VectorR class stores and operates on Numeric Vectors of base type Rational. It follows the framework of VectorN [T] and is provided for performance.

Linear Supertypes
Serializable, Serializable, Error, PartiallyOrdered[VectorR], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. VectorR
  2. Serializable
  3. Serializable
  4. Error
  5. PartiallyOrdered
  6. AnyRef
  7. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new VectorR(u: VectorR)

    Construct a vector and assign values from vector u.

    Construct a vector and assign values from vector u.

    u

    the other vector

  2. new VectorR(u: Array[Rational])

    Construct a vector from an array of values.

    Construct a vector from an array of values.

    u

    the array of values

  3. new VectorR(dim: Int, v: Array[Rational] = null)

    dim

    the dimension/size of the vector

    v

    the 1D array used to store vector elements

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def *(m: Matrir): VectorR

    Multiply this 'row' vector by matrix m.

    Multiply this 'row' vector by matrix m. FIX: not yet implemented

    m

    the matrix to multiply by

  5. def *(s: Double): VectorR

    Multiply this vector by scalar s.

    Multiply this vector by scalar s.

    s

    the scalar to multiply by

  6. def *(s: Rational): VectorR

    Multiply this vector by scalar s.

    Multiply this vector by scalar s.

    s

    the scalar to multiply by

  7. def *(b: VectorR): VectorR

    Multiply this vector by vector b.

    Multiply this vector by vector b.

    b

    the vector to multiply by

  8. def *=(s: Double): VectorR

    Multiply in-place this vector and scalar s.

    Multiply in-place this vector and scalar s.

    s

    the scalar to add

  9. def *=(s: Rational): VectorR

    Multiply in-place this vector and scalar s.

    Multiply in-place this vector and scalar s.

    s

    the scalar to add

  10. def *=(b: VectorR): VectorR

    Multiply in-place this vector and vector b.

    Multiply in-place this vector and vector b.

    b

    the vector to add

  11. def +(s: (Rational, Int)): VectorR

    Add this vector and scalar s.

    Add this vector and scalar s._1 only at position s._2.

    s

    the (scalar, position) to add

  12. def +(s: Double): VectorR

    Add this vector and scalar s.

    Add this vector and scalar s.

    s

    the scalar to add

  13. def +(s: Rational): VectorR

    Add this vector and scalar s.

    Add this vector and scalar s.

    s

    the scalar to add

  14. def +(b: VectorR): VectorR

    Add this vector and vector b.

    Add this vector and vector b.

    b

    the vector to add

  15. def ++(b: Double): VectorR

    Concatenate this vector and scalar b.

    Concatenate this vector and scalar b.

    b

    the scalar to be concatenated

  16. def ++(b: Rational): VectorR

    Concatenate this vector and scalar b.

    Concatenate this vector and scalar b.

    b

    the scalar to be concatenated

  17. def ++(b: VectorR): VectorR

    Concatenate this vector and vector b.

    Concatenate this vector and vector b.

    b

    the vector to be concatenated

  18. def +=(s: Double): VectorR

    Add in-place this vector and scalar s.

    Add in-place this vector and scalar s.

    s

    the scalar to add

  19. def +=(s: Rational): VectorR

    Add in-place this vector and scalar s.

    Add in-place this vector and scalar s.

    s

    the scalar to add

  20. def +=(b: VectorR): VectorR

    Add in-place this vector and vector b.

    Add in-place this vector and vector b.

    b

    the vector to add

  21. def -(s: (Rational, Int)): VectorR

    From this vector subtract scalar s.

    From this vector subtract scalar s._1 only at position s._2.

    s

    the (scalar, position) to subtract

  22. def -(s: Double): VectorR

    From this vector subtract scalar s.

    From this vector subtract scalar s.

    s

    the scalar to subtract

  23. def -(s: Rational): VectorR

    From this vector subtract scalar s.

    From this vector subtract scalar s.

    s

    the scalar to subtract

  24. def -(b: VectorR): VectorR

    From this vector subtract vector b.

    From this vector subtract vector b.

    b

    the vector to subtract

  25. def -=(s: Double): VectorR

    From this vector subtract in-place scalar s.

    From this vector subtract in-place scalar s.

    s

    the scalar to add

  26. def -=(s: Rational): VectorR

    From this vector subtract in-place scalar s.

    From this vector subtract in-place scalar s.

    s

    the scalar to add

  27. def -=(b: VectorR): VectorR

    From this vector subtract in-place vector b.

    From this vector subtract in-place vector b.

    b

    the vector to add

  28. def /(s: Double): VectorR

    Divide this vector by scalar s.

    Divide this vector by scalar s.

    s

    the scalar to divide by

  29. def /(s: Rational): VectorR

    Divide this vector by scalar s.

    Divide this vector by scalar s.

    s

    the scalar to divide by

  30. def /(b: VectorR): VectorR

    Divide this vector by vector b (element-by-element).

    Divide this vector by vector b (element-by-element).

    b

    the vector to divide by

  31. def /=(s: Double): VectorR

    Divide in-place this vector and scalar s.

    Divide in-place this vector and scalar s.

    s

    the scalar to add

  32. def /=(s: Rational): VectorR

    Divide in-place this vector and scalar s.

    Divide in-place this vector and scalar s.

    s

    the scalar to add

  33. def /=(b: VectorR): VectorR

    Divide in-place this vector and vector b.

    Divide in-place this vector and vector b.

    b

    the vector to add

  34. def <[B >: VectorR](that: B)(implicit arg0: (B) ⇒ PartiallyOrdered[B]): Boolean

    Definition Classes
    PartiallyOrdered
  35. def <=[B >: VectorR](that: B)(implicit arg0: (B) ⇒ PartiallyOrdered[B]): Boolean

    Definition Classes
    PartiallyOrdered
  36. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  37. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  38. def >[B >: VectorR](that: B)(implicit arg0: (B) ⇒ PartiallyOrdered[B]): Boolean

    Definition Classes
    PartiallyOrdered
  39. def >=[B >: VectorR](that: B)(implicit arg0: (B) ⇒ PartiallyOrdered[B]): Boolean

    Definition Classes
    PartiallyOrdered
  40. def _oneAt(j: Int, size: Int = dim): VectorR

    Create a vector of the form (0, .

    Create a vector of the form (0, ... -1, ... 0) where the -1 is at position j.

    j

    the position to place the 1

    size

    the size of the vector (upper bound = size - 1)

  41. def abs: VectorR

    Return the vector is absolute values.

  42. def apply(): Array[Rational]

    Get this vector's entire array.

  43. def apply(r: Range): VectorR

    Get this vector's elements within the given range (vector slicing).

    Get this vector's elements within the given range (vector slicing).

    r

    the given range

  44. def apply(i: Int): Rational

    Get this vector's element at the i-th index position.

    Get this vector's element at the i-th index position.

    i

    the given index

  45. def argmax(e: Int = dim): Int

    Find the argument maximum of this vector (index of maximum element).

    Find the argument maximum of this vector (index of maximum element).

    e

    the ending index (exclusive) for the search

  46. def argmaxPos(e: Int = dim): Int

    Return the argument maximum of this vector (-1 if its not positive).

    Return the argument maximum of this vector (-1 if its not positive).

    e

    the ending index (exclusive) for the search

  47. def argmin(e: Int = dim): Int

    Find the argument minimum of this vector (index of minimum element).

    Find the argument minimum of this vector (index of minimum element).

    e

    the ending index (exclusive) for the search

  48. def argminNeg(e: Int = dim): Int

    Return the argument minimum of this vector (-1 if its not negative).

    Return the argument minimum of this vector (-1 if its not negative).

    e

    the ending index (exclusive) for the search

  49. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  50. def clone(): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  51. def contains(x: Rational): Boolean

    Determine whether x is contained in this vector.

    Determine whether x is contained in this vector.

    x

    the element to be checked

  52. def countNeg: Int

    Count the number of strictly negative entries in this vector.

  53. def countPos: Int

    Count the number of strictly positive entries in this vector.

  54. def cumulate: VectorR

    Cumulate the values of this vector from left to right (e.

    Cumulate the values of this vector from left to right (e.g., create a cdf from a pmf). Example: (4, 2, 3, 1) --> (4, 6, 9, 10)

  55. val dim: Int

    the dimension/size of the vector

  56. def dot(b: VectorR): Rational

    Compute the dot product (or inner product) of this vector with vector b.

    Compute the dot product (or inner product) of this vector with vector b.

    b

    the other vector

  57. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  58. def equals(b: Any): Boolean

    Override equals to determine whether vector this equals vector b.

    Override equals to determine whether vector this equals vector b.

    b

    the vector to compare with this

    Definition Classes
    VectorR → AnyRef → Any
  59. def exists(pred: (Rational) ⇒ Boolean): Boolean

    Determine whether the predicate pred holds for some element in this vector.

    Determine whether the predicate pred holds for some element in this vector.

    pred

    the predicate to test (e.g., "_ == 5.")

  60. def expand(more: Int = dim): VectorR

    Expand the size (dim) of this vector by 'more' elements.

  61. def finalize(): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  62. def firstNeg(e: Int = dim): Int

    Return the index of the first negative element in this vector (-1 otherwise).

    Return the index of the first negative element in this vector (-1 otherwise).

    e

    the ending index (exclusive) for the search

  63. def firstPos(e: Int = dim): Int

    Return the index of the first positive element in this vector (-1 otherwise).

    Return the index of the first positive element in this vector (-1 otherwise).

    e

    the ending index (exclusive) for the search

  64. def flaw(method: String, message: String): Unit

    Show the flaw by printing the error message.

    Show the flaw by printing the error message.

    method

    the method where the error occurred

    message

    the error message

    Definition Classes
    Error
  65. def foreach[U](f: (Rational) ⇒ U): Unit

    Iterate over the vector element by element.

    Iterate over the vector element by element.

    f

    the function to apply

  66. final def getClass(): java.lang.Class[_]

    Definition Classes
    AnyRef → Any
  67. def hashCode(): Int

    Must also override hashCode to be be compatible with equals.

    Must also override hashCode to be be compatible with equals.

    Definition Classes
    VectorR → AnyRef → Any
  68. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  69. def isNonnegative: Boolean

    Check whether this vector is nonnegative (has no negative elements).

  70. def mag: Rational

    Find the element with the greatest magnitude in this vector.

  71. def max(b: VectorR): VectorR

    Take the maximum of this vector with vector b (element-by element).

    Take the maximum of this vector with vector b (element-by element).

    b

    the other vector

  72. def max(e: Int = dim): Rational

    Find the maximum element in this vector.

    Find the maximum element in this vector.

    e

    the ending index (exclusive) for the search

  73. def min(b: VectorR): VectorR

    Take the minimum of this vector with vector b (element-by element).

    Take the minimum of this vector with vector b (element-by element).

    b

    the other vector

  74. def min(e: Int = dim): Rational

    Find the minimum element in this vector.

    Find the minimum element in this vector.

    e

    the ending index (exclusive) for the search

  75. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  76. def norm: Rational

    Compute the Euclidean norm (2-norm) of this vector.

  77. def norm1: Rational

    Compute the Manhattan norm (1-norm) of this vector.

  78. def normSq: Rational

    Compute the Euclidean norm (2-norm) squared of this vector.

  79. def normalize: VectorR

    Normalize this vector so that it sums to one (like a probability vector).

  80. def normalize1: VectorR

    Normalize this vector to have a maximum of one.

  81. def normalizeU: VectorR

    Normalize this vector so its length is one (unit vector).

  82. final def notify(): Unit

    Definition Classes
    AnyRef
  83. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  84. def oneAt(j: Int, size: Int = dim): VectorR

    Create a vector of the form (0, .

    Create a vector of the form (0, ... 1, ... 0) where the 1 is at position j.

    j

    the position to place the 1

    size

    the size of the vector (upper bound = size - 1)

  85. def ramp(size: Int = dim): VectorR

    Create a ramp-up vector of increasing values: 0, 1, 2, .

    Create a ramp-up vector of increasing values: 0, 1, 2, ..., size - 1.

    size

    the size of the vector (upper bound = size - 1)

  86. def sameDimensions(b: VectorR): Boolean

    Check whether the other vector is at least as long as this vector.

    Check whether the other vector is at least as long as this vector.

    b

    the other vector

  87. def select(index: Array[Int]): VectorR

    Select a subset of elements of this vector corresponding to a index/basis.

    Select a subset of elements of this vector corresponding to a index/basis.

    index

    the set of index positions (e.g., 0, 2, 5)

  88. def set(x: Rational): Unit

    Set each value in this vector to x.

    Set each value in this vector to x.

    x

    the value to be assigned

  89. def setAll(u: Array[Rational]): Unit

    Set the values in this vector to the values in array u.

    Set the values in this vector to the values in array u.

    u

    the array of values to be assigned

  90. def slice(from: Int, till: Int): VectorR

    Slice this vector from to end.

    Slice this vector from to end.

    from

    the start of the slice (included)

    till

    the end of the slice (excluded)

  91. def sort(): Unit

    Sort this vector in-place in non-decreasing order.

  92. def sq: VectorR

    Square each element of this vector.

  93. def sum: Rational

    Sum the elements of this vector.

  94. def sum_ne(i: Int): Rational

    Sum the elements of this vector skipping the i-th element.

    Sum the elements of this vector skipping the i-th element.

    i

    the index of the element to skip

  95. def sum_pos: Rational

    Sum the positive (> 0) elements of this vector.

  96. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  97. def toString(): String

    Convert this vector to a string.

    Convert this vector to a string.

    Definition Classes
    VectorR → AnyRef → Any
  98. def tryCompareTo[B >: VectorR](b: B)(implicit arg0: (B) ⇒ PartiallyOrdered[B]): Option[Int]

    Compare this vector with vector b.

    Compare this vector with vector b.

    b

    the other vector

    Definition Classes
    VectorR → PartiallyOrdered
  99. def unary_-(): VectorR

    Return the negative of this vector (unary minus).

  100. def update(r: Range, u: VectorR): Unit

    Set this vector's elements over the given range (vector slicing).

    Set this vector's elements over the given range (vector slicing).

    r

    the given range

    u

    the vector to assign

  101. def update(r: Range, x: Rational): Unit

    Set this vector's elements over the given range (vector slicing).

    Set this vector's elements over the given range (vector slicing).

    r

    the given range

    x

    the value to assign

  102. def update(i: Int, x: Rational): Unit

    Set this vector's element at the i-th index position.

    Set this vector's element at the i-th index position.

    i

    the given index

    x

    the value to assign

  103. var v: Array[Rational]

    the 1D array used to store vector elements

    the 1D array used to store vector elements

    Attributes
    protected
  104. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  105. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  106. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws()
  107. def ~^(s: Rational): VectorR

    Return the vector containing each element of this vector raised to the s-th power.

    Return the vector containing each element of this vector raised to the s-th power.

    s

    the scalar exponent

  108. def ~^(s: Long): VectorR

    Return the vector containing each element of this vector raised to the s-th power.

    Return the vector containing each element of this vector raised to the s-th power.

    s

    the scalar exponent

  109. def ~^=(s: Rational): Unit

    Raise each element of this vector to the s-th power.

    Raise each element of this vector to the s-th power.

    s

    the scalar exponent

  110. def ~^=(s: Long): Unit

    Raise each element of this vector to the s-th power.

    Raise each element of this vector to the s-th power.

    s

    the scalar exponent

Inherited from Serializable

Inherited from Serializable

Inherited from Error

Inherited from PartiallyOrdered[VectorR]

Inherited from AnyRef

Inherited from Any