|
template<typename TensorLHS , index... IndicesLHS, typename TensorRHS , index... IndicesRHS> |
auto constexpr | tatooine::einstein_notation::contract (indexed_dynamic_tensor< TensorLHS, IndicesLHS... > lhs, indexed_dynamic_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::operator* (indexed_dynamic_tensor< TensorLHS, IndicesLHS... > lhs, indexed_dynamic_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename TensorRHS , index... IndicesRHS> |
auto constexpr | tatooine::einstein_notation::contract (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::operator* (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename... IndexedTensorLHS, typename TensorRHS , index... IndicesRHS, std::size_t... LHSSeq> |
auto | tatooine::einstein_notation::contract (contracted_static_tensor< IndexedTensorLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs, std::index_sequence< LHSSeq... >) |
|
template<typename... IndexedTensorLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::contract (contracted_static_tensor< IndexedTensorLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename... IndexedTensorLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::operator* (contracted_static_tensor< IndexedTensorLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<index... IndicesLHS, typename TensorLHS , typename... IndexedTensorRHS, std::size_t... RHSSeq> |
auto | tatooine::einstein_notation::contract (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, contracted_static_tensor< IndexedTensorRHS... > rhs, std::index_sequence< RHSSeq... >) |
|
template<index... IndicesLHS, typename TensorLHS , typename... IndexedTensorRHS> |
auto | tatooine::einstein_notation::contract (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, contracted_static_tensor< IndexedTensorRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename... IndexedTensorRHS> |
auto | tatooine::einstein_notation::operator* (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, contracted_static_tensor< IndexedTensorRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::operator+ (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename... IndexedTensorLHS, typename TensorRHS , index... IndicesRHS> |
auto | tatooine::einstein_notation::operator+ (contracted_static_tensor< IndexedTensorLHS... > lhs, indexed_static_tensor< TensorRHS, IndicesRHS... > rhs) |
|
template<typename TensorLHS , index... IndicesLHS, typename... TensorsRHS> |
auto | tatooine::einstein_notation::operator+ (indexed_static_tensor< TensorLHS, IndicesLHS... > lhs, contracted_static_tensor< TensorsRHS... > rhs) |
|
template<typename... TensorsLHS, typename... TensorsRHS> |
auto | tatooine::einstein_notation::operator+ (contracted_static_tensor< TensorsLHS... > lhs, contracted_static_tensor< TensorsRHS... > rhs) |
|
template<typename... ContractedTensorsLHS, typename... TensorsRHS, std::size_t... Seq> |
auto | tatooine::einstein_notation::add (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, contracted_static_tensor< TensorsRHS... > rhs, std::index_sequence< Seq... >) |
|
template<typename... TensorsLHS, typename... ContractedTensorsRHS, std::size_t... Seq> |
auto | tatooine::einstein_notation::add (contracted_static_tensor< TensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs, std::index_sequence< Seq... >) |
|
template<typename... ContractedTensorsLHS, typename... ContractedTensorsRHS, std::size_t... Seq0, std::size_t... Seq1> |
auto | tatooine::einstein_notation::add (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs, std::index_sequence< Seq0... >, std::index_sequence< Seq1... >) |
|
template<typename... ContractedTensorsLHS, typename... TensorsRHS> |
auto | tatooine::einstein_notation::add (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, contracted_static_tensor< TensorsRHS... > rhs) |
|
template<typename... TensorsLHS, typename... ContractedTensorsRHS> |
auto | tatooine::einstein_notation::add (contracted_static_tensor< TensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs) |
|
template<typename... ContractedTensorsLHS, typename... ContractedTensorsRHS> |
auto | tatooine::einstein_notation::add (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs) |
|
template<typename... ContractedTensorsLHS, typename... TensorsRHS> |
auto | tatooine::einstein_notation::operator+ (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, contracted_static_tensor< TensorsRHS... > rhs) |
|
template<typename... TensorsLHS, typename... ContractedTensorsRHS> |
auto | tatooine::einstein_notation::operator+ (contracted_static_tensor< TensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs) |
|
template<typename... ContractedTensorsLHS, typename... ContractedTensorsRHS> |
auto | tatooine::einstein_notation::operator+ (added_contracted_static_tensor< ContractedTensorsLHS... > lhs, added_contracted_static_tensor< ContractedTensorsRHS... > rhs) |
|