aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/matrix.rb7
-rw-r--r--test/matrix/test_matrix.rb5
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/matrix.rb b/lib/matrix.rb
index b8139b547f..6b3a2becf4 100644
--- a/lib/matrix.rb
+++ b/lib/matrix.rb
@@ -1225,6 +1225,13 @@ class Matrix
collect {|e| -e }
end
+ #
+ # Returns the absolute value elementwise
+ #
+ def abs
+ collect(&:abs)
+ end
+
#--
# MATRIX FUNCTIONS -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
#++
diff --git a/test/matrix/test_matrix.rb b/test/matrix/test_matrix.rb
index 3ecb9d2f8b..7dbb1000d9 100644
--- a/test/matrix/test_matrix.rb
+++ b/test/matrix/test_matrix.rb
@@ -583,6 +583,11 @@ class TestMatrix < Test::Unit::TestCase
assert_equal(1, s1 ** o)
end
+ def test_abs
+ s1 = @a3.abs
+ assert_equal(s1, Matrix[[4, 1, 3], [0, 3, 7], [11, 4, 2]])
+ end
+
def test_hstack
assert_equal Matrix[[1,2,3,2,3,4,1,2,3], [4,5,6,5,6,7,4,5,6]],
@m1.hstack(@n1, @m1)