Cadabra
Computer algebra system for field theory problems
Classes | Macros | Functions
meld.cc File Reference
#include <vector>
#include <numeric>
#include "properties/Trace.hh"
#include "properties/TableauBase.hh"
#include "Cleanup.hh"
#include "Hash.hh"
#include "meld.hh"
#include "collect_terms.hh"
#include "DisplayTerminal.hh"
#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/matrix_proxy.hpp>
#include <boost/numeric/ublas/lu.hpp>

Classes

struct  LinearSolver< T >
 
struct  TraceTerm
 

Macros

#define APPLY_ROUTINE(name)
 

Functions

std::string ex_to_string (const Kernel &kernel, const Ex &ex)
 
std::string ex_to_string (const Kernel &kernel, Ex::iterator it)
 
std::vector< Ex::iterator > split_ex (Ex::iterator it, const std::string &delim)
 
bool has_TableauBase (const Kernel &kernel, Ex::iterator it)
 
bool has_Trace (const Kernel &kernel, Ex::iterator it)
 
void cycle_vec (std::vector< size_t > &vec, size_t n)
 
std::vector< TraceTermcollect_trace_terms (Ex::iterator it, const Kernel &kernel, IndexMap &index_map)
 

Macro Definition Documentation

◆ APPLY_ROUTINE

#define APPLY_ROUTINE (   name)
Value:
if (can_apply_##name (it)) { \
switch (apply_##name (it)) { \
case result_t::l_applied: \
res = result_t::l_applied; \
break; \
case result_t::l_error: \
return result_t::l_error; \
break; \
default: \
break; \
} \
}

Function Documentation

◆ collect_trace_terms()

std::vector<TraceTerm> collect_trace_terms ( Ex::iterator  it,
const Kernel kernel,
IndexMap index_map 
)

◆ cycle_vec()

void cycle_vec ( std::vector< size_t > &  vec,
size_t  n 
)

◆ ex_to_string() [1/2]

std::string ex_to_string ( const Kernel kernel,
const Ex ex 
)

◆ ex_to_string() [2/2]

std::string ex_to_string ( const Kernel kernel,
Ex::iterator  it 
)

◆ has_TableauBase()

bool has_TableauBase ( const Kernel kernel,
Ex::iterator  it 
)

◆ has_Trace()

bool has_Trace ( const Kernel kernel,
Ex::iterator  it 
)

◆ split_ex()

std::vector<Ex::iterator> split_ex ( Ex::iterator  it,
const std::string &  delim 
)