Cadabra
Computer algebra system for field theory problems
|
#include <cstddef>
#include <iostream>
#include <gmpxx.h>
#include <string>
#include <vector>
#include <set>
#include <map>
#include <stdint.h>
#include <assert.h>
#include <initializer_list>
#include "tree.hh"
Go to the source code of this file.
Classes | |
class | cadabra::str_node |
Elementary building block for a mathematical expression. More... | |
struct | cadabra::str_node::flag_t |
class | cadabra::Ex |
Basic storage class for symbolic mathemematical expressions. More... | |
class | cadabra::nset_it_less |
Compare two nset iterators by comparing the strings to which they point. More... | |
Namespaces | |
cadabra | |
Functions to handle the exchange properties of two or more symbols in a product. | |
Typedefs | |
typedef mpq_class | cadabra::multiplier_t |
typedef std::set< std::string > | cadabra::nset_t |
typedef std::set< multiplier_t > | cadabra::rset_t |
typedef uintptr_t | cadabra::hashval_t |
Functions | |
long | cadabra::to_long (multiplier_t mul) |
double | cadabra::to_double (multiplier_t mul) |
std::string | cadabra::to_string (long num) |
void | cadabra::multiply (rset_t::iterator &, multiplier_t) |
Helper functions for manipulation of multipliers. More... | |
void | cadabra::add (rset_t::iterator &num, multiplier_t fac) |
void | cadabra::zero (rset_t::iterator &num) |
void | cadabra::one (rset_t::iterator &num) |
void | cadabra::flip_sign (rset_t::iterator &num) |
void | cadabra::half (rset_t::iterator &num) |
void | cadabra::set (rset_t::iterator &num, multiplier_t fac) |
template<typename T > | |
bool | cadabra::is_in (const T &val, const std::initializer_list< T > &list) |
std::ostream & | operator<< (std::ostream &, const cadabra::Ex &) |
Bare output operator for Ex objects, mainly to provide a simple way to generate debugging output. More... | |
std::ostream & | operator<< (std::ostream &, cadabra::Ex::iterator) |
std::ostream& operator<< | ( | std::ostream & | str, |
cadabra::Ex::iterator | it | ||
) |