diff options
Diffstat (limited to 'Build/source/utils/asymptote/tests/array/determinant.asy')
-rw-r--r-- | Build/source/utils/asymptote/tests/array/determinant.asy | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Build/source/utils/asymptote/tests/array/determinant.asy b/Build/source/utils/asymptote/tests/array/determinant.asy new file mode 100644 index 00000000000..e6086d0b04f --- /dev/null +++ b/Build/source/utils/asymptote/tests/array/determinant.asy @@ -0,0 +1,18 @@ +import TestLib; +import math; + +StartTest("determinant"); +assert(determinant(new real[][] {{0}}) == 0); +assert(determinant(new real[][] {{1}}) == 1); +assert(determinant(new real[][] {{1,2},{3,4}}) == -2); +real e=1e-20; +assert(close(determinant(new real[][] {{1e,2e},{3e,4e}}),-2e-40)); +assert(close(determinant(new real[][] {{1,2,3},{4,5,6},{7,8,9}}),0)); +assert(close(determinant(new real[][] {{1,2},{1,2}}),0)); +assert(close(determinant(new real[][] {{1,2,3,4}, + {5,6,7,8},{9,10,11,12},{13,14,15,16}}),0)); +assert(close(determinant(new real[][] {{1,2,3,4}, + {5,0,7,8},{9,10,0,12},{13,14,15,16}}),-2376)); +assert(close(determinant(new real[][]{{1,-2,3,0},{4,-5,6,2},{-7,-8,10,5}, + {1,50,1,-2}}),-4588)); +EndTest(); |