summaryrefslogtreecommitdiff
path: root/spec/rubyspec/library/matrix/eigenvalue_decomposition
diff options
context:
space:
mode:
Diffstat (limited to 'spec/rubyspec/library/matrix/eigenvalue_decomposition')
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalue_matrix_spec.rb9
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalues_spec.rb22
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvector_matrix_spec.rb20
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvectors_spec.rb22
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/initialize_spec.rb24
-rw-r--r--spec/rubyspec/library/matrix/eigenvalue_decomposition/to_a_spec.rb18
6 files changed, 0 insertions, 115 deletions
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalue_matrix_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalue_matrix_spec.rb
deleted file mode 100644
index 3443eeaaf9..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalue_matrix_spec.rb
+++ /dev/null
@@ -1,9 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#eigenvalue_matrix" do
- it "returns a diagonal matrix with the eigenvalues on the diagonal" do
- Matrix[[14, 16], [-6, -6]].eigensystem.eigenvalue_matrix.should == Matrix[[6, 0],[0, 2]]
- Matrix[[1, 1], [-1, 1]].eigensystem.eigenvalue_matrix.should == Matrix[[Complex(1,1), 0],[0, Complex(1,-1)]]
- end
-end
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalues_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalues_spec.rb
deleted file mode 100644
index c175a29947..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvalues_spec.rb
+++ /dev/null
@@ -1,22 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#eigenvalues" do
- it "returns an array of complex eigenvalues for a rotation matrix" do
- Matrix[[ 1, 1],
- [-1, 1]].eigensystem.eigenvalues.sort_by{|v| v.imag}.should ==
- [ Complex(1, -1), Complex(1, 1)]
- end
-
- it "returns an array of real eigenvalues for a symetric matrix" do
- Matrix[[1, 2],
- [2, 1]].eigensystem.eigenvalues.sort.map!{|x| x.round(10)}.should ==
- [ -1, 3 ]
- end
-
- it "returns an array of real eigenvalues for a matrix" do
- Matrix[[14, 16],
- [-6, -6]].eigensystem.eigenvalues.sort.map!{|x| x.round(10)}.should ==
- [ 2, 6 ]
- end
-end
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvector_matrix_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvector_matrix_spec.rb
deleted file mode 100644
index 709ec68d0c..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvector_matrix_spec.rb
+++ /dev/null
@@ -1,20 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#eigenvector_matrix" do
- it "returns a complex eigenvector matrix given a rotation matrix" do
- # Fix me: should test for linearity, not for equality
- Matrix[[ 1, 1],
- [-1, 1]].eigensystem.eigenvector_matrix.should ==
- Matrix[[1, 1],
- [Complex(0, 1), Complex(0, -1)]]
- end
-
- it "returns an real eigenvector matrix for a symetric matrix" do
- # Fix me: should test for linearity, not for equality
- Matrix[[1, 2],
- [2, 1]].eigensystem.eigenvector_matrix.should ==
- Matrix[[0.7071067811865475, 0.7071067811865475],
- [-0.7071067811865475, 0.7071067811865475]]
- end
-end
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvectors_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvectors_spec.rb
deleted file mode 100644
index 163bebe709..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/eigenvectors_spec.rb
+++ /dev/null
@@ -1,22 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#eigenvectors" do
- it "returns an array of complex eigenvectors for a rotation matrix" do
- # Fix me: should test for linearity, not for equality
- Matrix[[ 1, 1],
- [-1, 1]].eigensystem.eigenvectors.should ==
- [ Vector[1, Complex(0, 1)],
- Vector[1, Complex(0, -1)]
- ]
- end
-
- it "returns an array of real eigenvectors for a symetric matrix" do
- # Fix me: should test for linearity, not for equality
- Matrix[[1, 2],
- [2, 1]].eigensystem.eigenvectors.should ==
- [ Vector[0.7071067811865475, -0.7071067811865475],
- Vector[0.7071067811865475, 0.7071067811865475]
- ]
- end
-end
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/initialize_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/initialize_spec.rb
deleted file mode 100644
index 97d9be8f2d..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/initialize_spec.rb
+++ /dev/null
@@ -1,24 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#initialize" do
- it "raises an error if argument is not a matrix" do
- lambda {
- Matrix::EigenvalueDecomposition.new([[]])
- }.should raise_error(TypeError)
- lambda {
- Matrix::EigenvalueDecomposition.new(42)
- }.should raise_error(TypeError)
- end
-
- it "raises an error if matrix is not square" do
- lambda {
- Matrix::EigenvalueDecomposition.new(Matrix[[1, 2]])
- }.should raise_error(Matrix::ErrDimensionMismatch)
- end
-
- it "never hangs" do
- m = Matrix[ [0,0,0,0,0], [0,0,0,0,1], [0,0,0,1,0], [1,1,0,0,1], [1,0,1,0,1] ]
- Matrix::EigenvalueDecomposition.new(m).should_not == "infinite loop"
- end
-end
diff --git a/spec/rubyspec/library/matrix/eigenvalue_decomposition/to_a_spec.rb b/spec/rubyspec/library/matrix/eigenvalue_decomposition/to_a_spec.rb
deleted file mode 100644
index e9b849eb97..0000000000
--- a/spec/rubyspec/library/matrix/eigenvalue_decomposition/to_a_spec.rb
+++ /dev/null
@@ -1,18 +0,0 @@
-require File.expand_path('../../../../spec_helper', __FILE__)
-require 'matrix'
-
-describe "Matrix::EigenvalueDecomposition#to_a" do
- before :each do
- @a = Matrix[[14, 16], [-6, -6]]
- @e = Matrix::EigenvalueDecomposition.new(@a)
- end
-
- it "returns an array of with [V, D, V.inv]" do
- @e.to_a.should == [@e.v, @e.d, @e.v_inv]
- end
-
- it "returns a factorization" do
- v, d, v_inv = @e.to_a
- (v * d * v_inv).map{|e| e.round(10)}.should == @a
- end
-end