![]() |
HepMC Reference DocumentationHepMC |
Classes | |
class | Flow |
The flow object. More... | |
class | GenCrossSection |
The GenCrossSection class stores the generated cross section. More... | |
class | GenEvent |
The GenEvent class is the core of HepMC. More... | |
class | GenParticle |
The GenParticle class contains information about generated particles. More... | |
class | GenVertex |
GenVertex contains information about decay vertices. More... | |
class | HeavyIon |
The HeavyIon class stores information about heavy ions. More... | |
class | HEPEVT_Wrapper |
Generic Wrapper for the fortran HEPEVT common block. More... | |
class | IO_AsciiParticles |
event input/output in ascii format for eye and machine reading More... | |
class | IO_BaseClass |
all input/output classes inherit from IO_BaseClass More... | |
class | IO_Exception |
IO exception handling. More... | |
class | IO_GenEvent |
IO_GenEvent also deals with HeavyIon and PdfInfo. More... | |
class | IO_HEPEVT |
HEPEVT IO class. More... | |
class | IO_HERWIG |
IO_HERWIG is used to get Herwig information. More... | |
class | IO_PDG_ParticleDataTable |
an example ParticleDataTable IO method More... | |
class | ParticleData |
an example ParticleData class More... | |
class | ParticleDataTable |
an example ParticleDataTable class More... | |
class | PdfInfo |
The PdfInfo class stores PDF information. More... | |
class | Polarization |
The Polarization class stores theta and phi for a GenParticle. More... | |
class | FourVector |
FourVector is a simple representation of a physics 4 vector. More... | |
class | ThreeVector |
ThreeVector is a simple representation of a position or displacement 3 vector. More... | |
class | StreamInfo |
StreamInfo contains extra information needed when using streaming IO. More... | |
class | TempParticleMap |
TempParticleMap is a temporary GenParticle* container used during input. More... | |
class | WeightContainer |
Container for the Weights associated with an event or vertex. More... | |
Namespaces | |
namespace | detail |
namespace | Units |
Enumerations | |
enum | IteratorRange { parents, children, family, ancestors, descendants, relatives } |
type of iteration More... | |
enum | known_io { gen = 1, ascii, extascii, ascii_pdt, extascii_pdt } |
The known_io enum is used to track which type of input is being read. More... | |
Functions | |
bool | compareGenEvent (GenEvent *, GenEvent *) |
bool | compareSignalProcessVertex (GenEvent *, GenEvent *) |
bool | compareBeamParticles (GenEvent *, GenEvent *) |
bool | compareWeights (GenEvent *, GenEvent *) |
bool | compareVertices (GenEvent *, GenEvent *) |
bool | compareParticles (GenEvent *, GenEvent *) |
bool | compareVertex (GenVertex *v1, GenVertex *v2) |
std::ostream & | operator<< (std::ostream &os, GenCrossSection &xs) |
std::istream & | operator>> (std::istream &is, GenCrossSection &xs) |
template<class InputIterator, class OutputIterator, class Predicate> | |
void | copy_if (InputIterator first, InputIterator last, OutputIterator out, Predicate pred) |
define the type of iterator to use | |
std::ostream & | operator<< (std::ostream &, GenEvent &) |
standard streaming IO output operator | |
std::istream & | operator>> (std::istream &, GenEvent &) |
standard streaming IO input operator | |
std::istream & | set_input_units (std::istream &, Units::MomentumUnit, Units::LengthUnit) |
set the units for this input stream | |
std::ostream & | write_HepMC_IO_block_begin (std::ostream &) |
Explicitly write the begin block lines that IO_GenEvent uses. | |
std::ostream & | write_HepMC_IO_block_end (std::ostream &) |
Explicitly write the end block line that IO_GenEvent uses. | |
GenEvent & | convert_units (GenEvent &evt, Units::MomentumUnit m, Units::LengthUnit l) |
std::ostream & | operator<< (std::ostream &, HeavyIon const *) |
Write the contents of HeavyIon to an output stream. | |
std::istream & | operator>> (std::istream &, HeavyIon *) |
Read the contents of HeavyIon from an input stream. | |
double | clifetime_from_width (double width) |
set lifetime from width | |
std::ostream & | operator<< (std::ostream &, PdfInfo const *) |
std::istream & | operator>> (std::istream &, PdfInfo *) |
bool | not_in_vector (std::vector< HepMC::GenParticle * > *, GenParticle *) |
returns true if it cannot find GenParticle* in the vector | |
std::vector< HepMC::GenParticle * >::iterator | already_in_vector (std::vector< GenParticle * > *v, GenParticle *p) |
returns true if GenParticle is in the vector | |
void | version () |
print HepMC version | |
void | writeVersion (std::ostream &os) |
write HepMC version to os | |
std::string | versionName () |
return HepMC version | |
std::ostream & | operator<< (std::ostream &ostr, const Flow &f) |
for printing | |
void | HepMCStreamCallback (std::ios_base::event e, std::ios_base &b, int i) |
template<class IO> | |
StreamInfo & | get_stream_info (IO &iost) |
std::ostream & | establish_output_stream_info (std::ostream &os) |
used by IO_GenEvent constructor | |
std::istream & | establish_input_stream_info (std::istream &is) |
used by IO_GenEvent constructor | |
std::ostream & | operator<< (std::ostream &ostr, const GenParticle &part) |
print particle | |
std::ostream & | operator<< (std::ostream &ostr, const GenVertex &vtx) |
print vertex information | |
std::ostream & | operator<< (std::ostream &ostr, const ParticleData &pdata) |
write to ostr | |
std::ostream & | operator<< (std::ostream &ostr, const Polarization &polar) |
print polarization information | |
Variables | |
static const double | HepMC_hbarc |
hbar * c --> calculated with units of [mm*GeV] | |
static const double | HepMC_pi = 3.14159265358979323846 |
enum HepMC::IteratorRange |
enum HepMC::known_io |
The known_io enum is used to track which type of input is being read.
Definition at line 17 of file StreamInfo.h.
bool HepMC::compareGenEvent | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 16 of file CompareGenEvent.cc.
References HepMC::GenEvent::alphaQCD(), HepMC::GenEvent::alphaQED(), compareBeamParticles(), compareParticles(), compareSignalProcessVertex(), compareVertices(), compareWeights(), HepMC::GenEvent::event_number(), HepMC::GenEvent::event_scale(), HepMC::GenEvent::heavy_ion(), HepMC::GenEvent::mpi(), HepMC::GenEvent::pdf_info(), HepMC::GenEvent::random_states(), and HepMC::GenEvent::signal_process_id().
Referenced by main().
bool HepMC::compareSignalProcessVertex | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 64 of file CompareGenEvent.cc.
References HepMC::GenEvent::signal_process_vertex().
Referenced by compareGenEvent().
bool HepMC::compareBeamParticles | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 77 of file CompareGenEvent.cc.
References HepMC::GenEvent::beam_particles().
Referenced by compareGenEvent().
bool HepMC::compareWeights | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 92 of file CompareGenEvent.cc.
References HepMC::WeightContainer::size(), and HepMC::GenEvent::weights().
Referenced by compareGenEvent().
bool HepMC::compareVertices | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 131 of file CompareGenEvent.cc.
References HepMC::GenEvent::barcode_to_vertex(), compareVertex(), v, HepMC::GenEvent::vertices_begin(), HepMC::GenEvent::vertices_end(), and HepMC::GenEvent::vertices_size().
Referenced by compareGenEvent().
bool HepMC::compareParticles | ( | GenEvent * | , | |
GenEvent * | ||||
) |
Definition at line 109 of file CompareGenEvent.cc.
References HepMC::GenEvent::particles_begin(), HepMC::GenEvent::particles_end(), and HepMC::GenEvent::particles_size().
Referenced by compareGenEvent().
bool HepMC::compareVertex | ( | GenVertex * | v1, | |
GenVertex * | v2 | |||
) |
Definition at line 152 of file CompareGenEvent.cc.
References HepMC::GenVertex::barcode(), HepMC::GenVertex::particles_in_const_begin(), HepMC::GenVertex::particles_in_const_end(), HepMC::GenVertex::particles_in_size(), HepMC::GenVertex::particles_out_const_begin(), HepMC::GenVertex::particles_out_const_end(), HepMC::GenVertex::particles_out_size(), and HepMC::GenVertex::position().
Referenced by compareVertices().
std::ostream& HepMC::operator<< | ( | std::ostream & | os, | |
GenCrossSection & | xs | |||
) | [inline] |
std::istream& HepMC::operator>> | ( | std::istream & | is, | |
GenCrossSection & | xs | |||
) | [inline] |
void HepMC::copy_if | ( | InputIterator | first, | |
InputIterator | last, | |||
OutputIterator | out, | |||
Predicate | pred | |||
) |
define the type of iterator to use
Definition at line 50 of file GenEvent.h.
Referenced by main().
std::ostream & HepMC::operator<< | ( | std::ostream & | , | |
GenEvent & | ||||
) |
standard streaming IO output operator
Writes evt to an output stream.
Definition at line 342 of file GenEventStreamIO.cc.
References HepMC::GenEvent::write().
std::istream & HepMC::operator>> | ( | std::istream & | , | |
GenEvent & | ||||
) |
standard streaming IO input operator
Definition at line 349 of file GenEventStreamIO.cc.
References HepMC::GenEvent::read().
std::istream & HepMC::set_input_units | ( | std::istream & | , | |
Units::MomentumUnit | , | |||
Units::LengthUnit | ||||
) |
set the units for this input stream
Definition at line 357 of file GenEventStreamIO.cc.
References get_stream_info(), and HepMC::StreamInfo::use_input_units().
Referenced by HepMC::IO_GenEvent::use_input_units().
std::ostream & HepMC::write_HepMC_IO_block_begin | ( | std::ostream & | ) |
Explicitly write the begin block lines that IO_GenEvent uses.
Definition at line 369 of file GenEventStreamIO.cc.
References HepMC::StreamInfo::finished_first_event(), get_stream_info(), HepMC::StreamInfo::IO_GenEvent_Key(), and versionName().
Referenced by readPythiaStreamIO(), HepMC::IO_GenEvent::write_event(), and writePythiaStreamIO().
std::ostream & HepMC::write_HepMC_IO_block_end | ( | std::ostream & | ) |
Explicitly write the end block line that IO_GenEvent uses.
Definition at line 382 of file GenEventStreamIO.cc.
References HepMC::StreamInfo::finished_first_event(), get_stream_info(), and HepMC::StreamInfo::IO_GenEvent_End().
Referenced by readPythiaStreamIO(), HepMC::IO_GenEvent::write_comment(), writePythiaStreamIO(), and HepMC::IO_GenEvent::~IO_GenEvent().
GenEvent& HepMC::convert_units | ( | GenEvent & | evt, | |
Units::MomentumUnit | m, | |||
Units::LengthUnit | l | |||
) | [inline] |
std::ostream & HepMC::operator<< | ( | std::ostream & | os, | |
HeavyIon const * | ion | |||
) |
Write the contents of HeavyIon to an output stream.
Write the contents of HeavyIon to an output stream. GenEvent stores a pointer to a HeavyIon.
Definition at line 23 of file HeavyIon.cc.
References HepMC::HeavyIon::eccentricity(), HepMC::HeavyIon::event_plane_angle(), HepMC::HeavyIon::impact_parameter(), HepMC::HeavyIon::N_Nwounded_collisions(), HepMC::HeavyIon::Ncoll(), HepMC::HeavyIon::Ncoll_hard(), HepMC::HeavyIon::Npart_proj(), HepMC::HeavyIon::Npart_targ(), HepMC::HeavyIon::Nwounded_N_collisions(), HepMC::HeavyIon::Nwounded_Nwounded_collisions(), HepMC::detail::output(), HepMC::HeavyIon::sigma_inel_NN(), HepMC::HeavyIon::spectator_neutrons(), and HepMC::HeavyIon::spectator_protons().
std::istream & HepMC::operator>> | ( | std::istream & | is, | |
HeavyIon * | ion | |||
) |
Read the contents of HeavyIon from an input stream.
Read the contents of HeavyIon from an input stream. GenEvent stores a pointer to a HeavyIon.
Definition at line 71 of file HeavyIon.cc.
References HepMC::HeavyIon::set_eccentricity(), HepMC::HeavyIon::set_event_plane_angle(), HepMC::HeavyIon::set_impact_parameter(), HepMC::HeavyIon::set_N_Nwounded_collisions(), HepMC::HeavyIon::set_Ncoll(), HepMC::HeavyIon::set_Ncoll_hard(), HepMC::HeavyIon::set_Npart_proj(), HepMC::HeavyIon::set_Npart_targ(), HepMC::HeavyIon::set_Nwounded_N_collisions(), HepMC::HeavyIon::set_Nwounded_Nwounded_collisions(), HepMC::HeavyIon::set_sigma_inel_NN(), HepMC::HeavyIon::set_spectator_neutrons(), and HepMC::HeavyIon::set_spectator_protons().
double HepMC::clifetime_from_width | ( | double | width | ) |
set lifetime from width
if you want to instantiate the particle lifetime from its width, use this static method inside the constructor:
Definition at line 110 of file ParticleData.cc.
References HepMC_hbarc.
Referenced by main(), and HepMC::IO_PDG_ParticleDataTable::read_entry().
std::ostream & HepMC::operator<< | ( | std::ostream & | , | |
PdfInfo const * | ||||
) |
Definition at line 21 of file PdfInfo.cc.
References HepMC::PdfInfo::id1(), HepMC::PdfInfo::id2(), HepMC::detail::output(), HepMC::PdfInfo::pdf1(), HepMC::PdfInfo::pdf2(), HepMC::PdfInfo::pdf_id1(), HepMC::PdfInfo::pdf_id2(), HepMC::PdfInfo::scalePDF(), HepMC::PdfInfo::x1(), and HepMC::PdfInfo::x2().
std::istream & HepMC::operator>> | ( | std::istream & | , | |
PdfInfo * | ||||
) |
Definition at line 59 of file PdfInfo.cc.
References HepMC::PdfInfo::set_id1(), HepMC::PdfInfo::set_id2(), HepMC::PdfInfo::set_pdf1(), HepMC::PdfInfo::set_pdf2(), HepMC::PdfInfo::set_pdf_id1(), HepMC::PdfInfo::set_pdf_id2(), HepMC::PdfInfo::set_scalePDF(), HepMC::PdfInfo::set_x1(), and HepMC::PdfInfo::set_x2().
bool HepMC::not_in_vector | ( | std::vector< HepMC::GenParticle * > * | , | |
GenParticle * | ||||
) |
returns true if it cannot find GenParticle* in the vector
Definition at line 11 of file SearchVector.cc.
References already_in_vector(), and p.
Referenced by HepMC::Flow::connected_partners(), and HepMC::Flow::dangling_connected_partners().
std::vector< HepMC::GenParticle * >::iterator HepMC::already_in_vector | ( | std::vector< HepMC::GenParticle * > * | , | |
GenParticle * | ||||
) |
returns true if GenParticle is in the vector
Returns the index of a GenParticle* within a vector. Returns -1 if GenParticle* is not in the vector.
Definition at line 18 of file SearchVector.cc.
References p.
Referenced by not_in_vector(), HepMC::GenVertex::remove_particle_in(), and HepMC::GenVertex::remove_particle_out().
void HepMC::version | ( | ) | [inline] |
print HepMC version
Definition at line 27 of file Version.h.
References versionName().
void HepMC::writeVersion | ( | std::ostream & | os | ) | [inline] |
write HepMC version to os
Definition at line 33 of file Version.h.
References versionName().
Referenced by HepMC::GenEvent::print_version().
std::string HepMC::versionName | ( | ) | [inline] |
return HepMC version
Definition at line 22 of file Version.h.
References HEPMC_VERSION.
Referenced by version(), HepMC::IO_AsciiParticles::write_event(), write_HepMC_IO_block_begin(), and writeVersion().
std::ostream& HepMC::operator<< | ( | std::ostream & | ostr, | |
const Flow & | f | |||
) |
void HepMC::HepMCStreamCallback | ( | std::ios_base::event | e, | |
std::ios_base & | b, | |||
int | i | |||
) |
This method is called by the stream destructor. It does cleanup on stored user data (StreamInfo) and is registered by the first call to get_stream_info().
Definition at line 29 of file GenEventStreamIO.cc.
References HepMC::StreamInfo::stream_id().
Referenced by get_stream_info().
StreamInfo& HepMC::get_stream_info | ( | IO & | iost | ) |
A custom iomanip that allows us to store and access user data (StreamInfo) associated with the stream. This method creates the StreamInfo object the first time it is called.
Definition at line 51 of file GenEventStreamIO.cc.
References HepMCStreamCallback().
Referenced by HepMC::detail::establish_input_stream_info(), establish_input_stream_info(), HepMC::detail::establish_output_stream_info(), establish_output_stream_info(), HepMC::GenEvent::read(), HepMC::detail::read_particle(), HepMC::detail::read_units(), set_input_units(), HepMC::GenEvent::write(), write_HepMC_IO_block_begin(), and write_HepMC_IO_block_end().
std::ostream& HepMC::establish_output_stream_info | ( | std::ostream & | os | ) |
used by IO_GenEvent constructor
Definition at line 506 of file GenEventStreamIO.cc.
References HepMC::StreamInfo::finished_first_event(), and get_stream_info().
Referenced by HepMC::IO_GenEvent::IO_GenEvent().
std::istream& HepMC::establish_input_stream_info | ( | std::istream & | is | ) |
used by IO_GenEvent constructor
Definition at line 520 of file GenEventStreamIO.cc.
References HepMC::StreamInfo::finished_first_event(), and get_stream_info().
Referenced by HepMC::IO_GenEvent::IO_GenEvent().
std::ostream& HepMC::operator<< | ( | std::ostream & | ostr, | |
const GenParticle & | part | |||
) |
print particle
Definition at line 189 of file GenParticle.cc.
References HepMC::GenVertex::barcode(), HepMC::GenParticle::barcode(), HepMC::FourVector::e(), HepMC::GenParticle::end_vertex(), HepMC::GenParticle::momentum(), HepMC::GenParticle::pdg_id(), HepMC::FourVector::px(), HepMC::FourVector::py(), HepMC::FourVector::pz(), and HepMC::GenParticle::status().
std::ostream& HepMC::operator<< | ( | std::ostream & | ostr, | |
const GenVertex & | vtx | |||
) |
print vertex information
Definition at line 440 of file GenVertex.cc.
References HepMC::GenVertex::barcode(), HepMC::GenVertex::position(), and HepMC::FourVector::x().
std::ostream& HepMC::operator<< | ( | std::ostream & | ostr, | |
const ParticleData & | pdata | |||
) |
write to ostr
Definition at line 94 of file ParticleData.cc.
References HepMC::ParticleData::charge(), HepMC::ParticleData::clifetime(), HepMC::ParticleData::mass(), HepMC::ParticleData::name(), HepMC::ParticleData::pdg_id(), and HepMC::ParticleData::spin().
std::ostream& HepMC::operator<< | ( | std::ostream & | ostr, | |
const Polarization & | polar | |||
) |
print polarization information
Definition at line 107 of file Polarization.cc.
References HepMC::Polarization::phi(), and HepMC::Polarization::theta().
const double HepMC::HepMC_hbarc [static] |
Initial value:
(6.6260755e-34 * (1.e-6/1.60217733e-19) / (2*3.14159265358979323846)) * (2.99792458e+8 * 1000.) * 1.e+3
Definition at line 56 of file ParticleData.h.
Referenced by clifetime_from_width(), HepMC::ParticleData::set_width(), and HepMC::ParticleData::width().
const double HepMC::HepMC_pi = 3.14159265358979323846 [static] |
Definition at line 19 of file Polarization.h.