class Reem::LowerTriangularMatrix

Public Class Methods

new(matrix) click to toggle source
# File lib/reem/lower_triangular_matrix.rb, line 3
def initialize(matrix)
  columns, rows = matrix.sizes
  @ltm = NArray.float(columns, rows)

  (0...columns).each do |i|
    (0..i).each do |j|
      @ltm[j,i] = matrix[j,i]
    end
  end
end

Public Instance Methods

transpose() click to toggle source
# File lib/reem/lower_triangular_matrix.rb, line 14
def transpose
  @transpose ||= begin
    columns, rows = @ltm.sizes
    matrix = NArray.float(columns, rows)
    (0...columns).each do |i|
      (0...rows).each do |j|
        matrix[i,j] = @ltm[j,i]
      end
    end
    matrix
  end
end