From: Jens Vollinga Date: Wed, 1 Aug 2007 22:27:25 +0000 (+0000) Subject: Improved clifford_moebius_map() [V.Kisil] X-Git-Tag: release_1-4-0~15 X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?a=commitdiff_plain;h=c8292b5d0062c6455dd553fdc5d7141ea03547b1;p=ginac.git Improved clifford_moebius_map() [V.Kisil] --- diff --git a/ginac/clifford.cpp b/ginac/clifford.cpp index a434a882..6e0d36c2 100644 --- a/ginac/clifford.cpp +++ b/ginac/clifford.cpp @@ -1324,11 +1324,10 @@ ex clifford_moebius_map(const ex & a, const ex & b, const ex & c, const ex & d, ex clifford_moebius_map(const ex & M, const ex & v, const ex & G, unsigned char rl) { - if (is_a(M)) - return clifford_moebius_map(ex_to(M)(0,0), ex_to(M)(0,1), - ex_to(M)(1,0), ex_to(M)(1,1), v, G, rl); + if (is_a(M) && (ex_to(M).rows() == 2) && (ex_to(M).cols() == 2)) + return clifford_moebius_map(M.op(0), M.op(1), M.op(2), M.op(3), v, G, rl); else - throw(std::invalid_argument("clifford_moebius_map(): parameter M should be a matrix")); + throw(std::invalid_argument("clifford_moebius_map(): parameter M should be a 2x2 matrix")); } } // namespace GiNaC