MINT2
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE Class Referenceabstract

#include <SpinFactors4Body_FsVector.h>

Inheritance diagram for SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE:
SpinFactor MINT::IReturnRealForEvent< IDalitzEvent > MINT::IReturnComplexForEvent< IDalitzEvent > CachedByEvent< std::complex< double > > MINT::FitParDependent ISpinFactor MINT::IFitParDependent MINT::IFitParRegister MINT::PolymorphVector< FitParRef > MINT::IReturnRealForEvent< IDalitzEvent > MINT::IReturnComplexForEvent< IDalitzEvent > MINT::IFitParDependent SF_BtoV1P1_V1toV2V0_V2toP2P3

Public Member Functions

virtual void printYourself (std::ostream &os=std::cout) const =0
 
 SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE (const AssociatedDecayTree &theDecay)
 
virtual ~SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE ()
 
virtual double getVal (IDalitzEvent &evt)=0
 
virtual std::complex< double > getNewVal (IDalitzEvent &evt)=0
 
virtual const DecayTreeexampleDecay ()=0
 
virtual std::string name () const
 
- Public Member Functions inherited from SpinFactor
virtual double RealVal (IDalitzEvent &evt)
 
virtual std::complex< double > ComplexVal (IDalitzEvent &evt)
 
double mRes (const AssociatedDecayTreeItem &adt, IDalitzEvent &evt)
 
double mRes (const MINT::const_counted_ptr< AssociatedDecayTree > &adt, IDalitzEvent &evt)
 
const AssociatedDecayTreetheDecay () const
 
const AssociatedDecayTreetheDecay (const DalitzEventPattern &) const
 
const AssociatedDecayTreetheDecay (IDalitzEvent &evt) const
 
 SpinFactor (const AssociatedDecayTree &decay, int nFinal=3)
 
 SpinFactor (const SpinFactor &other)
 
virtual void printParsing (std::ostream &os=std::cout) const
 
virtual ~SpinFactor ()
 
- Public Member Functions inherited from MINT::IReturnRealForEvent< IDalitzEvent >
virtual ~IReturnRealForEvent ()
 
- Public Member Functions inherited from MINT::IReturnComplexForEvent< IDalitzEvent >
virtual ~IReturnComplexForEvent ()
 
- Public Member Functions inherited from CachedByEvent< std::complex< double > >
 CachedByEvent ()
 
 CachedByEvent (const CachedByEvent &)
 
std::complex< double > getValWithCaching (IDalitzEvent &evt)
 
std::complex< double > getValWithCachingPermutation (IDalitzEvent &evt)
 
- Public Member Functions inherited from MINT::FitParDependent
virtual unsigned int size () const
 
virtual const FitParRefoperator[] (unsigned int i) const
 
virtual FitParRefoperator[] (unsigned int i)
 
virtual bool changedSinceLastCall () const
 
virtual void rememberFitParValues ()
 
virtual bool registerFitParDependence (const IFitParDependent &fpd)
 
bool registerFitParDependence (const FitParRef &fpr)
 
void removeAllFitParDependencies ()
 
 FitParDependent (IFitParRegister *daddy=0)
 
 FitParDependent (const FitParDependent &other, IFitParRegister *newDaddy=0)
 
void listFitParDependencies (std::ostream &os=std::cout) const
 
- Public Member Functions inherited from MINT::PolymorphVector< FitParRef >
 PolymorphVector ()
 
 PolymorphVector (unsigned int N)
 
 PolymorphVector (unsigned int N, const FitParRef &c)
 
 PolymorphVector (const PolymorphVector &other)
 
 PolymorphVector (const typename std::vector< FitParRef > &other)
 
virtual ~PolymorphVector ()
 
std::vector< FitParRef > & theVector ()
 
const std::vector< FitParRef > & theVector () const
 
FitParRefoperator[] (unsigned int i)
 
const FitParRefoperator[] (unsigned int i) const
 
FitParRefat (unsigned int i)
 
const FitParRefat (unsigned int i) const
 
std::vector< FitParRef >::iterator begin ()
 
std::vector< FitParRef >::const_iterator begin () const
 
std::vector< FitParRef >::iterator end ()
 
std::vector< FitParRef >::const_iterator end () const
 
std::vector< FitParRef >::iterator find (const FitParRef &c)
 
std::vector< FitParRef >::const_iterator find (const FitParRef &c) const
 
FitParReffront ()
 
const FitParReffront () const
 
FitParRefback ()
 
const FitParRefback () const
 
unsigned int size () const
 
bool empty () const
 
void push_back (const FitParRef &c)
 
void pop_back ()
 
void erase (typename std::vector< FitParRef >::iterator pos)
 
void erase (typename std::vector< FitParRef >::iterator first, typename std::vector< FitParRef >::iterator last)
 
PolymorphVector< FitParRef > & operator= (const PolymorphVector< FitParRef > &other)
 
void clear ()
 
void resize (unsigned int N)
 
void resize (unsigned int N, const FitParRef &c)
 
 operator const typename std::vector< FitParRef > & () const
 
 operator typename std::vector< FitParRef > & ()
 
bool operator== (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator!= (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator< (const MINT::PolymorphVector< FitParRef > &v2) const
 
bool operator> (const MINT::PolymorphVector< FitParRef > &v2) const
 
- Public Member Functions inherited from ISpinFactor
virtual ~ISpinFactor ()
 

Protected Member Functions

virtual bool parseTree (const DalitzEventPattern &pat)
 
- Protected Member Functions inherited from SpinFactor
TLorentzVector p (int i, IDalitzEvent &evt)
 
- Protected Member Functions inherited from MINT::IReturnRealForEvent< IDalitzEvent >
 IReturnRealForEvent ()
 
- Protected Member Functions inherited from MINT::IReturnComplexForEvent< IDalitzEvent >
 IReturnComplexForEvent ()
 
- Protected Member Functions inherited from CachedByEvent< std::complex< double > >
long int rememberNumber ()
 
long int rememberNumberPermutation (IDalitzEvent &evt)
 
long int configNumber ()
 
std::complex< double > recalculate (IDalitzEvent &evt)
 
std::complex< double > recalculatePermutation (IDalitzEvent &evt)
 
- Protected Member Functions inherited from ISpinFactor
 ISpinFactor ()
 

Protected Attributes

MINT::const_counted_ptr< AssociatedDecayTreeV1
 
MINT::const_counted_ptr< AssociatedDecayTreeV2
 
- Protected Attributes inherited from SpinFactor
const AssociatedDecayTree_theDecay
 
int _nFinal
 
std::vector< MINT::const_counted_ptr< AssociatedDecayTree > > fsPS
 
MINT::NamedParameter< int > _useZemachTensors
 
- Protected Attributes inherited from CachedByEvent< std::complex< double > >
long int _rememberNumber
 
std::vector< long int > _rememberNumberPermutation
 
long int _configNumber
 
- Protected Attributes inherited from MINT::PolymorphVector< FitParRef >
std::vector< FitParRef_vec
 

Detailed Description

Definition at line 669 of file SpinFactors4Body_FsVector.h.

Constructor & Destructor Documentation

◆ SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE()

SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE ( const AssociatedDecayTree theDecay)
inline

Definition at line 678 of file SpinFactors4Body_FsVector.h.

679  : SpinFactor(theDecay, 4), V1(0), V2(0){}
SpinFactor(const AssociatedDecayTree &decay, int nFinal=3)
Definition: SpinFactor.h:74
MINT::const_counted_ptr< AssociatedDecayTree > V1
const AssociatedDecayTree & theDecay() const
Definition: SpinFactor.h:50
MINT::const_counted_ptr< AssociatedDecayTree > V2

◆ ~SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE()

virtual SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::~SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE ( )
inlinevirtual

Definition at line 681 of file SpinFactors4Body_FsVector.h.

681 {}

Member Function Documentation

◆ exampleDecay()

virtual const DecayTree& SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::exampleDecay ( )
pure virtual

Implements SpinFactor.

Implemented in SF_BtoV1P1_V1toV2V0_V2toP2P3.

◆ getNewVal()

virtual std::complex<double> SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::getNewVal ( IDalitzEvent evt)
pure virtual

Reimplemented from SpinFactor.

Implemented in SF_BtoV1P1_V1toV2V0_V2toP2P3.

◆ getVal()

virtual double SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::getVal ( IDalitzEvent evt)
pure virtual

Implements SpinFactor.

Implemented in SF_BtoV1P1_V1toV2V0_V2toP2P3.

◆ name()

virtual std::string SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::name ( ) const
inlinevirtual

Implements SpinFactor.

Reimplemented in SF_BtoV1P1_V1toV2V0_V2toP2P3.

Definition at line 686 of file SpinFactors4Body_FsVector.h.

686  {
687  return "SpinFactor4:SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE("
688  + theDecay().oneLiner() + ")";
689  }
const AssociatedDecayTree & theDecay() const
Definition: SpinFactor.h:50
void oneLiner(std::stringstream &seam, int generation=0) const
Definition: DDTree.h:375

◆ parseTree()

bool SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::parseTree ( const DalitzEventPattern pat)
protectedvirtual

Definition at line 1573 of file SpinFactors4Body_FsVector.cpp.

1573  {
1574  bool debugThis=false;
1575 
1576  if(fsPS.size() < 4) fsPS.reserve(4);
1577  for(int i=0; i< theDecay(pat).nDgtr(); i++){
1579  if(dgtr->getVal().SVPAT() == "V") V1 = dgtr;
1580  else if(dgtr->getVal().SVPAT() == "P") fsPS[1] = dgtr;
1581  }
1582  if(0==V1 || 0==fsPS[1]){
1583  cout << "ERROR in SF_BtoV1P1_V1toV2V0_V2toP2P3::parseTree"
1584  << " Didn't find V1 or P1 " << V1.get() << ", " << fsPS[1].get() << endl;
1585  return false;
1586  }
1587 
1588  for(int i=0; i< V1->nDgtr(); i++){
1589  const_counted_ptr<AssociatedDecayTree> dgtr= V1->getDgtrTreePtr(i);
1590  if(dgtr->getVal().SVPAT() == "V" && !(dgtr->isFinalState())) V2 = dgtr;
1591  else if(dgtr->getVal().SVPAT() == "V" && dgtr->isFinalState()) fsPS[0] = dgtr;
1592  }
1593  if(0==V2 || 0==fsPS[0]){
1594  cout << "ERROR in SF_BtoV1P1_V1toV2V0_V2toP2P3::parseTree"
1595  << " Didn't find V2 or V0 " << V2.get() << ", " << fsPS[0].get() << endl;
1596  return false;
1597  }
1598 
1599  if(V2->nDgtr() != 2){
1600  cout << "ERROR in SF_BtoV1P1_V1toV2V0_V2toP2P3::parseTree"
1601  << " V2 should have 2 daughters, but it says it has "
1602  << V2->nDgtr() << "."
1603  << endl;
1604  return false;
1605  }
1606  fsPS[2] = V2->getDgtrTreePtr(0);
1607  fsPS[3] = V2->getDgtrTreePtr(1);
1608 
1609  //normalOrder(fsPS[2], fsPS[3]);
1610 
1611  if(debugThis){
1612  cout << "parsed Tree: V1:\n"
1613  << *V1
1614  << "\n V2:"
1615  << *V2
1616  << endl;
1617  for(int i=0; i<4; i++){
1618  cout << "fsPS[" << i << "]\n"
1619  << *(fsPS[i])
1620  << endl;
1621  }
1622  }
1623  // this->printYourself();
1624  return true;
1625 }
std::vector< MINT::const_counted_ptr< AssociatedDecayTree > > fsPS
Definition: SpinFactor.h:30
std::string SVPAT() const
const ValueType & getVal() const
Definition: DDTree.h:102
bool isFinalState() const
Definition: DDTree.h:93
MINT::const_counted_ptr< DDTree< ValueType > > getDgtrTreePtr(int i) const
Definition: DDTree.h:114
MINT::const_counted_ptr< AssociatedDecayTree > V1
const AssociatedDecayTree & theDecay() const
Definition: SpinFactor.h:50
int nDgtr() const
Definition: DDTree.h:96
MINT::const_counted_ptr< AssociatedDecayTree > V2

◆ printYourself()

virtual void SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::printYourself ( std::ostream &  os = std::cout) const
pure virtual

Implements SpinFactor.

Implemented in SF_BtoV1P1_V1toV2V0_V2toP2P3.

Member Data Documentation

◆ V1

MINT::const_counted_ptr<AssociatedDecayTree> SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::V1
protected

Definition at line 672 of file SpinFactors4Body_FsVector.h.

◆ V2

MINT::const_counted_ptr<AssociatedDecayTree> SF_BtoV1P1_V1toV2V0_V2toP2P3_BASE::V2
protected

Definition at line 672 of file SpinFactors4Body_FsVector.h.


The documentation for this class was generated from the following files: