ATLAS Offline Software
Public Member Functions | Public Attributes | Protected Attributes | Private Attributes | Friends | List of all members
Trk::VKMassConstraint Class Referencefinal

#include <Derivt.h>

Inheritance diagram for Trk::VKMassConstraint:
Collaboration diagram for Trk::VKMassConstraint:

Public Member Functions

 VKMassConstraint (int, double, VKVertex *)
 
 VKMassConstraint (int, double, std::vector< int >, VKVertex *)
 
 ~VKMassConstraint ()
 
virtual VKConstraintBaseclone () const override
 
void setTargetMass (double M)
 
virtual void applyConstraint () override
 
double getTargetMass () const
 
const std::vector< int > & getUsedParticles () const
 
const VKVertexgetOriginVertex () const
 
VKConstraintType getType () const
 

Public Attributes

int NCDim
 
int NTrk
 
std::vector< double > aa
 
std::vector< std::vector< Vect3DF > > f0t
 
std::vector< Vect3DFh0t
 

Protected Attributes

VKVertexm_originVertex
 
const VKConstraintType m_type
 

Private Attributes

std::vector< int > m_usedParticles
 
double m_targetMass
 

Friends

std::ostream & operator<< (std::ostream &out, const VKMassConstraint &)
 

Detailed Description

Definition at line 48 of file Derivt.h.

Constructor & Destructor Documentation

◆ VKMassConstraint() [1/2]

Trk::VKMassConstraint::VKMassConstraint ( int  NTRK,
double  mass,
VKVertex vk 
)
inline

Definition at line 157 of file Derivt.h.

159  m_usedParticles(NTRK, 0),
160  m_targetMass(mass) {
161  for (int i = 0; i < NTrk; i++)
162  m_usedParticles[i] = i;
163 }

◆ VKMassConstraint() [2/2]

Trk::VKMassConstraint::VKMassConstraint ( int  NTRK,
double  mass,
std::vector< int >  listTrk,
VKVertex vk 
)
inline

Definition at line 165 of file Derivt.h.

169  m_usedParticles(std::move(listTrk)),
170  m_targetMass(mass) {
171  m_originVertex = vk;
172 }

◆ ~VKMassConstraint()

Trk::VKMassConstraint::~VKMassConstraint ( )
inlinedefault

Member Function Documentation

◆ applyConstraint()

void Trk::VKMassConstraint::applyConstraint ( )
inlineoverridevirtual

Implements Trk::VKConstraintBase.

Definition at line 238 of file Derivt.h.

238  {
239  calcMassConstraint(this);
240 }

◆ clone()

VKConstraintBase * Trk::VKMassConstraint::clone ( ) const
inlineoverridevirtual

Implements Trk::VKConstraintBase.

Definition at line 218 of file Derivt.h.

218  {
219  return new VKMassConstraint(*this);
220 }

◆ getOriginVertex()

const VKVertex* Trk::VKConstraintBase::getOriginVertex ( ) const
inlineinherited

Definition at line 32 of file Derivt.h.

32 { return m_originVertex; }

◆ getTargetMass()

double Trk::VKMassConstraint::getTargetMass ( ) const
inline

Definition at line 59 of file Derivt.h.

59 { return m_targetMass; };

◆ getType()

VKConstraintType Trk::VKConstraintBase::getType ( ) const
inlineinherited

Definition at line 33 of file Derivt.h.

33 { return m_type; }

◆ getUsedParticles()

const std::vector<int>& Trk::VKMassConstraint::getUsedParticles ( ) const
inline

Definition at line 60 of file Derivt.h.

60 { return m_usedParticles; };

◆ setTargetMass()

void Trk::VKMassConstraint::setTargetMass ( double  M)
inline

Definition at line 57 of file Derivt.h.

57 { m_targetMass = M; };

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  out,
const VKMassConstraint cnst 
)
friend

Definition at line 32 of file Derivt.cxx.

32  {
33  const VKVertex* vk = cnst.getOriginVertex();
34  int NP = cnst.m_usedParticles.size();
35  out.precision(7);
36  out << std::defaultfloat;
37  out << " Mass constraint (total NTRK=" << vk->TrackList.size() << ")"
38  << "\n";
39  out << " * target mass: " << cnst.getTargetMass() << "\n";
40  out << " * particle indexes: ";
41  for (int i = 0; i < NP; i++) {
42  out << cnst.m_usedParticles[i] << ", ";
43  }
44  out << "\n";
45  out << " * particle masses: ";
46  for (int i = 0; i < NP; i++) {
47  out << vk->TrackList[cnst.m_usedParticles[i]]->getMass() << ", ";
48  }
49  out << "\n";
50  out << dynamic_cast<const VKConstraintBase&>(cnst) << "\n";
51  out.precision(6); // restore default
52  return out;
53 }

Member Data Documentation

◆ aa

std::vector<double> Trk::VKConstraintBase::aa
inherited

Definition at line 38 of file Derivt.h.

◆ f0t

std::vector<std::vector<Vect3DF> > Trk::VKConstraintBase::f0t
inherited

Definition at line 39 of file Derivt.h.

◆ h0t

std::vector<Vect3DF> Trk::VKConstraintBase::h0t
inherited

Definition at line 40 of file Derivt.h.

◆ m_originVertex

VKVertex* Trk::VKConstraintBase::m_originVertex
protectedinherited

Definition at line 42 of file Derivt.h.

◆ m_targetMass

double Trk::VKMassConstraint::m_targetMass
private

Definition at line 64 of file Derivt.h.

◆ m_type

const VKConstraintType Trk::VKConstraintBase::m_type
protectedinherited

Definition at line 43 of file Derivt.h.

◆ m_usedParticles

std::vector<int> Trk::VKMassConstraint::m_usedParticles
private

Definition at line 63 of file Derivt.h.

◆ NCDim

int Trk::VKConstraintBase::NCDim
inherited

Definition at line 36 of file Derivt.h.

◆ NTrk

int Trk::VKConstraintBase::NTrk
inherited

Definition at line 37 of file Derivt.h.


The documentation for this class was generated from the following file:
NP
Definition: dumpNPs.cxx:34
Base_Fragment.mass
mass
Definition: Sherpa_i/share/common/Base_Fragment.py:59
Trk::VKMassConstraint::m_usedParticles
std::vector< int > m_usedParticles
Definition: Derivt.h:60
Trk::VKMassConstraint::m_targetMass
double m_targetMass
Definition: Derivt.h:64
Trk::VKConstraintBase::m_type
const VKConstraintType m_type
Definition: Derivt.h:43
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:70
Trk::VKConstraintType::Mass
@ Mass
Trk::VKConstraintBase::NTrk
int NTrk
Definition: Derivt.h:37
lumiFormat.i
int i
Definition: lumiFormat.py:85
Trk::VKConstraintBase::m_originVertex
VKVertex * m_originVertex
Definition: Derivt.h:42
Trk::VKConstraintBase::VKConstraintBase
VKConstraintBase(const int, int, VKConstraintType, VKVertex *)
Definition: Derivt.h:146
Trk::VKMassConstraint::VKMassConstraint
VKMassConstraint(int, double, VKVertex *)
Definition: Derivt.h:157
Trk::calcMassConstraint
void calcMassConstraint(VKMassConstraint *cnst)
Definition: Derclc1.cxx:24