|
ant
A2 ant: class-based analysis framework
|
#include <TreeFitter.h>
Inheritance diagram for ant::analysis::utils::TreeFitter:
Collaboration diagram for ant::analysis::utils::TreeFitter:Classes | |
| struct | iteration_t |
| struct | node_t |
| The node_t struct represents. More... | |
| struct | nodesetup_t |
Public Types | |
| using | iteration_filter_t = std::function< double()> |
| using | tree_t = Tree< node_t >::node_t |
Public Member Functions | |
| TreeFitter (ParticleTypeTree ptree, UncertaintyModelPtr uncertainty_model=nullptr, bool fit_Z_vertex=false, nodesetup_t::getter nodeSetup={}, const APLCON::Fit_Settings_t &settings=DefaultSettings) | |
| TreeFitter creates fitter for the given ParticleTypeTree. Applies IM constraint to each node, can be customized by optional nodeSetup. Supports only photon leaf permutations at the moment (but single extra final state particles are ok). More... | |
| TreeFitter (const TreeFitter &)=delete | |
| TreeFitter & | operator= (const TreeFitter &)=delete |
| TreeFitter (TreeFitter &&)=default | |
| TreeFitter & | operator= (TreeFitter &&)=default |
| void | PrepareFits (double ebeam, const TParticlePtr &proton, const TParticleList &photons) |
| void | SetIterationFilter (iteration_filter_t filter, unsigned max=0) |
| SetIterationFilter. More... | |
| tree_t | GetTreeNode (const ParticleTypeDatabase::Type &type) const |
| GetTreeNode returns the first pointer to a tree node. More... | |
| std::vector< tree_t > | GetTreeNodes (const ParticleTypeDatabase::Type &type) const |
| bool | NextFit (APLCON::Result_t &fit_result) |
| NextFit runs the next fit iteration. More... | |
Public Member Functions inherited from ant::analysis::utils::KinFitter | |
| 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< FitParticle > | GetFitParticles () const |
| APLCON::Result_t | DoFit (double ebeam, const TParticlePtr &proton, const TParticleList &photons) |
| void | SetUncertaintyModel (const UncertaintyModelPtr &uncertainty_model) |
Protected Types | |
| using | permutation_t = std::vector< int > |
| using | sum_daughters_t = std::vector< std::function< void()> > |
| using | node_constraint_t = std::function< double()> |
Protected Types inherited from ant::analysis::utils::KinFitter | |
| using | Proton_t = FitParticle |
| using | Photons_t = std::vector< FitParticle > |
Protected Member Functions | |
| void | PrepareFit (const iteration_t &it) |
| void | do_sum_daughters () const |
| std::vector< double > | constraintIMatNodes () const |
Protected Member Functions inherited from ant::analysis::utils::KinFitter | |
| 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 tree_t | MakeTree (ParticleTypeTree ptree) |
| static unsigned | CountGammas (ParticleTypeTree ptree) |
Static Protected Member Functions inherited from ant::analysis::utils::KinFitter | |
| static std::array< double, 4 > | constraintEnergyMomentum (const BeamE_t &beam, const Proton_t &proton, const Photons_t &photons, const Z_Vertex_t &) |
Protected Attributes | |
| const tree_t | tree |
| std::vector< tree_t > | tree_leaves |
| std::vector< permutation_t > | permutations |
| int | i_leaf_offset |
| sum_daughters_t | sum_daughters |
| std::vector< node_constraint_t > | node_constraints |
| std::list< iteration_t > | iterations |
| unsigned | max_iterations = 0 |
| iteration_filter_t | iteration_filter |
Protected Attributes inherited from ant::analysis::utils::KinFitter | |
| 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 |
| using ant::analysis::utils::TreeFitter::iteration_filter_t = std::function<double()> |
|
protected |
|
protected |
|
protected |
|
explicit |
TreeFitter creates fitter for the given ParticleTypeTree. Applies IM constraint to each node, can be customized by optional nodeSetup. Supports only photon leaf permutations at the moment (but single extra final state particles are ok).
| ptree | tree describing the decay to be fitted |
| uncertainty_model | the uncertainties, see KinFitter |
| fit_Z_vertex | make z vertex unfixed (not equal to zero) |
| nodeSetup | fine-grained control over each node in the particle type tree |
| settings | fit settings for APLCON (iterations, epsilons, ...) |
|
delete |
|
default |
|
protected |
|
staticprotected |
|
protected |
| TreeFitter::tree_t TreeFitter::GetTreeNode | ( | const ParticleTypeDatabase::Type & | type | ) | const |
GetTreeNode returns the first pointer to a tree node.
| type |
| std::vector< TreeFitter::tree_t > TreeFitter::GetTreeNodes | ( | const ParticleTypeDatabase::Type & | type | ) | const |
|
staticprotected |
| bool TreeFitter::NextFit | ( | APLCON::Result_t & | fit_result | ) |
NextFit runs the next fit iteration.
| fit_result |
|
delete |
|
default |
|
protected |
| void TreeFitter::PrepareFits | ( | double | ebeam, |
| const TParticlePtr & | proton, | ||
| const TParticleList & | photons | ||
| ) |
| void TreeFitter::SetIterationFilter | ( | TreeFitter::iteration_filter_t | filter, |
| unsigned | max = 0 |
||
| ) |
SetIterationFilter.
| filter | function returning a quality factor for the iteration. factor=0 means skip iteration. |
| max | only runs the best max number of iterations |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |