Cadabra
Computer algebra system for field theory problems
Toggle main menu visibility
Loading...
Searching...
No Matches
core
algorithms
expand_dummies.hh
Go to the documentation of this file.
1
2
#pragma once
3
4
#include <set>
5
#include "
Algorithm.hh
"
6
7
namespace
cadabra
{
8
9
class
expand_dummies
:
public
Algorithm
{
10
public
:
11
expand_dummies
(
const
Kernel
&
kernel
,
Ex
& ex,
const
Ex
*
components
=
nullptr
,
bool
zero_missing_components
=
true
);
12
13
virtual
bool
can_apply
(
iterator
)
override
;
14
virtual
result_t
apply
(
iterator
&)
override
;
15
16
private
:
17
void
enumerate_patterns
();
18
void
fill_components
(Ex::iterator it);
19
20
Ex_comparator
comp
;
21
const
Ex
*
components
;
22
std::vector<Ex>
component_patterns
;
23
bool
zero_missing_components
;
24
};
25
26
}
Algorithm.hh
cadabra::Algorithm::Algorithm
Algorithm(const Kernel &, Ex &)
Initialise the algorithm with a reference to the expression tree, but do not yet do anything with thi...
Definition
Algorithm.cc:52
cadabra::Algorithm::result_t
Ex::result_t result_t
Definition
Algorithm.hh:65
cadabra::Ex_comparator
A generic tree comparison class which will take into account index contractions and will also keep tr...
Definition
Compare.hh:197
cadabra::Ex
Definition
Storage.hh:170
cadabra::ExManip::iterator
Ex::iterator iterator
Definition
ExManip.hh:12
cadabra::ExManip::kernel
const Kernel & kernel
Definition
ExManip.hh:43
cadabra::Kernel
Definition
Kernel.hh:15
cadabra::expand_dummies::enumerate_patterns
void enumerate_patterns()
Definition
expand_dummies.cc:22
cadabra::expand_dummies::component_patterns
std::vector< Ex > component_patterns
Definition
expand_dummies.hh:22
cadabra::expand_dummies::zero_missing_components
bool zero_missing_components
Definition
expand_dummies.hh:23
cadabra::expand_dummies::fill_components
void fill_components(Ex::iterator it)
Definition
expand_dummies.cc:150
cadabra::expand_dummies::apply
virtual result_t apply(iterator &) override
Definition
expand_dummies.cc:84
cadabra::expand_dummies::components
const Ex * components
Definition
expand_dummies.hh:21
cadabra::expand_dummies::expand_dummies
expand_dummies(const Kernel &kernel, Ex &ex, const Ex *components=nullptr, bool zero_missing_components=true)
Definition
expand_dummies.cc:13
cadabra::expand_dummies::comp
Ex_comparator comp
Definition
expand_dummies.hh:20
cadabra::expand_dummies::can_apply
virtual bool can_apply(iterator) override
Definition
expand_dummies.cc:56
cadabra
Functions to handle the exchange properties of two or more symbols in a product.
Definition
Adjform.cc:83
Generated by
1.17.0