20 #include "tensor_fold.cc"
43 do_fold<cdouble, false>(output, a, ndx1, b, ndx2);
66 do_fold<cdouble, true>(output, a, ndx1, b, ndx2);
70 void fold_into(Tensor<cdouble> &c,
const Tensor<cdouble> &a,
int ndx1,
71 const Tensor<cdouble> &b,
int ndx2)
73 do_fold<cdouble, false>(c, a, ndx1, b, ndx2);
77 const Tensor<cdouble> mmult(
const Tensor<cdouble> &m1,
const Tensor<cdouble> &m2)
79 return fold(m1, -1, m2, 0);
82 void mmult_into(Tensor<cdouble> &c,
const Tensor<cdouble> &m1,
const Tensor<cdouble> &m2)
84 fold_into(c, m1, -1, m2, 0);
const Tensor< cdouble > foldc(const Tensor< cdouble > &a, int ndx1, const Tensor< cdouble > &b, int ndx2)
Contraction of two tensors.
const Tensor< cdouble > fold(const Tensor< cdouble > &a, int ndx1, const Tensor< cdouble > &b, int ndx2)
Contraction of two tensors.