12 #include "Utilities/Algorithm.hpp"
35 template <
typename RhsTensorIndexList,
typename LhsTensorIndexList,
36 typename RhsSymmetry,
typename RhsTensorIndexTypeList,
37 size_t NumIndices = tmpl::size<RhsSymmetry>::value,
41 template <
typename RhsTensorIndexList,
typename... LhsTensorIndices,
42 typename RhsSymmetry,
typename RhsTensorIndexTypeList,
43 size_t NumIndices,
size_t... Ints>
45 RhsTensorIndexList, tmpl::list<LhsTensorIndices...>, RhsSymmetry,
48 {LhsTensorIndices::value...}};
50 {tmpl::at_c<RhsTensorIndexList, Ints>::value...}};
53 rhs_tensorindex_values.begin(),
54 alg::find(rhs_tensorindex_values, lhs_tensorindex_values[Ints]))...}};
59 using tensorindextype_list =
60 tmpl::list<tmpl::at_c<RhsTensorIndexTypeList, lhs_to_rhs_map[Ints]>...>;
61 using structure = Tensor_detail::Structure<
62 symmetry, tmpl::at_c<RhsTensorIndexTypeList, lhs_to_rhs_map[Ints]>...>;