Class: Eigen::VectorX
- Inherits:
-
Object
- Object
- Eigen::VectorX
- Defined in:
- lib/eigen/vectorx.rb,
ext/eigen/eigen.cpp
Overview
A variable-length vector holding floating-point numbers
Class Method Summary collapse
Instance Method Summary collapse
-
#*(scalar) ⇒ VectorX
Multiplies by a scalar.
-
#+(v) ⇒ VectorX
Sum.
-
#-(v) ⇒ VectorX
Subtracts.
-
#-@ ⇒ VectorX
Negation.
-
#/(scalar) ⇒ VectorX
Divides by a scalar.
- #==(v) ⇒ Object
-
#[](index) ⇒ Numeric
Returns an element.
-
#[]=(index, value) ⇒ Numeric
Sets an element.
-
#_dump(level) ⇒ Object
:nodoc:.
-
#approx?(v, threshold = dummy_precision) ⇒ Boolean
Verifies that two vectors are within threshold of each other, elementwise.
-
#dot(v) ⇒ VectorX
Dot product.
- #dup ⇒ Object
- #from_a(array) ⇒ Object
-
#initialize(size = 0) ⇒ Object
constructor
Creates a new vector.
-
#norm ⇒ Numeric
The vector’s norm.
-
#normalize ⇒ VectorX
Returns a normalized self.
-
#normalize! ⇒ void
Normalizes self.
-
#resize(new_size) ⇒ Numeric
Changes the vector’s size.
-
#size ⇒ Integer
Returns the vector’s size.
-
#to_a ⇒ Object
Returns the array value in a vector.
-
#to_s ⇒ Object
:nodoc:.
Constructor Details
#initialize(size = 0) ⇒ Object
Creates a new vector
Class Method Details
._load(coordinates) ⇒ Object
:nodoc:
48 49 50 51 52 |
# File 'lib/eigen/vectorx.rb', line 48 def self._load(coordinates) # :nodoc: m = new() m.from_a(Marshal.load(coordinates)) m end |
Instance Method Details
#*(scalar) ⇒ VectorX
Multiplies by a scalar
#+(v) ⇒ VectorX
Sum
#-(v) ⇒ VectorX
Subtracts
#-@ ⇒ VectorX
Negation
#/(scalar) ⇒ VectorX
Divides by a scalar
#==(v) ⇒ Object
30 31 32 33 |
# File 'lib/eigen/vectorx.rb', line 30 def ==(v) v.kind_of?(self.class) && __equal__(v) end |
#[](index) ⇒ Numeric
Returns an element
#[]=(index, value) ⇒ Numeric
Sets an element
#_dump(level) ⇒ Object
:nodoc:
44 45 46 |
# File 'lib/eigen/vectorx.rb', line 44 def _dump(level) # :nodoc: Marshal.dump(to_a) end |
#approx?(v, threshold = dummy_precision) ⇒ Boolean
Verifies that two vectors are within threshold of each other, elementwise
#dot(v) ⇒ VectorX
Dot product
#from_a(array) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/eigen/vectorx.rb', line 23 def from_a(array) resize(array.size()) for i in 0..array.size()-1 self[i] = array[i] end end |
#norm ⇒ Numeric
The vector’s norm
#normalize ⇒ VectorX
Returns a normalized self
#normalize! ⇒ void
This method returns an undefined value.
Normalizes self
#resize(new_size) ⇒ Numeric
Changes the vector’s size
#size ⇒ Integer
Returns the vector’s size
#to_a ⇒ Object
Returns the array value in a vector
9 10 11 12 13 14 15 |
# File 'lib/eigen/vectorx.rb', line 9 def to_a() a = [] for i in 0..size()-1 a << self[i] end a end |
#to_s ⇒ Object
:nodoc:
35 36 37 38 39 40 41 42 |
# File 'lib/eigen/vectorx.rb', line 35 def to_s # :nodoc: str = "VectorX(" for i in 0..size()-1 str += "#{self[i]} " end str[-1] = ")" str end |