]> www.ginac.de Git - ginac.git/commitdiff
- added fderivative class to archive exam
authorChristian Bauer <Christian.Bauer@uni-mainz.de>
Wed, 27 Jun 2001 19:15:31 +0000 (19:15 +0000)
committerChristian Bauer <Christian.Bauer@uni-mainz.de>
Wed, 27 Jun 2001 19:15:31 +0000 (19:15 +0000)
- added slightly more complex symmetries to indexed exam

check/exam_archive.cpp
check/exam_indexed.cpp

index 2566a5431814d53346d590893aa4cdf4a891bbad..94130adbde2ca62f62de7bd5822651c678dae9f5 100644 (file)
@@ -48,7 +48,8 @@ unsigned exam_archive(void)
          + dirac_gamma(varidx(mu, dim)) * dirac_gamma(varidx(mu, 4-dim, true))
            * color_T(idx(x, 8), 1) * color_h(idx(x, 8), idx(y, 8), idx(2, 8))
            * indexed(x, sy_anti(), idx(2*y+1, x), varidx(-mu, 5))
          + dirac_gamma(varidx(mu, dim)) * dirac_gamma(varidx(mu, 4-dim, true))
            * color_T(idx(x, 8), 1) * color_h(idx(x, 8), idx(y, 8), idx(2, 8))
            * indexed(x, sy_anti(), idx(2*y+1, x), varidx(-mu, 5))
-         - 2.4275 * spinor_metric(spinidx(x), spinidx(y));
+         - 2.4275 * spinor_metric(spinidx(x), spinidx(y))
+         + abs(x).series(x == y, 4);
 
        archive ar;
        ar.archive_ex(e, "expr 1");
 
        archive ar;
        ar.archive_ex(e, "expr 1");
index 8f778311ccd0d49968ef780962ec0ea73803d111..546eea78ae0b1b43856e76019400cc667efd7a54 100644 (file)
@@ -161,6 +161,16 @@ static unsigned symmetry_check(void)
            indexed(B, sy_anti(), k, l); // GiNaC 0.8.0 had a bug here
        result += check_equal_simplify(e, e);
 
            indexed(B, sy_anti(), k, l); // GiNaC 0.8.0 had a bug here
        result += check_equal_simplify(e, e);
 
+       symmetry R = sy_symm(sy_anti(0, 1), sy_anti(2, 3));
+       e = indexed(A, R, i, j, k, l) + indexed(A, R, j, i, k, l);
+       result += check_equal(e, 0);
+       e = indexed(A, R, i, j, k, l) + indexed(A, R, i, j, l, k);
+       result += check_equal(e, 0);
+       e = indexed(A, R, i, j, k, l) - indexed(A, R, j, i, l, k);
+       result += check_equal(e, 0);
+       e = indexed(A, R, i, j, k, l) + indexed(A, R, k, l, j, i);
+       result += check_equal(e, 0);
+
        e = indexed(A, i, j);
        result += check_equal(symmetrize(e) + antisymmetrize(e), e);
        e = indexed(A, sy_symm(), i, j, k, l);
        e = indexed(A, i, j);
        result += check_equal(symmetrize(e) + antisymmetrize(e), e);
        e = indexed(A, sy_symm(), i, j, k, l);