Sha256: b355f0d749155fb06989b745f8a53fa8cfac7db1510da68052a365d3da55ac49
Contents?: true
Size: 584 Bytes
Versions: 9
Compression:
Stored size: 584 Bytes
Contents
#!/usr/bin/env ruby require("gsl") require("../gsl_test2.rb") include GSL::Test include Linalg A = GSL::Matrix.alloc([1, 2, 3, 4], 2, 2) I = GSL::Matrix.identity(2) Ainv = A.inv u, v, s = A.SV_decomp sm = s.to_m_diagonal sinv = s.collect { |elm| 1.0/elm }.to_m_diagonal a = u*sm*v.trans ainv = v*sinv*u.trans test2(a == A, "#{A.class}#SV_decomp") test2(ainv == Ainv, "#{A.class}#SV_decomp") test2((u.trans*u) == I, "#{A.class}#SV_decomp") test2((v.trans*v) == I, "#{A.class}#SV_decomp") test2(A*v == u*sm, "#{A.class}#SV_decomp") test2(A.trans*u == v*sm, "#{A.class}#SV_decomp")
Version data entries
9 entries across 9 versions & 4 rubygems