class Algebra::MatrixAlgebraQuint
Attributes
lefti[R]
righti[R]
Public Class Methods
new(matrix, left = nil, right = nil, lefti = nil, righti = nil)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet::new
# File lib/algebra/matrix-algebra-triplet.rb, line 200 def initialize(matrix, left = nil, right = nil, lefti = nil, righti = nil) super(matrix, left, right) @lefti = lefti ? lefti : @left_type.unity @righti = righti ? righti : @right_type.unity end
Public Instance Methods
divide_c!(j, c)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#divide_c!
# File lib/algebra/matrix-algebra-triplet.rb, line 257 def divide_c!(j, c) @righti.multiply_r!(j, c) super end
divide_r!(i, c)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#divide_r!
# File lib/algebra/matrix-algebra-triplet.rb, line 252 def divide_r!(i, c) @lefti.multiply_c!(i, c) super end
dup()
click to toggle source
# File lib/algebra/matrix-algebra-triplet.rb, line 212 def dup self.class.new(body.dup, left.dup, right.dup, lefti.dup, righti.dup) end
mix_c!(i, j, c = nil)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#mix_c!
# File lib/algebra/matrix-algebra-triplet.rb, line 267 def mix_c!(i, j, c = nil) @righti.mix_r!(j, i, c ? -c : -1) super end
mix_r!(i, j, c = nil)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#mix_r!
# File lib/algebra/matrix-algebra-triplet.rb, line 262 def mix_r!(i, j, c = nil) @lefti.mix_c!(j, i, c ? -c : -1) super end
multiply_c!(j, c)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#multiply_c!
# File lib/algebra/matrix-algebra-triplet.rb, line 247 def multiply_c!(j, c) @righti.divide_r!(j, c) super end
multiply_r!(i, c)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#multiply_r!
# File lib/algebra/matrix-algebra-triplet.rb, line 242 def multiply_r!(i, c) @lefti.divide_c!(i, c) super end
replace(other)
click to toggle source
# File lib/algebra/matrix-algebra-triplet.rb, line 221 def replace(other) initialize(other.body, other.left, other.right, other.lefti, other.righti) self end
sswap_r!(i, j)
click to toggle source
ElementaryOpeartion
Calls superclass method
Algebra::MatrixAlgebraTriplet#sswap_r!
# File lib/algebra/matrix-algebra-triplet.rb, line 227 def sswap_r!(i, j) @lefti.swap_c!(i, j) # sswap_c doesn't exist super end
swap_c!(i, j)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#swap_c!
# File lib/algebra/matrix-algebra-triplet.rb, line 237 def swap_c!(i, j) @righti.swap_r!(i, j) super end
swap_r!(i, j)
click to toggle source
Calls superclass method
Algebra::MatrixAlgebraTriplet#swap_r!
# File lib/algebra/matrix-algebra-triplet.rb, line 232 def swap_r!(i, j) @lefti.swap_c!(i, j) super end
to_ary()
click to toggle source
# File lib/algebra/matrix-algebra-triplet.rb, line 206 def to_ary [body, left, right, lefti, righti] end
Also aliased as: to_a
transpose()
click to toggle source
# File lib/algebra/matrix-algebra-triplet.rb, line 216 def transpose self.class.new(body.transpose, right.transpose, left.transpose, righti.transpose, lefti.transpose) end