SyTen
tensorblock_handle_fermions.h File Reference

Helpers to deal with fermions within TensorBlock structures. More...

+ Include dependency graph for tensorblock_handle_fermions.h:
+ This graph shows which files directly or indirectly include this file:

Namespaces

namespace  syten
 Syten namespace.
 

Functions

template<Rank contracted, Rank rank>
std::array< Index, rank > syten::construct_product_target_order_a (std::array< int, rank > const &c_a)
 Given a product specifier c_a, constructs a "target order" where each leg fermionically should be such as to not induce further swaps during the product for the A-tensor. More...
 
template<Rank contracted, Rank rank>
std::array< Index, rank > syten::construct_product_target_order_b (std::array< int, rank > const &c_b)
 Given a product specifier c_b, constructs a "target order" where each leg fermionically should be such as to not induce further swaps during the product for the B-tensor. More...
 
template<Rank rank>
bool syten::is_perm_fermionic (TensorBlock< rank > const &in, ConstSpan< int > perms, ConstSpan< Index > current_order)
 Returns true if swapping the legs of in as to conform to perm induces a fermionic factor. More...
 
template<Rank rank>
std::array< int, rank > syten::perm_to_change_fermionic_order (ConstSpan< Index > const &from, ConstSpan< Index > const &to)
 Generates a permutation which, given an existing fermionic order from, changes this order to to. More...
 

Detailed Description

Helpers to deal with fermions within TensorBlock structures.