* Interface to GiNaC's special tensors. */
/*
- * GiNaC Copyright (C) 1999-2002 Johannes Gutenberg University Mainz, Germany
+ * GiNaC Copyright (C) 1999-2003 Johannes Gutenberg University Mainz, Germany
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
// functions overriding virtual functions from base classes
protected:
unsigned return_type(void) const { return return_types::noncommutative_composite; }
+
+ // non-virtual functions in this class
+public:
+ /** Replace dummy index in contracted-with object by the contracting
+ * object's second index (used internally for delta and metric tensor
+ * contractions. */
+ bool replace_contr_index(exvector::iterator self, exvector::iterator other) const;
};
* @return newly constructed epsilon tensor */
ex lorentz_eps(const ex & i1, const ex & i2, const ex & i3, const ex & i4, bool pos_sig = false);
-/** Create an epsilon tensor in a 4-dimensional projection of a D-dimensional
- * Minkowski space. It vanishes whenever one of the indices is not in the
- * set {0, 1, 2, 3}.
- *
- * @param i1 First index
- * @param i2 Second index
- * @param i3 Third index
- * @param i4 Fourth index
- * @param pos_sig Whether the signature of the metric is positive
- * @return newly constructed epsilon tensor */
-ex eps0123(const ex & i1, const ex & i2, const ex & i3, const ex & i4, bool pos_sig = false);
-
} // namespace GiNaC
#endif // ndef __GINAC_TENSOR_H__