AmpGen
2.1
Toggle main menu visibility
Loading...
Searching...
No Matches
Simplify.h
Go to the documentation of this file.
1
#ifndef AMPGEN_SIMPLIFY_H
2
#define AMPGEN_SIMPLIFY_H 1
3
#include <complex>
4
#include <string>
5
#include <utility>
6
#include <vector>
7
8
#include "
AmpGen/Expression.h
"
9
10
namespace
AmpGen
{
11
Expression
Simplify
(
const
Expression
&expression);
12
13
class
NormalOrderedExpression
{
14
public
:
15
struct
Term
{
16
std::complex<double>
m_prefactor
;
17
std::vector<std::pair<Expression, std::string>>
m_terms
;
18
Expression
m_divisor
;
19
std::string
m_expressionAsString
;
20
bool
m_markForRemoval
;
21
void
addExpression
(
const
Expression
&expression);
22
Term
(
const
Expression
&expression);
23
operator
Expression
();
24
};
25
void
addTerm
(
const
Expression
&expression);
26
NormalOrderedExpression
(
const
Expression
&expression,
const
bool
&expandSubTrees =
false
);
27
void
groupExpressions
();
28
29
operator
Expression
();
30
std::vector<Expression>
ExpandBrackets
(
const
Expression
&expression);
31
std::vector<Term>
terms
()
const
{
return
m_terms; }
32
33
private
:
34
std::vector<Term> m_terms;
35
bool
m_expandSubTrees;
36
};
37
}
38
39
#endif
Expression.h
AmpGen::Expression
Wrapper class for shared_ptrs to virtual expressions for use in conjunction with operators to build e...
Definition
Expression.h:135
AmpGen::NormalOrderedExpression::terms
std::vector< Term > terms() const
Definition
Simplify.h:31
AmpGen::NormalOrderedExpression::NormalOrderedExpression
NormalOrderedExpression(const Expression &expression, const bool &expandSubTrees=false)
AmpGen::NormalOrderedExpression::ExpandBrackets
std::vector< Expression > ExpandBrackets(const Expression &expression)
AmpGen::NormalOrderedExpression::groupExpressions
void groupExpressions()
AmpGen::NormalOrderedExpression::addTerm
void addTerm(const Expression &expression)
AmpGen
Definition
AddCPConjugate.h:2
AmpGen::Simplify
Expression Simplify(const Expression &expression)
AmpGen::NormalOrderedExpression::Term::m_divisor
Expression m_divisor
Definition
Simplify.h:18
AmpGen::NormalOrderedExpression::Term::m_prefactor
std::complex< double > m_prefactor
Definition
Simplify.h:16
AmpGen::NormalOrderedExpression::Term::Term
Term(const Expression &expression)
AmpGen::NormalOrderedExpression::Term::addExpression
void addExpression(const Expression &expression)
AmpGen::NormalOrderedExpression::Term::m_markForRemoval
bool m_markForRemoval
Definition
Simplify.h:20
AmpGen::NormalOrderedExpression::Term::m_expressionAsString
std::string m_expressionAsString
Definition
Simplify.h:19
AmpGen::NormalOrderedExpression::Term::m_terms
std::vector< std::pair< Expression, std::string > > m_terms
Definition
Simplify.h:17
AmpGen
Simplify.h
Generated on
for AmpGen by
1.17.0