Hammer  1.0.0
Helicity Amplitude Module for Matrix Element Reweighting
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Hammer::ProcGraph Class Reference

Decay process class. More...

#include <ProcGraph.hh>

+ Collaboration diagram for Hammer::ProcGraph:

Public Types

using EdgeDictType = EdgeWeightDict< DepthLevelDict< std::vector< EdgeEntry >>>
 
using VertexListType = std::vector< VertexEntry >
 
using SelAmplitudeDict = VertexDict< SelectedAmplEntry >
 

Public Member Functions

 ProcGraph ()
 
 ProcGraph (const ProcGraph &other)=delete
 
ProcGraph & operator= (const ProcGraph &other)=delete
 
 ProcGraph (ProcGraph &&other)=delete
 
ProcGraph & operator= (ProcGraph &&other)=delete
 
 ~ProcGraph () noexcept=default
 
void initialize (const DictionaryManager *dictionaries, const Process *inputs)
 
std::tuple< Particle,
ParticleList, ParticleList > 
getParticleVectors (AmplType ampltype, ParticleIndex parent, ParticleIndex daughter) const
 
double getMultFactor (AmplEntry ampl, AmplEntry ancestorAmpl, bool isAncestorGrandparent) const
 
double getMassFactor (AmplEntry ampl, ParticleIndex parent, ParticleIndex daughter) const
 
const SelAmplitudeDict & selectedAmplitudes () const
 
const UniqueParticleIndices & assignedVertices () const
 

Protected Member Functions

Log & getLog () const
 logging facility More...
 
void makeDepthMap (ParticleIndex parent, size_t seed)
 
void makeVertexEdgeTrees ()
 
void selectEdgeVertices ()
 
bool isAssignedVertex (ParticleIndex index) const
 

Private Attributes

VertexDict< size_t > _depthMap
 
EdgeDictType _implementedEdges
 
VertexListType _implementedVertices
 
SelAmplitudeDict _selectedAmplitudes
 
UniqueParticleIndices _assignedVertices
 
const Process * _inputs
 
const DictionaryManager * _dictionaries
 

Detailed Description

Decay process class.

Contains the amplitudes, weights and info associated to a decay, ...

Definition at line 69 of file ProcGraph.hh.

Member Typedef Documentation

Definition at line 82 of file ProcGraph.hh.

Definition at line 83 of file ProcGraph.hh.

Constructor & Destructor Documentation

Hammer::ProcGraph::ProcGraph ( )

Definition at line 58 of file ProcGraph.cc.

Hammer::ProcGraph::ProcGraph ( const ProcGraph &  other)
delete
Hammer::ProcGraph::ProcGraph ( ProcGraph &&  other)
delete
Hammer::ProcGraph::~ProcGraph ( )
defaultnoexcept

Member Function Documentation

const UniqueParticleIndices & Hammer::ProcGraph::assignedVertices ( ) const

Definition at line 72 of file ProcGraph.cc.

Log & Hammer::ProcGraph::getLog ( ) const
protected

logging facility

Returns
stream to be used for logging

Definition at line 258 of file ProcGraph.cc.

double Hammer::ProcGraph::getMassFactor ( AmplEntry  ampl,
ParticleIndex  parent,
ParticleIndex  daughter 
) const
Parameters
[in]ampl
[in]parent
[in]daughter

Definition at line 207 of file ProcGraph.cc.

double Hammer::ProcGraph::getMultFactor ( AmplEntry  ampl,
AmplEntry  ancestorAmpl,
bool  isAncestorGrandparent 
) const
Parameters
[in]ampl
[in]ancestorAmpl
[in]isAncestorGrandparent

Definition at line 240 of file ProcGraph.cc.

tuple< Particle, ParticleList, ParticleList > Hammer::ProcGraph::getParticleVectors ( AmplType  ampltype,
ParticleIndex  parent,
ParticleIndex  daughter 
) const
Parameters
[in]ampltype
[in]parent
[in]daughter

Definition at line 175 of file ProcGraph.cc.

void Hammer::ProcGraph::initialize ( const DictionaryManager *  dictionaries,
const Process *  inputs 
)
Parameters
[in]dictionaries
[in]inputs

Definition at line 61 of file ProcGraph.cc.

bool Hammer::ProcGraph::isAssignedVertex ( ParticleIndex  index) const
protected

Definition at line 140 of file ProcGraph.cc.

void Hammer::ProcGraph::makeDepthMap ( ParticleIndex  parent,
size_t  seed 
)
protected

Definition at line 76 of file ProcGraph.cc.

void Hammer::ProcGraph::makeVertexEdgeTrees ( )
protected

Definition at line 89 of file ProcGraph.cc.

ProcGraph& Hammer::ProcGraph::operator= ( const ProcGraph &  other)
delete
ProcGraph& Hammer::ProcGraph::operator= ( ProcGraph &&  other)
delete
const ProcGraph::SelAmplitudeDict & Hammer::ProcGraph::selectedAmplitudes ( ) const

Definition at line 69 of file ProcGraph.cc.

void Hammer::ProcGraph::selectEdgeVertices ( )
protected

Definition at line 144 of file ProcGraph.cc.

Member Data Documentation

UniqueParticleIndices Hammer::ProcGraph::_assignedVertices
private

Definition at line 134 of file ProcGraph.hh.

VertexDict<size_t> Hammer::ProcGraph::_depthMap
private

Definition at line 129 of file ProcGraph.hh.

const DictionaryManager* Hammer::ProcGraph::_dictionaries
private

Definition at line 137 of file ProcGraph.hh.

EdgeDictType Hammer::ProcGraph::_implementedEdges
private

Definition at line 130 of file ProcGraph.hh.

VertexListType Hammer::ProcGraph::_implementedVertices
private

Definition at line 131 of file ProcGraph.hh.

const Process* Hammer::ProcGraph::_inputs
private

Definition at line 136 of file ProcGraph.hh.

SelAmplitudeDict Hammer::ProcGraph::_selectedAmplitudes
private

Definition at line 133 of file ProcGraph.hh.


The documentation for this class was generated from the following files: