EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <fun4all_coresoftware/blob/master/offline/packages/trackreco/HelixKalmanFilter.h>
Public Member Functions | |
HelixKalmanFilter (std::vector< float > &detector_radii, std::vector< float > &detector_material, float B) | |
virtual | ~HelixKalmanFilter () |
void | addHit (SimpleHit3D &hit, HelixKalmanState &state) |
Protected Member Functions | |
void | calculateProjections (SimpleHit3D &hit, HelixKalmanState &state, Eigen::Matrix< float, 2, 5 > &H, Eigen::Matrix< float, 2, 1 > &ha) |
void | calculateMeasurements (SimpleHit3D &hit, Eigen::Matrix< float, 2, 1 > &m, Eigen::Matrix< float, 2, 2 > &G) |
void | calculateMSCovariance (HelixKalmanState &state, Eigen::Matrix< float, 5, 5 > &Q) |
void | subtractProjections (Eigen::Matrix< float, 2, 1 > &m, Eigen::Matrix< float, 2, 1 > &ha, Eigen::Matrix< float, 2, 1 > &diff) |
void | updateIntersection (HelixKalmanState &state, int layer) |
Private Member Functions | |
bool | calculateScatteringVariance (HelixKalmanState &state, float &var) |
void | calculate_dbdt (Eigen::Matrix< float, 3, 2 > &dbdt_out) |
void | calculate_dpdb (Eigen::Vector3f &p, Eigen::Matrix< float, 3, 3 > &dpdb) |
void | calculate_dApdp (HelixKalmanState &state, Eigen::Matrix< float, 3, 3 > &dApdp, Eigen::Vector3f &p, float phi, float cosphi, float sinphi) |
void | calculate_dAdAp (HelixKalmanState &state, Eigen::Matrix< float, 5, 3 > &dAdAp, float &phi_p, float &cosphi_p, float &sinphi_p) |
void | calculate_dxda (SimpleHit3D &hit, HelixKalmanState &state, Eigen::Matrix< float, 3, 5 > &dxda, float &x, float &y, float &z) |
Private Attributes | |
std::vector< float > | det_radii |
std::vector< float > | det_scatter_variance |
unsigned int | nlayers |
float | signk_store |
float | Bfield |
float | Bfield_inv |
Definition at line 11 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 11 of file HelixKalmanFilter.h
HelixKalmanFilter::HelixKalmanFilter | ( | std::vector< float > & | detector_radii, |
std::vector< float > & | detector_material, | ||
float | B | ||
) |
Definition at line 19 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 19 of file HelixKalmanFilter.cc
References det_scatter_variance.
|
inlinevirtual |
Definition at line 16 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 16 of file HelixKalmanFilter.h
void HelixKalmanFilter::addHit | ( | SimpleHit3D & | hit, |
HelixKalmanState & | state | ||
) |
Definition at line 34 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 34 of file HelixKalmanFilter.cc
References HelixKalmanState::C, calculateMeasurements(), calculateMSCovariance(), calculateProjections(), HelixKalmanState::chi2, HelixKalmanState::d, HelixKalmanState::dzdl, G, SimpleHit3D::get_layer(), H, HelixKalmanState::kappa, G4TTL::layer, Acts::UnitConstants::m, HelixKalmanState::nu, HelixKalmanState::phi, subtractProjections(), updateIntersection(), and HelixKalmanState::z0.
Referenced by CellularAutomaton_v1::process_single_track(), and CellularAutomaton_v1::process_single_triplet().
|
private |
Definition at line 288 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 288 of file HelixKalmanFilter.cc
References cos(), HelixKalmanState::d, d, dx, dy, dz, dz2, HelixKalmanState::dzdl, dzdl, k, k2, HelixKalmanState::kappa, HelixKalmanState::nu, HelixKalmanState::phi, phi, Acts::UnitConstants::s, sign(), temp1, temp2, tmp1, tmp2, tmp3, v, HelixKalmanState::x_int, and HelixKalmanState::y_int.
Referenced by calculateMSCovariance().
|
private |
Definition at line 514 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 514 of file HelixKalmanFilter.cc
References Bfield, HelixKalmanState::dzdl, dzdl, k, HelixKalmanState::kappa, HelixKalmanState::nu, and p.
Referenced by calculateMSCovariance().
|
private |
Definition at line 596 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 596 of file HelixKalmanFilter.cc
Referenced by calculateMSCovariance().
|
private |
Definition at line 564 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 564 of file HelixKalmanFilter.cc
References cos().
Referenced by calculateMSCovariance().
|
private |
Definition at line 636 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 636 of file HelixKalmanFilter.cc
References cos(), HelixKalmanState::d, d, det_radii, dz, dz2, HelixKalmanState::dzdl, dzdl, SimpleHit3D::get_layer(), SimpleHit3D::get_x(), SimpleHit3D::get_y(), Acts::UnitConstants::h, k, k2, HelixKalmanState::kappa, HelixKalmanState::nu, HelixKalmanState::phi, phi, Acts::UnitConstants::s, sign(), signk_store, temp1, temp2, tmp1, ux, uy, v, x, x2, and HelixKalmanState::z0.
Referenced by calculateProjections().
|
protected |
Definition at line 130 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 130 of file HelixKalmanFilter.cc
References SimpleHit3D::get_size(), SimpleHit3D::get_x(), SimpleHit3D::get_y(), SimpleHit3D::get_z(), Acts::UnitConstants::m, and M_PI.
Referenced by addHit().
|
protected |
Definition at line 159 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 159 of file HelixKalmanFilter.cc
References calculate_dAdAp(), calculate_dApdp(), calculate_dbdt(), calculate_dpdb(), calculateScatteringVariance(), and p.
Referenced by addHit().
|
protected |
Definition at line 98 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 98 of file HelixKalmanFilter.cc
References calculate_dxda(), det_radii, SimpleHit3D::get_layer(), SimpleHit3D::get_x(), SimpleHit3D::get_y(), M_PI, x, y, and z.
Referenced by addHit().
|
private |
Definition at line 271 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 271 of file HelixKalmanFilter.cc
References Bfield_inv, det_scatter_variance, HelixKalmanState::dzdl, k, HelixKalmanState::kappa, nlayers, and HelixKalmanState::position.
Referenced by calculateMSCovariance().
|
protected |
Definition at line 192 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 192 of file HelixKalmanFilter.cc
References M_PI.
Referenced by addHit().
|
protected |
Definition at line 205 of file HelixKalmanFilter.cc.
View newest version in sPHENIX GitHub at line 205 of file HelixKalmanFilter.cc
References cos(), HelixKalmanState::d, d, det_radii, dz, HelixKalmanState::dzdl, dzdl, Acts::UnitConstants::h, k, HelixKalmanState::kappa, G4TTL::layer, HelixKalmanState::phi, phi, HelixKalmanState::position, Acts::UnitConstants::s, sign(), signk_store, temp1, temp2, tmp1, ux, uy, v, HelixKalmanState::x_int, HelixKalmanState::y_int, HelixKalmanState::z0, and HelixKalmanState::z_int.
Referenced by addHit().
|
private |
Definition at line 46 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 46 of file HelixKalmanFilter.h
Referenced by calculate_dApdp().
|
private |
Definition at line 46 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 46 of file HelixKalmanFilter.h
Referenced by calculateScatteringVariance().
|
private |
Definition at line 42 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 42 of file HelixKalmanFilter.h
Referenced by calculate_dxda(), calculateProjections(), and updateIntersection().
|
private |
Definition at line 43 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 43 of file HelixKalmanFilter.h
Referenced by calculateScatteringVariance(), and HelixKalmanFilter().
|
private |
Definition at line 44 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 44 of file HelixKalmanFilter.h
Referenced by calculateScatteringVariance().
|
private |
Definition at line 45 of file HelixKalmanFilter.h.
View newest version in sPHENIX GitHub at line 45 of file HelixKalmanFilter.h
Referenced by calculate_dxda(), and updateIntersection().