]> gitweb.michael.orlitzky.com - octave.git/blobdiff - tests/rank_k_approximation_tests.m
Add rank_k_approximation() and its tests.
[octave.git] / tests / rank_k_approximation_tests.m
diff --git a/tests/rank_k_approximation_tests.m b/tests/rank_k_approximation_tests.m
new file mode 100644 (file)
index 0000000..8288752
--- /dev/null
@@ -0,0 +1,20 @@
+U = [4/5, 3/5, 0  ; ...
+     0  , 4/5, 3/5; ...
+     3/5, 0  , 4/5 ];
+
+S = [ 1, 0, 0;
+      0, 2, 0;
+      0, 0, 3 ];
+
+V = [ 0, 1, 0;
+      1, 0, 0;
+      0, 0, 1 ];
+
+A = U*S*V';
+
+expected = A;
+actual = rank_k_approximation(A, 3);
+
+unit_test_equals("Full rank approximation of a matrix is itself", ...
+                expected, ...
+                actual);