ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
StringVector Class Reference

#include <StringVector.h>

Collaboration diagram for StringVector:

Public Member Functions

 StringVector ()
 
 StringVector (const G4ThreeVector &p, G4double m)
 
 StringVector (G4double x, G4double y, G4double z, G4double m)
 
 ~StringVector ()
 
G4ThreeVector vect () const
 
G4double mag () const
 
G4double x () const
 
G4double y () const
 
G4double z () const
 
G4double t () const
 
G4LorentzVector lv () const
 
StringVector reflect (const G4LorentzVector &axis) const
 
void set (const G4ThreeVector &p, G4double m)
 
void set (G4double x, G4double y, G4double z, G4double m)
 
void operator*= (G4double a)
 

Private Attributes

G4ThreeVector m_p
 
G4double m_m
 

Detailed Description

Definition at line 11 of file StringVector.h.

Constructor & Destructor Documentation

◆ StringVector() [1/3]

StringVector::StringVector ( )

Definition at line 7 of file StringVector.cxx.

7 : m_p(0,0,0), m_m(0) {}

◆ StringVector() [2/3]

StringVector::StringVector ( const G4ThreeVector &  p,
G4double  m 
)

Definition at line 8 of file StringVector.cxx.

8 : m_p(p), m_m(m) {}

◆ StringVector() [3/3]

StringVector::StringVector ( G4double  x,
G4double  y,
G4double  z,
G4double  m 
)

Definition at line 9 of file StringVector.cxx.

9 : m_p(x,y,z), m_m(m) {}

◆ ~StringVector()

StringVector::~StringVector ( )

Definition at line 10 of file StringVector.cxx.

10 {}

Member Function Documentation

◆ lv()

G4LorentzVector StringVector::lv ( ) const
inline

Definition at line 66 of file StringVector.h.

66  {
67  return G4LorentzVector(m_p, t());
68 }

◆ mag()

G4double StringVector::mag ( ) const
inline

Definition at line 46 of file StringVector.h.

46  {
47  return m_m;
48 }

◆ operator*=()

void StringVector::operator*= ( G4double  a)
inline

Definition at line 84 of file StringVector.h.

84  {
85  m_p *= a;
86  m_m *= a;
87 }

◆ reflect()

StringVector StringVector::reflect ( const G4LorentzVector &  axis) const
inline

Definition at line 70 of file StringVector.h.

70  {
71  return StringVector(axis.vect() * (2 * lv() * axis) / axis.mag2() - m_p, m_m);
72 }

◆ set() [1/2]

void StringVector::set ( const G4ThreeVector &  p,
G4double  m 
)
inline

Definition at line 74 of file StringVector.h.

74  {
75  m_p = p;
76  m_m = m;
77 }

◆ set() [2/2]

void StringVector::set ( G4double  x,
G4double  y,
G4double  z,
G4double  m 
)
inline

Definition at line 79 of file StringVector.h.

79  {
80  m_p.set(x,y,z);
81  m_m = m;
82 }

◆ t()

G4double StringVector::t ( ) const
inline

Definition at line 62 of file StringVector.h.

62  {
63  return std::sqrt(m_p.mag2() + m_m*m_m);
64 }

◆ vect()

G4ThreeVector StringVector::vect ( ) const
inline

Definition at line 42 of file StringVector.h.

42  {
43  return m_p;
44 }

◆ x()

G4double StringVector::x ( ) const
inline

Definition at line 50 of file StringVector.h.

50  {
51  return m_p.x();
52 }

◆ y()

G4double StringVector::y ( ) const
inline

Definition at line 54 of file StringVector.h.

54  {
55  return m_p.y();
56 }

◆ z()

G4double StringVector::z ( ) const
inline

Definition at line 58 of file StringVector.h.

58  {
59  return m_p.z();
60 }

Member Data Documentation

◆ m_m

G4double StringVector::m_m
private

Definition at line 31 of file StringVector.h.

◆ m_p

G4ThreeVector StringVector::m_p
private

Definition at line 30 of file StringVector.h.


The documentation for this class was generated from the following files:
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
StringVector::t
G4double t() const
Definition: StringVector.h:62
StringVector::m_p
G4ThreeVector m_p
Definition: StringVector.h:30
yodamerge_tmp.axis
list axis
Definition: yodamerge_tmp.py:241
StringVector::StringVector
StringVector()
Definition: StringVector.cxx:7
StringVector::y
G4double y() const
Definition: StringVector.h:54
StringVector::z
G4double z() const
Definition: StringVector.h:58
StringVector::m_m
G4double m_m
Definition: StringVector.h:31
a
TList * a
Definition: liststreamerinfos.cxx:10
StringVector::lv
G4LorentzVector lv() const
Definition: StringVector.h:66
StringVector::x
G4double x() const
Definition: StringVector.h:50