Cadabra
Computer algebra system for field theory problems
Public Types | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
cadabra::AdjformEx Class Reference

#include <Adjform.hh>

Public Types

using rational_type = mpq_class
 
using map_t = std::map< Adjform, rational_type >
 
using iterator = map_t::iterator
 
using const_iterator = map_t::const_iterator
 

Public Member Functions

 AdjformEx ()
 
 AdjformEx (const Adjform &adjform, const rational_type &value=1, const Ex &prefactor=Ex())
 
 AdjformEx (const Adjform &adjform, const rational_type &value, Ex::iterator prefactor)
 
 AdjformEx (Ex::iterator it, IndexMap &index_map, const Kernel &kernel)
 
rational_type compare (const AdjformEx &other) const
 
void combine (const AdjformEx &other)
 
void combine (const AdjformEx &other, rational_type factor)
 
void multiply (const rational_type &k)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
void clear ()
 
size_t size () const
 
size_t max_size () const
 
size_t n_indices () const
 
bool empty () const
 
const Exget_prefactor_ex () const
 
Exget_prefactor_ex ()
 
const Exget_tensor_ex () const
 
Exget_tensor_ex ()
 
const rational_typeget (const Adjform &adjform) const
 
void set (const Adjform &adjform, const rational_type &value=1)
 
void add (const Adjform &adjform, const rational_type &value=1)
 
void apply_young_symmetry (const std::vector< size_t > &indices, bool antisymmetric)
 
void apply_ident_symmetry (const std::vector< size_t > &positions, size_t n_indices)
 
void apply_ident_symmetry (const std::vector< size_t > &positions, size_t n_indices, const std::vector< std::vector< int >> &commutation_matrix)
 
void apply_cyclic_symmetry ()
 

Private Member Functions

void set_ (const Adjform &adjform, const rational_type &value=1)
 
void add_ (const Adjform &adjform, const rational_type &value=1)
 

Private Attributes

map_t data
 
Ex prefactor
 
Ex tensor
 

Static Private Attributes

static rational_type zero = 0
 

Member Typedef Documentation

◆ const_iterator

using cadabra::AdjformEx::const_iterator = map_t::const_iterator

◆ iterator

using cadabra::AdjformEx::iterator = map_t::iterator

◆ map_t

◆ rational_type

Constructor & Destructor Documentation

◆ AdjformEx() [1/4]

cadabra::AdjformEx::AdjformEx ( )

◆ AdjformEx() [2/4]

cadabra::AdjformEx::AdjformEx ( const Adjform adjform,
const rational_type value = 1,
const Ex prefactor = Ex() 
)

◆ AdjformEx() [3/4]

cadabra::AdjformEx::AdjformEx ( const Adjform adjform,
const rational_type value,
Ex::iterator  prefactor 
)

◆ AdjformEx() [4/4]

cadabra::AdjformEx::AdjformEx ( Ex::iterator  it,
IndexMap index_map,
const Kernel kernel 
)

Member Function Documentation

◆ add()

void cadabra::AdjformEx::add ( const Adjform adjform,
const rational_type value = 1 
)

◆ add_()

void cadabra::AdjformEx::add_ ( const Adjform adjform,
const rational_type value = 1 
)
private

◆ apply_cyclic_symmetry()

void cadabra::AdjformEx::apply_cyclic_symmetry ( )

◆ apply_ident_symmetry() [1/2]

void cadabra::AdjformEx::apply_ident_symmetry ( const std::vector< size_t > &  positions,
size_t  n_indices 
)

◆ apply_ident_symmetry() [2/2]

void cadabra::AdjformEx::apply_ident_symmetry ( const std::vector< size_t > &  positions,
size_t  n_indices,
const std::vector< std::vector< int >> &  commutation_matrix 
)

◆ apply_young_symmetry()

void cadabra::AdjformEx::apply_young_symmetry ( const std::vector< size_t > &  indices,
bool  antisymmetric 
)

◆ begin() [1/2]

AdjformEx::iterator cadabra::AdjformEx::begin ( )

◆ begin() [2/2]

AdjformEx::const_iterator cadabra::AdjformEx::begin ( ) const

◆ clear()

void cadabra::AdjformEx::clear ( )

◆ combine() [1/2]

void cadabra::AdjformEx::combine ( const AdjformEx other)

◆ combine() [2/2]

void cadabra::AdjformEx::combine ( const AdjformEx other,
AdjformEx::rational_type  factor 
)

◆ compare()

AdjformEx::rational_type cadabra::AdjformEx::compare ( const AdjformEx other) const

◆ empty()

bool cadabra::AdjformEx::empty ( ) const

◆ end() [1/2]

AdjformEx::iterator cadabra::AdjformEx::end ( )

◆ end() [2/2]

AdjformEx::const_iterator cadabra::AdjformEx::end ( ) const

◆ get()

const AdjformEx::rational_type & cadabra::AdjformEx::get ( const Adjform adjform) const

◆ get_prefactor_ex() [1/2]

Ex & cadabra::AdjformEx::get_prefactor_ex ( )

◆ get_prefactor_ex() [2/2]

const Ex & cadabra::AdjformEx::get_prefactor_ex ( ) const

◆ get_tensor_ex() [1/2]

Ex & cadabra::AdjformEx::get_tensor_ex ( )

◆ get_tensor_ex() [2/2]

const Ex & cadabra::AdjformEx::get_tensor_ex ( ) const

◆ max_size()

size_t cadabra::AdjformEx::max_size ( ) const

◆ multiply()

void cadabra::AdjformEx::multiply ( const rational_type k)

◆ n_indices()

size_t cadabra::AdjformEx::n_indices ( ) const

◆ set()

void cadabra::AdjformEx::set ( const Adjform adjform,
const rational_type value = 1 
)

◆ set_()

void cadabra::AdjformEx::set_ ( const Adjform adjform,
const rational_type value = 1 
)
private

◆ size()

size_t cadabra::AdjformEx::size ( ) const

Member Data Documentation

◆ data

map_t cadabra::AdjformEx::data
private

◆ prefactor

Ex cadabra::AdjformEx::prefactor
private

◆ tensor

Ex cadabra::AdjformEx::tensor
private

◆ zero

AdjformEx::rational_type cadabra::AdjformEx::zero = 0
staticprivate

The documentation for this class was generated from the following files: