#include "lst.h"
#include "archive.h"
#include "utils.h"
+#include "integral.h"
namespace GiNaC {
return basis_indices;
}
+exvector integral::get_free_indices() const
+{
+ if (a.get_free_indices().size() || b.get_free_indices().size())
+ throw (std::runtime_error("integral::get_free_indices: boundary values should not have free indices"));
+ return f.get_free_indices();
+}
+
/** Rename dummy indices in an expression.
*
* @param e Expression to work on
* performs contraction of dummy indices where possible and checks whether
* the free indices in sums are consistent.
*
+ * @param options Simplification options (currently unused)
* @return simplified expression */
ex ex::simplify_indexed(unsigned options) const
{
* scalar products by known values if desired.
*
* @param sp Scalar products to be replaced automatically
+ * @param options Simplification options (currently unused)
* @return simplified expression */
ex ex::simplify_indexed(const scalar_products & sp, unsigned options) const
{