Hall-D Software
alpha
|
#include <DTrackFitterALT1.h>
Classes | |
class | hitInfo |
class | resiInfo |
Public Types | |
typedef DReferenceTrajectory::swim_step_t | swim_step_t |
enum | fit_type_t { kWireBased, kTimeBased } |
enum | fit_status_t { kFitNotDone, kFitSuccess, kFitFailed, kFitNoImprovement } |
Public Member Functions | |
DTrackFitterALT1 (JEventLoop *loop) | |
~DTrackFitterALT1 () | |
string | Name (void) const |
fit_status_t | FitTrack (void) |
JOBJECT_PUBLIC (DTrackFitter) | |
void | Reset (void) |
void | AddHit (const DCDCTrackHit *cdchit) |
void | AddHit (const DFDCPseudo *fdchit) |
void | AddHits (vector< const DCDCTrackHit * > cdchits) |
void | AddHits (vector< const DFDCPseudo * > fdchits) |
const vector< const DCDCTrackHit * > & | GetCDCInputHits (void) const |
const vector< const DFDCPseudo * > & | GetFDCInputHits (void) const |
const vector< const DCDCTrackHit * > & | GetCDCFitHits (void) const |
const vector< const DFDCPseudo * > & | GetFDCFitHits (void) const |
void | ClearExtrapolations (void) |
const DKinematicData & | GetInputParameters (void) const |
const DTrackingData & | GetFitParameters (void) const |
double | GetChisq (void) const |
int | GetNdof (void) const |
unsigned int | GetNumPotentialFDCHits (void) const |
unsigned int | GetNumPotentialCDCHits (void) const |
bool | GetIsSmoothed (void) const |
vector< pull_t > & | GetPulls (void) |
const map< DetectorSystem_t, vector< Extrapolation_t > > & | GetExtrapolations (void) const |
fit_type_t | GetFitType (void) const |
const DMagneticFieldMap * | GetDMagneticFieldMap (void) const |
void | SetFitType (fit_type_t type) |
void | SetInputParameters (const DTrackingData &starting_params) |
fit_status_t | FitTrack (const DVector3 &pos, const DVector3 &mom, double q, double mass, double t0=QuietNaN, DetectorSystem_t t0_det=SYS_NULL) |
fit_status_t | FitTrack (const DTrackingData &starting_params) |
fit_status_t | FindHitsAndFitTrack (const DKinematicData &starting_params, const DReferenceTrajectory *rt, JEventLoop *loop, double mass=-1.0, int N=0, double t0=QuietNaN, DetectorSystem_t t0_det=SYS_NULL) |
mass<0 means get it from starting_params More... | |
fit_status_t | FindHitsAndFitTrack (const DKinematicData &starting_params, const map< DetectorSystem_t, vector< DTrackFitter::Extrapolation_t > > &extrapolations, JEventLoop *loop, double mass, int N, double t0, DetectorSystem_t t0_det) |
jerror_t | CorrectForELoss (const DKinematicData &starting_params, DReferenceTrajectory *rt, DVector3 &pos, DVector3 &mom, double mass) |
double | CalcDensityEffect (double p, double mass, double density, double Z_over_A, double I) |
double | CalcDensityEffect (double p, double mass, double rho_Z_over_A, double LnI) |
double | CalcDensityEffect (double betagamma, double rho_Z_over_A, double LnI) |
bool | ExtrapolateToRadius (double R, const vector< Extrapolation_t > &extraps, DVector3 &pos, DVector3 &mom, double &t, double &s) const |
bool | ExtrapolateToRadius (double R, const vector< Extrapolation_t > &extraps, DVector3 &pos) const |
double | DistToWire (const DCoordinateSystem *wire, const vector< Extrapolation_t > &extrapolations, DVector3 *pos=NULL, DVector3 *mom=NULL, DVector3 *position_along_wire=NULL) const |
Protected Attributes | |
vector< const DCDCTrackHit * > | cdchits |
vector< const DFDCPseudo * > | fdchits |
DTrackingData | input_params |
fit_type_t | fit_type |
const DMagneticFieldMap * | bfield |
const DGeometry * | geom |
const DRootGeom * | RootGeom |
JEventLoop * | loop |
DTrackingData | fit_params |
double | chisq |
int | Ndof |
vector< pull_t > | pulls |
map< DetectorSystem_t, vector < Extrapolation_t > > | extrapolations |
fit_status_t | fit_status |
vector< const DCDCTrackHit * > | cdchits_used_in_fit |
vector< const DFDCPseudo * > | fdchits_used_in_fit |
bool | IsSmoothed |
unsigned int | potential_fdc_hits_on_track |
unsigned int | potential_cdc_hits_on_track |
bool | CORRECT_FOR_ELOSS |
Private Types | |
enum | state_types { state_px, state_py, state_pz, state_x, state_v } |
enum | resi_types { resi_type_cdc_anode, resi_type_fdc_anode, resi_type_fdc_cathode, resi_type_other } |
typedef vector< hitInfo > | hitsInfo |
Private Member Functions | |
double | ChiSq (fit_type_t fit_type, DReferenceTrajectory *rt, double *chisq_ptr=NULL, int *dof_ptr=NULL, vector< pull_t > *pulls_ptr=NULL) |
double | ChiSq (vector< resiInfo > &residuals, double *chisq_ptr=NULL, int *dof_ptr=NULL) |
void | GetHits (fit_type_t fit_type, DReferenceTrajectory *rt, hitsInfo &hinfo) |
vector< bool > | GetResiInfo (DMatrix &state, const swim_step_t *start_step, DReferenceTrajectory *rt, hitsInfo &hinfo, vector< resiInfo > &residuals) |
vector< bool > | GetResiInfo (DReferenceTrajectory *rt, hitsInfo &hinfo, vector< resiInfo > &residuals) |
fit_status_t | LeastSquaresB (hitsInfo &hinfo, DReferenceTrajectory *rt) |
void | FilterGood (DMatrix &my_resiv, vector< bool > &my_good, vector< bool > &good_all) |
void | PrintChisqElements (DMatrix &resiv, DMatrix &cov_meas, DMatrix &cov_muls, DMatrix &weights) |
void | ForceLRTruth (JEventLoop *loop, DReferenceTrajectory *rt, hitsInfo &hinfo) |
void | FillDebugHists (DReferenceTrajectory *rt, DVector3 &vertex_pos, DVector3 &vertex_mom) |
A global least-squares track fitter. This has been superceded by the DTrackFitterKalmanSIMD class.
Definition at line 41 of file DTrackFitterALT1.h.
|
private |
Definition at line 80 of file DTrackFitterALT1.h.
Definition at line 46 of file DTrackFitterALT1.h.
|
inherited |
Enumerator | |
---|---|
kFitNotDone | |
kFitSuccess | |
kFitFailed | |
kFitNoImprovement |
Definition at line 70 of file DTrackFitter.h.
|
inherited |
Enumerator | |
---|---|
kWireBased | |
kTimeBased |
Definition at line 65 of file DTrackFitter.h.
|
private |
Enumerator | |
---|---|
resi_type_cdc_anode | |
resi_type_fdc_anode | |
resi_type_fdc_cathode | |
resi_type_other |
Definition at line 61 of file DTrackFitterALT1.h.
|
private |
Definition at line 53 of file DTrackFitterALT1.h.
DTrackFitterALT1::DTrackFitterALT1 | ( | JEventLoop * | loop | ) |
Definition at line 54 of file DTrackFitterALT1.cc.
References _DBG_, DTrackFitter::bfield, cdc_can_resi, cdc_double_hit_prob, cdc_single_hit_prob, CDC_USE_PARAMETERIZED_SIGMA, cdcdoca_vs_dist, cdcdoca_vs_dist_vs_ring, chisq_final_vs_initial, CHISQ_GOOD_LIMIT, chisq_vs_p_vs_theta, chisq_vs_pass, dapp, dchisq_vs_pass, DEBUG_HISTS, DEBUG_LEVEL, DEFAULT_MASS, dist_axial, dist_stereo, doca_axial, doca_stereo, fdc_can_resi, fdc_can_resi_cath, fdc_double_hit_prob, fdc_single_hit_prob, fdcdoca_vs_dist, fdcu_vs_s, DTrackFitter::geom, DReferenceTrajectory::GetMass(), initial_chisq_vs_Npasses, DCoordinateSystem::L, lambda, LEAST_SQUARES_DP, LEAST_SQUARES_DX, LEAST_SQUARES_MAX_E2NORM, LEAST_SQUARES_MIN_HITS, DTrackFitter::loop, LR_FORCE_TRUTH, MATERIAL_MAP_MODEL, MAX_CHISQ_DIFF, MAX_FIT_ITERATIONS, nhits_final_vs_initial, Npasses, DCoordinateSystem::origin, ptotal, residuals_cdc, residuals_cdc_vs_s, residuals_fdc_anode, residuals_fdc_anode_vs_s, residuals_fdc_cathode, residuals_fdc_cathode_vs_s, DTrackFitter::RootGeom, rt, DCoordinateSystem::sdir, DReferenceTrajectory::SetDGeometry(), DReferenceTrajectory::SetDRootGeom(), DReferenceTrajectory::SetMass(), SIGMA_CDC, SIGMA_FDC_ANODE, SIGMA_FDC_CATHODE, target, TARGET_CONSTRAINT, DCoordinateSystem::tdir, tmprt, DCoordinateSystem::udir, USE_CDC, USE_FDC, USE_FDC_CATHODE, and USE_MULS_COVARIANCE.
DTrackFitterALT1::~DTrackFitterALT1 | ( | ) |
Definition at line 217 of file DTrackFitterALT1.cc.
|
inherited |
Definition at line 120 of file DTrackFitter.cc.
Referenced by DTrackTimeBased_factory_StraightLine::evnt(), DTrackWireBased_factory_StraightLine::evnt(), DTrackHitSelector::GetCDCHits(), and DTrackHitSelector::GetFDCHits().
|
inherited |
Definition at line 138 of file DTrackFitter.cc.
|
inherited |
Definition at line 129 of file DTrackFitter.cc.
Referenced by DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_THROWN::evnt(), DTrackWireBased_factory_THROWN::evnt(), and DTrackCandidate_factory_THROWN::evnt().
|
inherited |
Definition at line 147 of file DTrackFitter.cc.
|
inherited |
Definition at line 412 of file DTrackFitter.cc.
Referenced by DTrackFitterKalmanSIMD::GetdEdx().
|
inherited |
Definition at line 422 of file DTrackFitter.cc.
|
inherited |
|
privatevirtual |
Calculate the chisq for the given reference trajectory based on the hits currently registered through the DTrackFitter base class into the cdchits and fdchits vectors. This does not get called by the core part of the fitter, but is used, rather, to give an "independent" value of the chisq based only on a reference trajectory and the input hits. It is called after the fit to calculate the final chisq.
Implements DTrackFitter.
Definition at line 443 of file DTrackFitterALT1.cc.
References ForceLRTruth(), GetHits(), GetResiInfo(), DTrackFitter::kTimeBased, DTrackFitter::loop, LR_FORCE_TRUTH, and DTrackFitter::pulls.
Referenced by FitTrack(), and LeastSquaresB().
|
private |
Definition at line 468 of file DTrackFitterALT1.cc.
References _DBG_, DTrackFitter::chisq, cov_meas, cov_muls, DEBUG_LEVEL, DTrackFitterALT1::resiInfo::err, DReferenceTrajectory::swim_step_t::itheta02, DReferenceTrajectory::swim_step_t::itheta02s, DReferenceTrajectory::swim_step_t::itheta02s2, DTrackFitterALT1::resiInfo::layer, DTrackFitter::Ndof, PrintChisqElements(), DTrackFitter::pulls, DTrackFitterALT1::resiInfo::resi, resiv, DReferenceTrajectory::swim_step_t::s, sqrt(), DTrackFitterALT1::resiInfo::step, USE_MULS_COVARIANCE, and weights.
|
inlineinherited |
Definition at line 141 of file DTrackFitter.h.
References SYS_BCAL, SYS_CDC, SYS_DIRC, SYS_FCAL, SYS_FDC, SYS_START, and SYS_TOF.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), DTrackFitterStraightTrack::GetExtrapolations(), and DTrackFitterKalmanSIMD::KalmanLoop().
|
inherited |
Definition at line 362 of file DTrackFitter.cc.
References CDCSortByRincreasing(), DKinematicData::charge(), DReferenceTrajectory::FastSwim(), FDCSortByZincreasing(), DReferenceTrajectory::kBackward, DReferenceTrajectory::kForward, DCoordinateSystem::L, DKinematicData::momentum(), DCoordinateSystem::origin, DKinematicData::position(), DCoordinateSystem::sdir, DReferenceTrajectory::SetDGeometry(), DReferenceTrajectory::SetMass(), DReferenceTrajectory::SetPLossDirection(), DCoordinateSystem::tdir, and DCoordinateSystem::udir.
|
inherited |
Definition at line 537 of file DTrackFitter.cc.
References DCoordinateSystem::origin, sin(), and DCoordinateSystem::udir.
Referenced by JEventProcessor_FDCProjectionResiduals::evnt(), JEventProcessor_FDCProjectionResiduals::Expect_Hit(), and JEventProcessor_CDC_Efficiency::Fill_Efficiency_Histos().
|
inherited |
Definition at line 473 of file DTrackFitter.cc.
References alpha, DTrackFitter::Extrapolation_t::momentum, DTrackFitter::Extrapolation_t::position, DTrackFitter::Extrapolation_t::s, sqrt(), and DTrackFitter::Extrapolation_t::t.
Referenced by DBCALCluster_factory::clusterize(), DParticleID::Distance_ToTrack(), JEventProcessor_BCAL_TDC_Timing::evnt(), JEventProcessor_pi0bcalskim::evnt(), JEventProcessor_BCAL_point_calib::evnt(), JEventProcessor_BCAL_inv_mass::evnt(), JEventProcessor_BCAL_Eff::evnt(), DEventProcessor_BCAL_gainmatrix::evnt(), DParticleID::Get_StartTime(), and DCustomAction_p2pi_unusedHists::Perform_Action().
|
inherited |
Definition at line 527 of file DTrackFitter.cc.
|
private |
Definition at line 1434 of file DTrackFitterALT1.cc.
References cdcdoca_vs_dist, cdcdoca_vs_dist_vs_ring, DTrackFitter::cdchits, dist_axial, dist_stereo, DReferenceTrajectory::DistToRT(), doca_axial, doca_stereo, fdcdoca_vs_dist, DTrackFitter::fdchits, fdcu_vs_s, DReferenceTrajectory::GetLastDistAlongWire(), DReferenceTrajectory::GetMass(), DFDCWire::layer, ptotal, residuals_cdc, residuals_cdc_vs_s, residuals_fdc_anode, residuals_fdc_anode_vs_s, residuals_fdc_cathode, residuals_fdc_cathode_vs_s, DCDCWire::ring, DFDCPseudo::s, sqrt(), DCDCWire::stereo, DCDCTrackHit::tdrift, DFDCPseudo::time, u, DCDCTrackHit::wire, and DFDCPseudo::wire.
Referenced by FitTrack().
|
private |
Remove elements from my_resiv that are not "good" according to the good_all list. The my_good and good_all vectors should be the same size. The number of "true" entries in my_good should be the size of the my_resiv vector. For entries in the my_good vector that are true, but have an entry in good_all that is false, the corresponding entry in my_resiv will be removed. The my_resiv matrix (which should be N x 1) will be resized upon exit. The my_good vector will be set equal to good_all upon exit also so that my_resiv and my_good stay in sync.
Definition at line 1279 of file DTrackFitterALT1.cc.
References Ncols.
Referenced by LeastSquaresB().
|
inherited |
mass<0 means get it from starting_params
Fit a DTrackCandidate using a given mass hypothesis.
This will perform a full wire-based and time-based fit using the given mass and starting from the given candidate. The given DReferenceTrajectory is used to swim the track numerous times during the various stages but will be left with the final time-based fit result. The JEventLoop given will be used to get the hits (CDC and FDC) and default DTrackHitSelector to use for the fit.
Definition at line 271 of file DTrackFitter.cc.
References _DBG_, DKinematicData::charge(), DTrackHitSelector::GetAllHits(), IDTrack(), DTrackHitSelector::kHelical, DTrackHitSelector::kWireBased, DKinematicData::mass(), DKinematicData::momentum(), DKinematicData::position(), start_time, and prof_time::TimeDiffNow().
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), and DTrackTimeBased_factory::DoFit().
|
inherited |
Definition at line 198 of file DTrackFitter.cc.
References _DBG_, DKinematicData::charge(), DTrackHitSelector::GetCDCHits(), DTrackHitSelector::GetFDCHits(), IDTrack(), DKinematicData::mass(), DKinematicData::momentum(), DKinematicData::position(), start_time, SYS_CDC, and SYS_FDC.
|
virtual |
Fit a track candidate
Implements DTrackFitter.
Definition at line 227 of file DTrackFitterALT1.cc.
References _DBG_, DTrackFitter::cdchits, DTrackFitter::cdchits_used_in_fit, DKinematicData::charge(), ChiSq(), DTrackFitter::chisq, CHISQ_GOOD_LIMIT, chisq_vs_pass, dchisq_vs_pass, DEBUG_HISTS, DEBUG_LEVEL, DReferenceTrajectory::DistToRT(), eventnumber, DTrackFitter::fdchits, DTrackFitter::fdchits_used_in_fit, FillDebugHists(), DReferenceTrajectory::FindClosestSwimStep(), DTrackFitter::fit_params, DTrackFitter::fit_status, DTrackFitter::fit_type, ForceLRTruth(), GetHits(), DReferenceTrajectory::GetLastDOCAPoint(), IDTrack(), initial_chisq_vs_Npasses, DTrackFitter::input_params, DReferenceTrajectory::kBackward, DTrackFitter::kFitFailed, DTrackFitter::kFitNoImprovement, DTrackFitter::kFitNotDone, DTrackFitter::kFitSuccess, DReferenceTrajectory::kForward, DTrackFitter::kTimeBased, DTrackFitter::kWireBased, LeastSquaresB(), DTrackFitter::loop, LR_FORCE_TRUTH, DKinematicData::mass(), MAX_CHISQ_DIFF, MAX_FIT_ITERATIONS, DReferenceTrajectory::swim_step_t::mom, DKinematicData::momentum(), DTrackFitter::Ndof, Npasses, DReferenceTrajectory::Nswim_steps, DCoordinateSystem::origin, DKinematicData::position(), DReferenceTrajectory::q, rt, DReferenceTrajectory::swim_step_t::s, DReferenceTrajectory::SetCheckMaterialBoundaries(), DReferenceTrajectory::SetMass(), DKinematicData::setMomentum(), DKinematicData::setPID(), DReferenceTrajectory::SetPLossDirection(), DKinematicData::setPosition(), DReferenceTrajectory::Swim(), DReferenceTrajectory::swim_steps, target, and tmprt.
|
inherited |
Definition at line 156 of file DTrackFitter.cc.
References IDTrack(), start_time, and prof_time::TimeDiffNow().
Referenced by DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inherited |
Definition at line 179 of file DTrackFitter.cc.
References start_time, and prof_time::TimeDiffNow().
|
private |
This routine is called when the TRKFIT:LR_FORCE_TRUTH parameters is set to a non-zero value (e.g. -PTRKFIT:LR_FORCE_TRUTH=1 is passed on the command line). This is used only for debugging and only with Monte Carlo data.
This routine will adjust the left-right choice of each hit based on the current fit track (represented by rt), and the truth information contained in the the DMCTruthPoint objects. It assumes the hits in hinfo correspond to the track represented by rt.
Definition at line 1341 of file DTrackFitterALT1.cc.
References _DBG_, DEBUG_LEVEL, DTrackFitterALT1::hitInfo::dist, DReferenceTrajectory::DistToRT(), DTrackFitterALT1::hitInfo::err, DReferenceTrajectory::GetLastDistAlongWire(), DReferenceTrajectory::GetLastDOCAPoint(), DTrackHitSelectorTHROWN::GetMCTrackHit(), DCoordinateSystem::origin, DMCTrackHit::phi, DMCTrackHit::r, sin(), target, u, DTrackFitterALT1::hitInfo::u_err, DCoordinateSystem::udir, DTrackFitterALT1::hitInfo::wire, and DMCTrackHit::z.
Referenced by ChiSq(), and FitTrack().
|
inlineinherited |
Definition at line 139 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 137 of file DTrackFitter.h.
|
inlineinherited |
Definition at line 154 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 168 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::CorrectForELoss(), and JEventProcessor_dumpcandidates::evnt().
|
inlineinherited |
Definition at line 163 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), DTrackWireBased_factory_StraightLine::evnt(), and DTrackFitterStraightTrack::FitTrack().
|
inlineinherited |
Definition at line 140 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 138 of file DTrackFitter.h.
|
inlineinherited |
Definition at line 153 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 167 of file DTrackFitter.h.
|
private |
Definition at line 611 of file DTrackFitterALT1.cc.
References CDC_USE_PARAMETERIZED_SIGMA, DTrackFitter::cdchits, DCDCTrackHit::dist, DTrackFitterALT1::hitInfo::dist, DReferenceTrajectory::DistToRT(), DTrackFitterALT1::hitInfo::err, DTrackFitter::fdchits, DReferenceTrajectory::GetLastDOCAPoint(), DReferenceTrajectory::GetMass(), DTrackFitterALT1::hitInfo::good, DTrackFitterALT1::hitInfo::good_u, DTrackFitter::kWireBased, SIGMA_CDC, SIGMA_FDC_ANODE, sqrt(), target, TARGET_CONSTRAINT, DCDCTrackHit::tdrift, DFDCPseudo::time, DTrackFitterALT1::hitInfo::u_dist, DTrackFitterALT1::hitInfo::u_err, USE_CDC, USE_FDC, DCDCTrackHit::wire, DTrackFitterALT1::hitInfo::wire, DFDCPseudo::wire, and x.
Referenced by ChiSq(), and FitTrack().
|
inlineinherited |
Definition at line 152 of file DTrackFitter.h.
|
inlineinherited |
Definition at line 160 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 155 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 157 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), and DTrackTimeBased_factory::DoFit().
|
inlineinherited |
Definition at line 156 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), and DTrackTimeBased_factory::DoFit().
|
inlineinherited |
Definition at line 162 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), and DTrackWireBased_factory_StraightLine::evnt().
|
private |
Calculate the chi-squared for a track specified by state relative to the given reference trajectory. This is just a wrapper for ChiSq(DReferenceTrajectory rt, vector<const DCoordinateSystem> &wires, vector<DVector3> &shifts, vector<double> &errs, vector<double> &chisqv) that accepts the state vector and re-swims the trajectory.
Definition at line 771 of file DTrackFitterALT1.cc.
References _DBG_, DEBUG_LEVEL, DReferenceTrajectory::swim_step_t::mom, DReferenceTrajectory::Nswim_steps, DCoordinateSystem::origin, DCoordinateSystem::sdir, state_px, state_py, state_pz, state_v, state_x, DReferenceTrajectory::Swim(), DCoordinateSystem::tdir, and DCoordinateSystem::udir.
Referenced by ChiSq(), and LeastSquaresB().
|
private |
Definition at line 825 of file DTrackFitterALT1.cc.
References DTrackFitterALT1::hitInfo::dist, DReferenceTrajectory::DistToRT(), DTrackFitterALT1::hitInfo::err, DTrackFitterALT1::resiInfo::err, DReferenceTrajectory::GetLastDistAlongWire(), DReferenceTrajectory::GetLastSwimStep(), DTrackFitterALT1::hitInfo::good, DTrackFitterALT1::hitInfo::good_u, DTrackFitterALT1::resiInfo::hit, DFDCWire::layer, DTrackFitterALT1::resiInfo::layer, DTrackFitterALT1::resiInfo::resi, DTrackFitterALT1::resiInfo::resi_type, resi_type_cdc_anode, resi_type_fdc_anode, resi_type_fdc_cathode, resi_type_other, DCDCWire::ring, DTrackFitterALT1::resiInfo::step, u, DTrackFitterALT1::hitInfo::u_dist, DTrackFitterALT1::hitInfo::u_err, DTrackFitterALT1::hitInfo::u_lorentz, and DTrackFitterALT1::hitInfo::wire.
|
inherited |
|
private |
Fit the track with starting parameters given in the first step of the reference trajectory rt. On return, the reference trajectory rt will represent the final fit parameters and chisq, Ndof, resiv, cov_meas, cov_muls, and cov_parm will be filled based on the fit results.
This determines the best fit of the track using the least squares method described by R. Mankel Rep. Prog. Phys. 67 (2004) 553-622 pg 565. Since it uses a linear approximation for the chisq dependance on the fit parameters, several calls may be required for convergence.
Definition at line 908 of file DTrackFitterALT1.cc.
References _DBG_, ChiSq(), DTrackFitter::chisq, cov_meas, cov_muls, cov_parm, DEBUG_HISTS, DEBUG_LEVEL, F, FilterGood(), GetResiInfo(), DTrackFitter::kFitFailed, DTrackFitter::kFitNoImprovement, DTrackFitter::kFitSuccess, lambda, LEAST_SQUARES_DP, LEAST_SQUARES_DX, LEAST_SQUARES_MAX_E2NORM, LEAST_SQUARES_MIN_HITS, DReferenceTrajectory::swim_step_t::mom, DTrackFitter::Ndof, DReferenceTrajectory::Nswim_steps, DCoordinateSystem::origin, DReferenceTrajectory::q, resiv, DCoordinateSystem::sdir, sqrt(), state_px, state_py, state_pz, state_v, state_x, DReferenceTrajectory::swim_steps, DCoordinateSystem::tdir, tmprt, DCoordinateSystem::udir, and weights.
Referenced by FitTrack().
|
inlinevirtual |
|
private |
This is for debugging only.
Definition at line 1317 of file DTrackFitterALT1.cc.
References _DBG_, DTrackFitter::Ndof, and sqrt().
Referenced by ChiSq().
|
inherited |
Definition at line 94 of file DTrackFitter.cc.
References start_time, and prof_time::TimeDiffNow().
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), DTrackTimeBased_factory_StraightLine::evnt(), DTrackWireBased_factory_StraightLine::evnt(), DTrackWireBased_factory_THROWN::evnt(), DTrackTimeBased_factory_THROWN::evnt(), and DTrackCandidate_factory_THROWN::evnt().
|
inlineinherited |
Definition at line 170 of file DTrackFitter.h.
Referenced by DTrackTimeBased_factory::AddMissingTrackHypothesis(), DTrackWireBased_factory::DoFit(), DTrackTimeBased_factory::DoFit(), and DTrackTimeBased_factory_StraightLine::evnt().
|
inlineinherited |
Definition at line 171 of file DTrackFitter.h.
|
protectedinherited |
Definition at line 228 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CalcDerivAndJacobian(), DTrackFitterALT1(), DTrackFitterKalmanSIMD::DTrackFitterKalmanSIMD(), DTrackFitterKalmanSIMD::ExtrapolateCentralToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateForwardToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateToVertex(), DTrackFitterKalmanSIMD::FillPullsVectorEntry(), DTrackFitterRiemann::FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterKalmanSIMD_ALT1::KalmanForward(), DTrackFitterKalmanSIMD::KalmanForward(), DTrackFitterKalmanSIMD::KalmanLoop(), DTrackFitterKalmanSIMD::PropagateCentral(), DTrackFitterKalmanSIMD::SetCDCForwardReferenceTrajectory(), DTrackFitterKalmanSIMD::SetCDCReferenceTrajectory(), DTrackFitterKalmanSIMD::SetReferenceTrajectory(), DTrackFitterRiemann::SetSeed(), DTrackFitterKalmanSIMD::SmoothCentral(), DTrackFitterKalmanSIMD::Step(), DTrackFitterKalmanSIMD::StepJacobian(), and DTrackFitterKalmanSIMD::StepStateAndCovariance().
|
private |
Definition at line 157 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 155 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 155 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 126 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 144 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 143 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
protectedinherited |
Definition at line 224 of file DTrackFitter.h.
Referenced by FillDebugHists(), DTrackFitterStraightTrack::FitCentralTrack(), DTrackFitterStraightTrack::FitForwardTrack(), DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), GetHits(), DTrackFitterStraightTrack::KalmanFilter(), and DTrackFitterStraightTrack::Smooth().
|
protectedinherited |
Definition at line 241 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterStraightTrack::FitCentralTrack(), DTrackFitterStraightTrack::FitForwardTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), and DTrackFitterKalmanSIMD::KalmanLoop().
|
protectedinherited |
Definition at line 235 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterRiemann::ChiSq(), ChiSq(), DTrackFitterKalmanSIMD::ChiSq(), DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), DTrackLSFitter::getChiSquared(), and LeastSquaresB().
|
private |
Definition at line 148 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 129 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
private |
Definition at line 158 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 153 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
protectedinherited |
Definition at line 250 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CalcDeriv(), DTrackFitterKalmanSIMD::CalcDerivAndJacobian(), DTrackFitterKalmanSIMD::ExtrapolateCentralToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateForwardToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateToVertex(), DTrackFitterKalmanSIMD::KalmanCentral(), DTrackFitterKalmanSIMD_ALT1::KalmanForward(), DTrackFitterKalmanSIMD::KalmanForward(), DTrackFitterKalmanSIMD::KalmanForwardCDC(), DTrackFitterKalmanSIMD::PropagateCentral(), DTrackFitterKalmanSIMD::PropagateForward(), DTrackFitterKalmanSIMD::PropagateForwardCDC(), and DTrackFitterKalmanSIMD::StepJacobian().
|
private |
Measurement errors of hits (diagonal Nmeasurements x Nmeasurements)
Definition at line 106 of file DTrackFitterALT1.h.
Referenced by ChiSq(), and LeastSquaresB().
|
private |
Covariance of hits due to multiple scattering (Nmeasurements x Nmeasurements)
Definition at line 107 of file DTrackFitterALT1.h.
Referenced by ChiSq(), and LeastSquaresB().
|
private |
Covariance of fit parameters (Nparms x Nparms (where Nparms=5))
Definition at line 111 of file DTrackFitterALT1.h.
Referenced by LeastSquaresB().
|
private |
Definition at line 153 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
private |
Definition at line 121 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), FitTrack(), and LeastSquaresB().
|
private |
Definition at line 122 of file DTrackFitterALT1.h.
Referenced by ChiSq(), DTrackFitterALT1(), FitTrack(), ForceLRTruth(), GetResiInfo(), and LeastSquaresB().
|
private |
Definition at line 134 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 146 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 146 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 147 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 147 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 116 of file DTrackFitterALT1.h.
Referenced by FitTrack().
|
protectedinherited |
Definition at line 238 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterKalmanSIMD::ExtrapolateCentralToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateForwardToOtherDetectors(), DTrackFitterKalmanSIMD::FitTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), DTrackFitterStraightTrack::GetExtrapolations(), and DTrackFitterKalmanSIMD::KalmanLoop().
|
private |
Definition at line 157 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 157 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 156 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 156 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 145 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
protectedinherited |
Definition at line 225 of file DTrackFitter.h.
Referenced by FillDebugHists(), DTrackFitterStraightTrack::FitForwardTrack(), DTrackFitterRiemann::FitLine(), DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), GetHits(), DTrackFitterStraightTrack::KalmanFilter(), DTrackFitterStraightTrack::SetReferenceTrajectory(), DTrackFitterRiemann::SetSeed(), and DTrackFitterStraightTrack::Smooth().
|
protectedinherited |
Definition at line 242 of file DTrackFitter.h.
Referenced by DTrackFitterStraightTrack::FitForwardTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterKalmanSIMD::ForwardFit(), and DTrackFitterKalmanSIMD::KalmanLoop().
|
private |
Definition at line 145 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
protectedinherited |
Definition at line 234 of file DTrackFitter.h.
Referenced by DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), and DTrackFitterKalmanSIMD::FitTrack().
|
protectedinherited |
Definition at line 240 of file DTrackFitter.h.
Referenced by FitTrack(), DTrackLSFitter::FitTrack(), and DTrackFitterKalmanSIMD::FitTrack().
|
protectedinherited |
Definition at line 227 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterKalmanSIMD::ExtrapolateToVertex(), DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), DTrackFitterKalmanSIMD::KalmanCentral(), DTrackFitterStraightTrack::KalmanFilter(), DTrackFitterKalmanSIMD_ALT1::KalmanForward(), DTrackFitterKalmanSIMD::KalmanForward(), DTrackFitterKalmanSIMD::KalmanForwardCDC(), DTrackFitterKalmanSIMD::KalmanLoop(), DTrackFitterKalmanSIMD::PropagateCentral(), DTrackFitterKalmanSIMD::PropagateForward(), DTrackFitterKalmanSIMD::PropagateForwardCDC(), DTrackFitterRiemann::SetSeed(), and DTrackFitterStraightTrack::Smooth().
|
protectedinherited |
Definition at line 229 of file DTrackFitter.h.
Referenced by DTrackFitterALT1(), DTrackFitterKalmanSIMD::DTrackFitterKalmanSIMD(), DTrackFitterStraightTrack::DTrackFitterStraightTrack(), DTrackFitterKalmanSIMD::ExtrapolateCentralToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateForwardToOtherDetectors(), DTrackFitterKalmanSIMD::ExtrapolateToVertex(), DTrackFitterRiemann::GetProcessNoise(), DTrackFitterKalmanSIMD::PropagateCentral(), DTrackFitterKalmanSIMD::PropagateForward(), and DTrackFitterKalmanSIMD::PropagateForwardCDC().
|
private |
Definition at line 153 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
protectedinherited |
Definition at line 226 of file DTrackFitter.h.
Referenced by DTrackFitterRiemann::FitTrack(), FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), DTrackFitterKalmanSIMD::KalmanLoop(), and DTrackLSFitter::setFitterStartParams().
|
protectedinherited |
Definition at line 244 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), DTrackFitterStraightTrack::FitCentralTrack(), DTrackFitterStraightTrack::FitForwardTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), and DTrackFitterKalmanSIMD::KalmanLoop().
|
private |
Definition at line 159 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and LeastSquaresB().
|
private |
Definition at line 130 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and LeastSquaresB().
|
private |
Definition at line 131 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and LeastSquaresB().
|
private |
Definition at line 133 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and LeastSquaresB().
|
private |
Definition at line 132 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and LeastSquaresB().
|
protectedinherited |
Definition at line 231 of file DTrackFitter.h.
Referenced by ChiSq(), DTrackFitterALT1(), FitTrack(), and DTrackLSFitter::FitTrack().
|
private |
Definition at line 136 of file DTrackFitterALT1.h.
Referenced by ChiSq(), DTrackFitterALT1(), and FitTrack().
|
private |
Definition at line 141 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 123 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
private |
Definition at line 124 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
protectedinherited |
Definition at line 236 of file DTrackFitter.h.
Referenced by DTrackFitterRiemann::ChiSq(), ChiSq(), FitTrack(), DTrackLSFitter::FitTrack(), DTrackFitterStraightTrack::FitTrack(), DTrackFitterKalmanSIMD::FitTrack(), LeastSquaresB(), and PrintChisqElements().
|
private |
Definition at line 149 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 150 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FitTrack().
|
protectedinherited |
Definition at line 247 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::FitTrack().
|
protectedinherited |
Definition at line 246 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::FitTrack().
|
private |
Definition at line 151 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
protectedinherited |
Definition at line 237 of file DTrackFitter.h.
Referenced by DTrackFitterKalmanSIMD::CentralFit(), ChiSq(), DTrackFitterKalmanSIMD::ChiSq(), DTrackFitterKalmanSIMD::FitTrack(), DTrackFitterKalmanSIMD::ForwardCDCFit(), DTrackFitterKalmanSIMD::ForwardFit(), DTrackFitterKalmanSIMD::KalmanLoop(), DTrackFitterStraightTrack::Smooth(), and DTrackFitterKalmanSIMD_ALT1::SmoothForward().
|
private |
Definition at line 152 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 154 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 152 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 154 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 152 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
Definition at line 154 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and FillDebugHists().
|
private |
residuals vector (Nmeasurements x 1)
Definition at line 105 of file DTrackFitterALT1.h.
Referenced by ChiSq(), and LeastSquaresB().
|
protectedinherited |
Definition at line 230 of file DTrackFitter.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 119 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), FitTrack(), and ~DTrackFitterALT1().
|
private |
Definition at line 118 of file DTrackFitterALT1.h.
|
private |
Definition at line 125 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 127 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 128 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 114 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), FitTrack(), ForceLRTruth(), GetHits(), and ~DTrackFitterALT1().
|
private |
Definition at line 135 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 119 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), FitTrack(), LeastSquaresB(), and ~DTrackFitterALT1().
|
private |
Definition at line 140 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 138 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1(), and GetHits().
|
private |
Definition at line 139 of file DTrackFitterALT1.h.
Referenced by DTrackFitterALT1().
|
private |
Definition at line 137 of file DTrackFitterALT1.h.
Referenced by ChiSq(), and DTrackFitterALT1().
|
private |
Inverse of cov_meas + cov_muls.
Definition at line 108 of file DTrackFitterALT1.h.
Referenced by ChiSq(), and LeastSquaresB().