/search.css" rel="stylesheet" type="text/css"/> /search.js">
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

Public Member Functions | Static Public Member Functions | Private Attributes
DayaBay::SimVertex Class Reference

A single interaction point somewhere along a track. More...

#include <SimVertex.h>

Collaboration diagram for DayaBay::SimVertex:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 SimVertex ()
 Default constructor.
 SimVertex (const SimTrackReference &track, const SimProcess &process, double time, const Gaudi::XYZPoint &position, double totEnergy, const Gaudi::XYZVector &momentum)
 Create with data.
virtual ~SimVertex ()
 Default Destructor.
double mass () const
 Get the mass from energy+momentum. May not be exact due to rounding.
double kineticEnergy () const
 Get the mass from energy+momentum. May not be exact due to rounding.
void addSecondary (const SimTrackReference &ref)
 Add a secondary to the existing collection.
std::ostream & fillStream (std::ostream &s) const
 Serialize to an ostream.
const DayaBay::SimTrackReferencetrack () const
 Retrieve const The parent track (or it's ancestor)
void setTrack (const DayaBay::SimTrackReference &value)
 Update The parent track (or it's ancestor)
const DayaBay::SimProcessprocess () const
 Retrieve const Process at this vertex.
void setProcess (const DayaBay::SimProcess &value)
 Update Process at this vertex.
double time () const
 Retrieve const Simulation global time.
void setTime (double value)
 Update Simulation global time.
const Gaudi::XYZPoint & position () const
 Retrieve const Global XYZ coordinates.
void setPosition (const Gaudi::XYZPoint &value)
 Update Global XYZ coordinates.
double totalEnergy () const
 Retrieve const Total energy.
void setTotalEnergy (double value)
 Update Total energy.
const Gaudi::XYZVector & momentum () const
 Retrieve const Momentum vector.
void setMomentum (const Gaudi::XYZVector &value)
 Update Momentum vector.
const std::vector
< DayaBay::SimTrackReference > & 
secondaries () const
 Retrieve const SimTracks origninating from here, including indirect ones.
void setSecondaries (const std::vector< DayaBay::SimTrackReference > &value)
 Update SimTracks origninating from here, including indirect ones.

Static Public Member Functions

static void * operator new (size_t size)
 operator new
static void * operator new (size_t size, void *pObj)
 placement operator new it is needed by libstdc++ 3.2.3 (e.g.
static void operator delete (void *p)
 operator delete
static void operator delete (void *p, void *pObj)
 placement operator delete not sure if really needed, but it does not harm

Private Attributes

DayaBay::SimTrackReference m_track
 The parent track (or it's ancestor)
DayaBay::SimProcess m_process
 Process at this vertex.
double m_time
 Simulation global time.
Gaudi::XYZPoint m_position
 Global XYZ coordinates.
double m_totalEnergy
 Total energy.
Gaudi::XYZVector m_momentum
 Momentum vector.
std::vector
< DayaBay::SimTrackReference
m_secondaries
 SimTracks origninating from here, including indirect ones.

Detailed Description

A single interaction point somewhere along a track.

May be shared by more than one track in the case of a parent/child relationship.

Author:
tagg@minos.phy.tufts.edu created Thu Dec 5 18:05:53 2013

Definition at line 47 of file SimVertex.h.


Constructor & Destructor Documentation

DayaBay::SimVertex::SimVertex ( ) [inline]

Default constructor.

Definition at line 52 of file SimVertex.h.

DayaBay::SimVertex::SimVertex ( const SimTrackReference track,
const SimProcess process,
double  time,
const Gaudi::XYZPoint &  position,
double  totEnergy,
const Gaudi::XYZVector &  momentum 
) [inline]

Create with data.

Definition at line 61 of file SimVertex.h.

virtual DayaBay::SimVertex::~SimVertex ( ) [inline, virtual]

Default Destructor.

Definition at line 75 of file SimVertex.h.

{}

Member Function Documentation

double SimVertex::mass ( ) const

Get the mass from energy+momentum. May not be exact due to rounding.

Get the mass from energy+momentum. May not be exact due to rounding

Definition at line 23 of file SimVertex.cc.

{
    return sqrt(fabs(m_totalEnergy*m_totalEnergy - m_momentum.Mag2()));  
}
double SimVertex::kineticEnergy ( ) const

Get the mass from energy+momentum. May not be exact due to rounding.

Get the mass from energy+momentum. May not be exact due to rounding

Definition at line 32 of file SimVertex.cc.

{
    return fabs(m_totalEnergy) - mass();
}
void DayaBay::SimVertex::addSecondary ( const SimTrackReference ref) [inline]

Add a secondary to the existing collection.

Definition at line 275 of file SimVertex.h.

{

    m_secondaries.push_back(ref);
        
}
std::ostream & DayaBay::SimVertex::fillStream ( std::ostream &  s) const

Serialize to an ostream.

Definition at line 10 of file SimVertex.cc.

{
    s << "{ "
      << "track :       " << m_track << std::endl
      << "process :     " << m_process << std::endl
      << "time :        " << (float)m_time << std::endl
      << "position :    " << m_position << std::endl
      << "totalEnergy : " << (float)m_totalEnergy << std::endl
      << "momentum :    " << m_momentum << std::endl
      << "secondaries : " << m_secondaries.size() << std::endl << " }";
    return s;
}
const DayaBay::SimTrackReference & DayaBay::SimVertex::track ( ) const [inline]

Retrieve const The parent track (or it's ancestor)

Definition at line 205 of file SimVertex.h.

{
  return m_track;
}
void DayaBay::SimVertex::setTrack ( const DayaBay::SimTrackReference value) [inline]

Update The parent track (or it's ancestor)

Definition at line 210 of file SimVertex.h.

{
  m_track = value;
}
const DayaBay::SimProcess & DayaBay::SimVertex::process ( ) const [inline]

Retrieve const Process at this vertex.

Definition at line 215 of file SimVertex.h.

{
  return m_process;
}
void DayaBay::SimVertex::setProcess ( const DayaBay::SimProcess value) [inline]

Update Process at this vertex.

Definition at line 220 of file SimVertex.h.

{
  m_process = value;
}
double DayaBay::SimVertex::time ( ) const [inline]

Retrieve const Simulation global time.

Definition at line 225 of file SimVertex.h.

{
  return m_time;
}
void DayaBay::SimVertex::setTime ( double  value) [inline]

Update Simulation global time.

Definition at line 230 of file SimVertex.h.

{
  m_time = value;
}
const Gaudi::XYZPoint & DayaBay::SimVertex::position ( ) const [inline]

Retrieve const Global XYZ coordinates.

Definition at line 235 of file SimVertex.h.

{
  return m_position;
}
void DayaBay::SimVertex::setPosition ( const Gaudi::XYZPoint &  value) [inline]

Update Global XYZ coordinates.

Definition at line 240 of file SimVertex.h.

{
  m_position = value;
}
double DayaBay::SimVertex::totalEnergy ( ) const [inline]

Retrieve const Total energy.

Definition at line 245 of file SimVertex.h.

{
  return m_totalEnergy;
}
void DayaBay::SimVertex::setTotalEnergy ( double  value) [inline]

Update Total energy.

Definition at line 250 of file SimVertex.h.

{
  m_totalEnergy = value;
}
const Gaudi::XYZVector & DayaBay::SimVertex::momentum ( ) const [inline]

Retrieve const Momentum vector.

Definition at line 255 of file SimVertex.h.

{
  return m_momentum;
}
void DayaBay::SimVertex::setMomentum ( const Gaudi::XYZVector &  value) [inline]

Update Momentum vector.

Definition at line 260 of file SimVertex.h.

{
  m_momentum = value;
}
const std::vector< DayaBay::SimTrackReference > & DayaBay::SimVertex::secondaries ( ) const [inline]

Retrieve const SimTracks origninating from here, including indirect ones.

Definition at line 265 of file SimVertex.h.

{
  return m_secondaries;
}
void DayaBay::SimVertex::setSecondaries ( const std::vector< DayaBay::SimTrackReference > &  value) [inline]

Update SimTracks origninating from here, including indirect ones.

Definition at line 270 of file SimVertex.h.

{
  m_secondaries = value;
}
static void* DayaBay::SimVertex::operator new ( size_t  size) [inline, static]

operator new

Definition at line 148 of file SimVertex.h.

    {
      return ( sizeof(SimVertex) == size ? 
               boost::singleton_pool<SimVertex, sizeof(SimVertex)>::malloc() :
               ::operator new(size) );
    }
static void* DayaBay::SimVertex::operator new ( size_t  size,
void *  pObj 
) [inline, static]

placement operator new it is needed by libstdc++ 3.2.3 (e.g.

in std::vector) it is not needed in libstdc++ >= 3.4

Definition at line 158 of file SimVertex.h.

    {
      return ::operator new (size,pObj);
    }
static void DayaBay::SimVertex::operator delete ( void *  p) [inline, static]

operator delete

Definition at line 164 of file SimVertex.h.

    {
      boost::singleton_pool<SimVertex, sizeof(SimVertex)>::is_from(p) ?
      boost::singleton_pool<SimVertex, sizeof(SimVertex)>::free(p) :
      ::operator delete(p);
    }
static void DayaBay::SimVertex::operator delete ( void *  p,
void *  pObj 
) [inline, static]

placement operator delete not sure if really needed, but it does not harm

Definition at line 173 of file SimVertex.h.

    {
      ::operator delete (p, pObj);
    }

Member Data Documentation

The parent track (or it's ancestor)

Definition at line 182 of file SimVertex.h.

Process at this vertex.

Definition at line 183 of file SimVertex.h.

double DayaBay::SimVertex::m_time [private]

Simulation global time.

Definition at line 184 of file SimVertex.h.

Gaudi::XYZPoint DayaBay::SimVertex::m_position [private]

Global XYZ coordinates.

Definition at line 185 of file SimVertex.h.

Total energy.

Definition at line 186 of file SimVertex.h.

Gaudi::XYZVector DayaBay::SimVertex::m_momentum [private]

Momentum vector.

Definition at line 187 of file SimVertex.h.

SimTracks origninating from here, including indirect ones.

Definition at line 188 of file SimVertex.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Fri May 16 2014 10:05:28 for SimEvent by doxygen 1.7.4