![]() |
AmpGen 2.1
|
An coherent sum of resonant contributions, where at a position in phase-space \(\psi\), the (unnormalised) probability density is given by
\[ \mathcal{P}(\psi) = \left| \sum_{i} g_i \mathcal{A}_i(\psi) \right|^2, \]
where \(\mathcal{P}(\psi)\) is the probability, \(g_i\) is the coupling to an isobar channel, and \(\mathcal{A}_i(\psi)\) is the amplitude of the ith channel.
Definition at line 44 of file CoherentSum.h.
Public Types | |
using | EventList_type = EventList |
Public Member Functions | |
CoherentSum () | |
CoherentSum (const EventType &type, const AmpGen::MinuitParameterSet &mps, const std::string &prefix="") | |
virtual | ~CoherentSum () |
std::string | prefix () const |
auto & | operator[] (const size_t &index) |
auto & | operator[] (const size_t &index) const |
size_t | size () const |
real_t | getWeight () const |
real_t | norm (const Bilinears &norms) const |
real_t | norm () const |
real_t | getNorm (const Bilinears &normalisations) |
complex_t | norm (const size_t &x, const size_t &y) const |
complex_t | getVal (const Event &evt) const |
complex_t | getValNoCache (const Event &evt) const |
void | transferParameters () |
void | prepare () |
void | printVal (const Event &evt) |
void | updateNorms () |
void | setWeight (MinuitProxy param) |
void | makeTotalExpression () |
void | reset (bool resetEvents=false) |
void | setEvents (const EventList_type &list) |
void | setMC (const EventList_type &sim) |
real_v | operator() (const real_v *, const unsigned) const |
real_t | operator() (const Event &evt) const |
void | debug (const Event &evt, const std::string &nameMustContain="") |
void | generateSourceCode (const std::string &fname, const double &normalisation=1, bool add_mt=false) |
std::vector< FitFraction > | fitFractions (const LinearErrorPropagator &linProp) |
auto | matrixElements () const |
std::map< std::string, std::vector< unsigned int > > | getGroupedAmplitudes () |
Bilinears | norms () const |
std::function< real_t(const Event &)> | evaluator (const EventList_type *=nullptr) const |
std::function< complex_t(const Event &)> | amplitudeEvaluator (const EventList_type *=nullptr) const |
KeyedFunctors< double(Event)> | componentEvaluator (const EventList_type *=nullptr) const |
EventType | eventType () const |
const auto & | cache () const |
Protected Member Functions | |
void | addMatrixElement (std::pair< Particle, TotalCoupling > &particleWithCoupling, const MinuitParameterSet &mps) |
Protected Attributes | |
std::vector< MatrixElement > | m_matrixElements |
Vector of matrix elements. | |
Bilinears | m_normalisations |
Normalisation integrals. | |
Integrator | m_integrator |
Tool to calculate integrals. | |
const EventList_type * | m_events = {nullptr} |
Data events to evaluate PDF on. | |
FunctionCache< EventList_type, complex_v, Alignment::AoS > | m_cache |
Store of intermediate values for the PDF calculation. | |
bool | m_ownEvents = {false} |
Flag as to whether events are owned by this PDF or not. | |
EventType | m_eventType |
Final state for this amplitude. | |
size_t | m_prepareCalls = {0} |
Number of times prepare has been called. | |
size_t | m_lastPrint = {0} |
Last time verbose PDF info was printed. | |
size_t | m_printFreq = {0} |
Frequency to print verbose PDF info. | |
MinuitProxy | m_weight = {nullptr, 1} |
Weight (i.e. the normalised yield) | |
double | m_norm = {1} |
Normalisation integral. | |
bool | m_isConstant = {false} |
Flag for a constant PDF. | |
bool | m_dbThis = {false} |
Flag to generate amplitude level debugging. | |
bool | m_verbosity = {false} |
Flag for verbose printing. | |
std::string | m_objCache = {""} |
Directory that contains (cached) amplitude objects. | |
std::string | m_prefix = {""} |
Prefix for matrix elements. | |
const MinuitParameterSet * | m_mps = {nullptr} |
Definition at line 50 of file CoherentSum.h.
AmpGen::CoherentSum::CoherentSum | ( | ) |
AmpGen::CoherentSum::CoherentSum | ( | const EventType & | type, |
const AmpGen::MinuitParameterSet & | mps, | ||
const std::string & | prefix = "" ) |
|
virtual |
|
protected |
std::function< complex_t(const Event &)> AmpGen::CoherentSum::amplitudeEvaluator | ( | const EventList_type * | = nullptr | ) | const |
|
inline |
Definition at line 105 of file CoherentSum.h.
KeyedFunctors< double(Event)> AmpGen::CoherentSum::componentEvaluator | ( | const EventList_type * | = nullptr | ) | const |
void AmpGen::CoherentSum::debug | ( | const Event & | evt, |
const std::string & | nameMustContain = "" ) |
std::function< real_t(const Event &)> AmpGen::CoherentSum::evaluator | ( | const EventList_type * | = nullptr | ) | const |
|
inline |
Definition at line 104 of file CoherentSum.h.
std::vector< FitFraction > AmpGen::CoherentSum::fitFractions | ( | const LinearErrorPropagator & | linProp | ) |
void AmpGen::CoherentSum::generateSourceCode | ( | const std::string & | fname, |
const double & | normalisation = 1, | ||
bool | add_mt = false ) |
std::map< std::string, std::vector< unsigned int > > AmpGen::CoherentSum::getGroupedAmplitudes | ( | ) |
|
inline |
Definition at line 61 of file CoherentSum.h.
void AmpGen::CoherentSum::makeTotalExpression | ( | ) |
|
inline |
Definition at line 96 of file CoherentSum.h.
real_t AmpGen::CoherentSum::norm | ( | ) | const |
complex_t AmpGen::CoherentSum::norm | ( | const size_t & | x, |
const size_t & | y ) const |
|
inline |
Definition at line 99 of file CoherentSum.h.
Definition at line 90 of file CoherentSum.h.
|
inline |
Definition at line 58 of file CoherentSum.h.
|
inline |
Definition at line 59 of file CoherentSum.h.
|
inline |
Definition at line 56 of file CoherentSum.h.
void AmpGen::CoherentSum::prepare | ( | ) |
void AmpGen::CoherentSum::printVal | ( | const Event & | evt | ) |
void AmpGen::CoherentSum::reset | ( | bool | resetEvents = false | ) |
void AmpGen::CoherentSum::setEvents | ( | const EventList_type & | list | ) |
void AmpGen::CoherentSum::setMC | ( | const EventList_type & | sim | ) |
|
inline |
Definition at line 74 of file CoherentSum.h.
|
inline |
Definition at line 60 of file CoherentSum.h.
void AmpGen::CoherentSum::transferParameters | ( | ) |
void AmpGen::CoherentSum::updateNorms | ( | ) |
|
protected |
Definition at line 112 of file CoherentSum.h.
|
protected |
Definition at line 122 of file CoherentSum.h.
|
protected |
Definition at line 111 of file CoherentSum.h.
|
protected |
Definition at line 115 of file CoherentSum.h.
|
protected |
Definition at line 110 of file CoherentSum.h.
|
protected |
Definition at line 121 of file CoherentSum.h.
|
protected |
Definition at line 117 of file CoherentSum.h.
|
protected |
Definition at line 107 of file CoherentSum.h.
|
protected |
Definition at line 126 of file CoherentSum.h.
|
protected |
Definition at line 120 of file CoherentSum.h.
|
protected |
Definition at line 108 of file CoherentSum.h.
|
protected |
Definition at line 124 of file CoherentSum.h.
|
protected |
Definition at line 114 of file CoherentSum.h.
|
protected |
Definition at line 125 of file CoherentSum.h.
|
protected |
Definition at line 116 of file CoherentSum.h.
|
protected |
Definition at line 118 of file CoherentSum.h.
|
protected |
Definition at line 123 of file CoherentSum.h.
|
protected |
Definition at line 119 of file CoherentSum.h.