CMS 3D CMS Logo

Namespaces | Classes | Typedefs | Functions | Variables
fastsim Namespace Reference

Namespaces

 Constants
 Definition of constants needed for the SimplifiedGeometryPropagator package.
 

Classes

class  BarrelSimplifiedGeometry
 Implementation of a barrel detector layer (cylindrical). More...
 
class  Bremsstrahlung
 Implementation of Bremsstrahlung from e+/e- in the tracker layers. More...
 
class  CMSDummyDeexcitation
 Needed as a dummy interface to Geant4 nuclear de-excitation module. More...
 
class  Decayer
 Implementation of non-stable particle decays. More...
 
class  EnergyLoss
 Implementation of most probable energy loss by ionization in the tracker layers. More...
 
class  ForwardSimplifiedGeometry
 Implementation of a forward detector layer (disk). More...
 
class  Geometry
 Definition the tracker geometry (vectors of forward/barrel layers). More...
 
class  HelixTrajectory
 Mathematical representation of a helix. More...
 
class  InteractionModel
 Base class for any interaction model between a particle and a tracker layer. More...
 
class  LayerNavigator
 Handles/tracks (possible) intersections of particle's trajectory and tracker layers. More...
 
class  MultipleScattering
 Implementation of multiple scattering in the tracker layers. More...
 
class  MuonBremsstrahlung
 Implementation of Bremsstrahlung from mu+/mu- in the tracker layers based on a Petrukhin Model (nuclear screening correction). More...
 
class  NuclearInteraction
 Implementation of nuclear interactions of hadrons in the tracker layers (based on fully simulated interactions). More...
 
class  NuclearInteractionFTF
 Implementation of nuclear interactions of hadrons in the tracker layers (based on FTF model of Geant4). More...
 
class  PairProduction
 Computes the probability for photons to convert into an e+e- pair in the tracker layer. More...
 
class  Particle
 Definition of a generic FastSim Particle which can be propagated through the detector (formerly ParticlePropagator) More...
 
class  ParticleFilter
 (Kinematic) cuts on the particles that are propagated. More...
 
class  ParticleManager
 Manages GenParticles and Secondaries from interactions. More...
 
class  SimplifiedGeometry
 Implementation of a generic detector layer (base class for forward/barrel layers). More...
 
class  SimplifiedGeometryFactory
 Constructs a tracker layer according to entry in python config (incl interaction models). More...
 
class  StraightTrajectory
 Mathematical representation of a straight trajectory. More...
 
class  TrackerSimHitProducer
 Produces SimHits in the tracker layers. More...
 
class  Trajectory
 Definition the generic trajectory of a particle (base class for helix/straight trajectories). More...
 

Typedefs

typedef edmplugin::PluginFactory< fastsim::InteractionModel *(const std::string &name, const edm::ParameterSet &)> InteractionModelFactory
 Define a PluginFactory for all interaction models (provides a handy environment). More...
 

Functions

std::ostream & operator<< (std::ostream &os, const InteractionModel &interactionModel)
 
std::ostream & operator<< (std::ostream &os, const SimplifiedGeometry &layer)
 
std::ostream & operator<< (std::ostream &os, const fastsim::Geometry &geometry)
 
std::ostream & operator<< (std::ostream &os, const Particle &particle)
 Some basic output. More...
 

Variables

static std::once_flag initializeOnce
 
static std::once_flag initializeOnce
 

Typedef Documentation

◆ InteractionModelFactory

Define a PluginFactory for all interaction models (provides a handy environment).

Definition at line 12 of file InteractionModelFactory.h.

Function Documentation

◆ operator<<() [1/4]

std::ostream & fastsim::operator<< ( std::ostream &  os,
const InteractionModel interactionModel 
)

Definition at line 3 of file InteractionModel.cc.

References fastsim::InteractionModel::name_, and AlCaHLTBitMon_QueryRunRegistry::string.

3  {
4  os << std::string("interaction model with name '") << (interactionModel.name_) << std::string("'");
5  return os;
6 }

◆ operator<<() [2/4]

std::ostream & fastsim::operator<< ( std::ostream &  os,
const SimplifiedGeometry layer 
)

Definition at line 6 of file SimplifiedGeometry.cc.

References nano_mu_digi_cff::layer.

6  {
7  os << (layer.isForward() ? "ForwardSimplifiedGeometry" : "BarrelSimplifiedGeometry") << " index=" << layer.index_
8  << (layer.isForward() ? " z=" : " radius=") << layer.geomProperty_;
9  return os;
10 }

◆ operator<<() [3/4]

std::ostream & fastsim::operator<< ( std::ostream &  os,
const fastsim::Geometry geometry 
)

Definition at line 160 of file Geometry.cc.

160  {
161  os << "-----------"
162  << "\n# fastsim::Geometry"
163  << "\n## BarrelLayers:";
164  for (const auto& layer : geometry.barrelLayers_) {
165  os << "\n " << *layer << layer->getInteractionModels().size() << " interaction models";
166  }
167  os << "\n## ForwardLayers:";
168  for (const auto& layer : geometry.forwardLayers_) {
169  os << "\n " << *layer << layer->getInteractionModels().size() << " interaction models";
170  }
171  os << "\n-----------";
172  return os;
173 }

◆ operator<<() [4/4]

std::ostream & fastsim::operator<< ( std::ostream &  os,
const Particle particle 
)

Some basic output.

Definition at line 3 of file Particle.cc.

References fastsim::Particle::isStable(), fastsim::Particle::momentum_, fastsim::Particle::pdgId_, fastsim::Particle::position_, fastsim::Particle::remainingProperLifeTimeC_, and mathSSE::sqrt().

3  {
4  os << "fastsim::Particle "
5  << " pdgId=" << particle.pdgId_ << " position=(" << particle.position_.X() << "," << particle.position_.Y()
6  << " [R="
7  << sqrt(particle.position_.X() * particle.position_.X() + particle.position_.Y() * particle.position_.Y()) << "],"
8  << particle.position_.Z() << "," << particle.position_.T() << ")"
9  << " momentum=(" << particle.momentum_.X() << "," << particle.momentum_.Y() << "," << particle.momentum_.Z() << ","
10  << particle.momentum_.T() << ")"
11  << " isStable=(" << particle.isStable() << ")"
12  << " remainingProperLifeTimeC=" << particle.remainingProperLifeTimeC_;
13  return os;
14 }
T sqrt(T t)
Definition: SSEVec.h:19

Variable Documentation

◆ initializeOnce [1/2]

std::once_flag fastsim::initializeOnce
static

Definition at line 293 of file NuclearInteractionFTF.cc.

◆ initializeOnce [2/2]

std::once_flag fastsim::initializeOnce
static