Method: NuLin::LLS_QR#compute
- Defined in:
- lib/nulin/lls.rb
#compute ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/nulin/lls.rb', line 81 def compute m, n = @a.shape lda = m ldb = [1, m, n].max r, nrhs = @b.shape b = NVector.new(@typecode, ldb, nrhs) b[0...m, 0...nrhs] = @b lwork = [1, [m,n].min + [[m,n].min, nrhs].max].max work = NArray.new(@typecode, lwork) NuLin::Native.call(@typecode, "gels", "N", m, n, nrhs, @a, lda, b, ldb, work, lwork, 0) @solution = b[0...n, true] @solution.flatten! if @b_is_rank1 end |