|
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 | GenEventVertexRange |
| GenEventVertexRange acts like a collection of vertices. More... | |
| class | ConstGenEventVertexRange |
| ConstGenEventVertexRange acts like a collection of vertices. More... | |
| class | GenEventParticleRange |
| GenEventParticleRange acts like a collection of particles. More... | |
| class | ConstGenEventParticleRange |
| ConstGenEventParticleRange acts like a collection of particles. More... | |
| class | GenVertexParticleRange |
| GenVertexParticleRange acts like a collection of particles. More... | |
| class | GenParticleProductionRange |
| GenParticleProductionRange acts like a collection of particles. More... | |
| class | ConstGenParticleProductionRange |
| class | GenParticleEndRange |
| GenParticleEndRange acts like a collection of particles. More... | |
| class | ConstGenParticleEndRange |
| 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 | 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 | |
| GenCrossSection | getHerwigCrossSection (int ngen) |
| 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. | |
| std::ostream & | operator<< (std::ostream &, PdfInfo const *) |
| std::istream & | operator>> (std::istream &, PdfInfo *) |
| GenCrossSection | getPythiaCrossSection () |
| calculate the Pythia cross section and statistical error | |
| 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 (std::ostream &os=std::cout) |
| 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 Polarization &polar) |
| print polarization information | |
Variables | |
| 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.
| GenCrossSection HepMC::getHerwigCrossSection | ( | int | ngen | ) |
Definition at line 24 of file HerwigWrapper.cc.
References hwevnt, and HepMC::GenCrossSection::set_cross_section().
Referenced by main().
| 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::GenEvent::weights().
Referenced by compareGenEvent().
| bool HepMC::compareVertices | ( | GenEvent * | , | |
| GenEvent * | ||||
| ) |
Definition at line 120 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 98 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 141 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 355 of file GenEventStreamIO.cc.
References HepMC::GenEvent::write().
| std::istream & HepMC::operator>> | ( | std::istream & | , | |
| GenEvent & | ||||
| ) |
standard streaming IO input operator
Definition at line 362 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 370 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 382 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 395 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().
| 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(), HepMC::PdfInfo::set_x2(), and x1.
| GenCrossSection HepMC::getPythiaCrossSection | ( | ) | [inline] |
calculate the Pythia cross section and statistical error
Definition at line 28 of file PythiaWrapper.h.
References pyint5, and HepMC::GenCrossSection::set_cross_section().
Referenced by event_selection(), main(), pythia_in_out(), pythia_out(), pythia_particle_out(), and writePythiaStreamIO().
| 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 | ( | std::ostream & | os = std::cout |
) | [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(), 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 653 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 667 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 Polarization & | polar | |||
| ) |
print polarization information
Definition at line 129 of file Polarization.cc.
References HepMC::Polarization::phi(), and HepMC::Polarization::theta().
const double HepMC::HepMC_pi = 3.14159265358979323846 [static] |
Definition at line 19 of file Polarization.h.
1.4.7