Mercurial > hg > may
changeset 454:a926ad176efb
Add negative
author | Chris Cannam |
---|---|
date | Thu, 24 Oct 2013 18:01:26 +0100 |
parents | c11bf7397e0e |
children | 7cbc8d88bbac |
files | src/may/vector/blockfuncs.yeti src/may/vector/test/test_blockfuncs.yeti |
diffstat | 2 files changed, 10 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/may/vector/blockfuncs.yeti Thu Oct 24 15:13:02 2013 +0100 +++ b/src/may/vector/blockfuncs.yeti Thu Oct 24 18:01:26 2013 +0100 @@ -107,6 +107,9 @@ abs' = vec.fromList . (map abs) . vec.list; +negative = + vec.fromList . (map (0-)) . vec.list; + sqrt' = vec.fromList . (map sqrt) . vec.list; @@ -137,6 +140,7 @@ divideBy is number -> vector -> vector, scaled is number -> vector -> vector, abs is vector -> vector = abs', +negative is vector -> vector, sqr is vector -> vector, sqrt is vector -> vector = sqrt', rms is vector -> number,
--- a/src/may/vector/test/test_blockfuncs.yeti Thu Oct 24 15:13:02 2013 +0100 +++ b/src/may/vector/test/test_blockfuncs.yeti Thu Oct 24 18:01:26 2013 +0100 @@ -4,7 +4,7 @@ stdSqrt = sqrt; { zeros, consts, ones, fromList, list } = load may.vector; -{ sum, max, min, maxindex, minindex, mean, add, subtract, multiply, divideBy, scaled, abs, sqr, sqrt, rms, unityNormalised, fftshift, ifftshift } = load may.vector.blockfuncs; +{ sum, max, min, maxindex, minindex, mean, add, subtract, multiply, divideBy, scaled, abs, negative, sqr, sqrt, rms, unityNormalised, fftshift, ifftshift } = load may.vector.blockfuncs; { compare } = load may.test.test; [ @@ -83,6 +83,11 @@ compare (list (abs (fromList [1,2,-3]))) [1,2,3] ), +"negative": \( + compare (list (negative (ones 0))) [] and + compare (list (negative (fromList [1,2,-3]))) [-1,-2,3] +), + "sqr": \( compare ((list . sqr . zeros) 0) [] and compare ((list . sqr . ones) 5) [1,1,1,1,1] and