ant
A2 ant: class-based analysis framework
ant::analysis::utils::KinFitter Class Reference

#include <KinFitter.h>

+ Inheritance diagram for ant::analysis::utils::KinFitter:
+ Collaboration diagram for ant::analysis::utils::KinFitter:

Classes

struct  BeamE_t
 
struct  Target_t
 

Public Member Functions

 KinFitter (UncertaintyModelPtr uncertainty_model=nullptr, bool fit_Z_vertex=false, const APLCON::Fit_Settings_t &settings=DefaultSettings)
 KinFitter applies energy-momentum constraint to proton/photons using incoming beam. More...
 
void SetZVertexSigma (double sigma)
 
bool IsZVertexFitEnabled () const noexcept
 
bool IsZVertexUnmeasured () const
 
void SetTarget (double length, double center=0.)
 
TParticlePtr GetFittedProton () const
 
TParticleList GetFittedPhotons () const
 
double GetFittedBeamE () const
 
TParticlePtr GetFittedBeamParticle () const
 
double GetFittedZVertex () const
 
double GetBeamEPull () const
 
double GetZVertexPull () const
 
std::vector< FitParticleGetFitParticles () const
 
APLCON::Result_t DoFit (double ebeam, const TParticlePtr &proton, const TParticleList &photons)
 
void SetUncertaintyModel (const UncertaintyModelPtr &uncertainty_model)
 

Protected Types

using Proton_t = FitParticle
 
using Photons_t = std::vector< FitParticle >
 

Protected Member Functions

void PrepareFit (double ebeam, const TParticlePtr &proton, const TParticleList &photons)
 
double CalcZVertexStartingPoint () const
 
- Protected Member Functions inherited from ant::analysis::utils::Fitter
 Fitter ()=default
 

Static Protected Member Functions

static std::array< double, 4 > constraintEnergyMomentum (const BeamE_t &beam, const Proton_t &proton, const Photons_t &photons, const Z_Vertex_t &)
 

Protected Attributes

BeamE_t BeamE
 
Proton_t Proton
 
Photons_t Photons
 
Z_Vertex_t Z_Vertex
 
Target_t Target
 
APLCON::Fitter< BeamE_t, Proton_t, Photons_t, Z_Vertex_t > aplcon
 

Additional Inherited Members

- Static Public Attributes inherited from ant::analysis::utils::Fitter
static const APLCON::Fit_Settings_t DefaultSettings
 

Member Typedef Documentation

◆ Photons_t

◆ Proton_t

Constructor & Destructor Documentation

◆ KinFitter()

KinFitter::KinFitter ( UncertaintyModelPtr  uncertainty_model = nullptr,
bool  fit_Z_vertex = false,
const APLCON::Fit_Settings_t &  settings = DefaultSettings 
)
explicit

KinFitter applies energy-momentum constraint to proton/photons using incoming beam.

Parameters
uncertainty_modelmodel to obtain uncertainties
settingstune the underlying APLCON fitter

Member Function Documentation

◆ CalcZVertexStartingPoint()

double KinFitter::CalcZVertexStartingPoint ( ) const
protected

◆ constraintEnergyMomentum()

std::array< double, 4 > KinFitter::constraintEnergyMomentum ( const BeamE_t beam,
const Proton_t proton,
const Photons_t photons,
const Z_Vertex_t  
)
staticprotected

◆ DoFit()

APLCON::Result_t KinFitter::DoFit ( double  ebeam,
const TParticlePtr proton,
const TParticleList photons 
)

◆ GetBeamEPull()

double KinFitter::GetBeamEPull ( ) const

◆ GetFitParticles()

std::vector< Fitter::FitParticle > KinFitter::GetFitParticles ( ) const

◆ GetFittedBeamE()

double KinFitter::GetFittedBeamE ( ) const

◆ GetFittedBeamParticle()

TParticlePtr KinFitter::GetFittedBeamParticle ( ) const

◆ GetFittedPhotons()

TParticleList KinFitter::GetFittedPhotons ( ) const

◆ GetFittedProton()

TParticlePtr KinFitter::GetFittedProton ( ) const

◆ GetFittedZVertex()

double KinFitter::GetFittedZVertex ( ) const

◆ GetZVertexPull()

double KinFitter::GetZVertexPull ( ) const

◆ IsZVertexFitEnabled()

bool KinFitter::IsZVertexFitEnabled ( ) const
noexcept

◆ IsZVertexUnmeasured()

bool KinFitter::IsZVertexUnmeasured ( ) const

◆ PrepareFit()

void KinFitter::PrepareFit ( double  ebeam,
const TParticlePtr proton,
const TParticleList photons 
)
protected

◆ SetTarget()

void KinFitter::SetTarget ( double  length,
double  center = 0. 
)

◆ SetUncertaintyModel()

void ant::analysis::utils::KinFitter::SetUncertaintyModel ( const UncertaintyModelPtr uncertainty_model)
inline

◆ SetZVertexSigma()

void KinFitter::SetZVertexSigma ( double  sigma)

Member Data Documentation

◆ aplcon

APLCON::Fitter<BeamE_t, Proton_t, Photons_t, Z_Vertex_t> ant::analysis::utils::KinFitter::aplcon
protected

◆ BeamE

BeamE_t ant::analysis::utils::KinFitter::BeamE
protected

◆ Photons

Photons_t ant::analysis::utils::KinFitter::Photons
protected

◆ Proton

Proton_t ant::analysis::utils::KinFitter::Proton
protected

◆ Target

Target_t ant::analysis::utils::KinFitter::Target
protected

◆ Z_Vertex

Z_Vertex_t ant::analysis::utils::KinFitter::Z_Vertex
protected

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