From 166001a94d339fd82e4fa02a2ba6775efe76418b Mon Sep 17 00:00:00 2001 From: Christian Bauer Date: Sat, 25 Jan 2003 00:33:55 +0000 Subject: [PATCH] synced to 1.0 --- ginac/tensor.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ginac/tensor.cpp b/ginac/tensor.cpp index f04a75c9..f786c4a1 100644 --- a/ginac/tensor.cpp +++ b/ginac/tensor.cpp @@ -179,6 +179,13 @@ ex tensdelta::eval_indexed(const basic & i) const const idx & i1 = ex_to(i.op(1)); const idx & i2 = ex_to(i.op(2)); + // The dimension of the indices must be equal, otherwise we use the minimal + // dimension + if (!i1.get_dim().is_equal(i2.get_dim())) { + ex min_dim = i1.minimal_dim(i2); + return i.subs(lst(i1 == i1.replace_dim(min_dim), i2 == i2.replace_dim(min_dim))); + } + // Trace of delta tensor is the (effective) dimension of the space if (is_dummy_pair(i1, i2)) { try { -- 2.44.0