![]() |
ATLAS Offline Software
|
Namespaces | |
| namespace | MuonExperimental::Gx2fConstants |
Classes | |
| struct | MuonExperimental::Gx2fMaterialProperties |
| A container to store material properties for each material surface. More... | |
| struct | MuonExperimental::Gx2FitterExtensions< traj_t > |
| Extension struct which holds delegates to customise the GX2F behaviour. More... | |
| struct | MuonExperimental::Gx2FitterOptions< traj_t > |
| Combined options for the Global-Chi-Square fitter. More... | |
| struct | MuonExperimental::Gx2FitterResult< traj_t > |
| Result container for a global chi-square fit. More... | |
| struct | MuonExperimental::Gx2fSystem |
| A container to manage all properties of a gx2f system. More... | |
| class | MuonExperimental::Gx2Fitter< propagator_t, traj_t > |
| Global Chi Square fitter (GX2F) implementation. More... | |
Functions | |
| void | MuonExperimental::addMeasurementToGx2fSumsBackend (Gx2fSystem &extendedSystem, const std::vector< BoundMatrix > &jacobianFromStart, const std::vector< std::size_t > &materialIndices, const std::vector< double > &qOverPderiv, const Eigen::MatrixXd &covarianceMeasurement, const BoundVector &predicted, const Eigen::VectorXd &measurement, const Eigen::MatrixXd &projector, const Logger &logger) |
| Adds a measurement to the GX2F equation system in a modular backend function. | |
| template<std::size_t kMeasDim, typename track_state_t> | |
| void | MuonExperimental::addMeasurementToGx2fSums (Gx2fSystem &extendedSystem, const std::vector< BoundMatrix > &jacobianFromStart, const std::vector< std::size_t > &materialIndices, const std::vector< double > &qOverPderiv, const track_state_t &trackState, const Logger &logger) |
| Process measurements and fill the aMatrix and bVector. | |
| template<TrackProxyConcept track_proxy_t> | |
| void | MuonExperimental::fillGx2fSystem (const track_proxy_t track, Gx2fSystem &extendedSystem, const std::unordered_map< GeometryIdentifier, Gx2fMaterialProperties > &materialMap, const std::vector< std::size_t > &materialParamIndices, std::vector< GeometryIdentifier > &geoIdVector, const Logger &logger) |
| Fill the GX2F system with data from a track. | |
| Eigen::VectorXd | MuonExperimental::computeGx2fDeltaParams (const Gx2fSystem &extendedSystem) |
| Solve the gx2f system to get the delta parameters for the update. | |
| void | MuonExperimental::updateGx2fParams (BoundTrackParameters ¶ms, const Eigen::VectorXd &deltaParamsExtended, std::unordered_map< GeometryIdentifier, Gx2fMaterialProperties > &materialMap, const std::vector< GeometryIdentifier > &geoIdVector) |
| Update parameters (and scattering angles if applicable). | |
| void | MuonExperimental::updateGx2fCovarianceParams (BoundMatrix &fullCovariancePredicted, Gx2fSystem &extendedSystem) |
| Calculate and update the covariance of the fitted parameters. | |
| void MuonExperimental::addMeasurementToGx2fSums | ( | Gx2fSystem & | extendedSystem, |
| const std::vector< BoundMatrix > & | jacobianFromStart, | ||
| const std::vector< std::size_t > & | materialIndices, | ||
| const std::vector< double > & | qOverPderiv, | ||
| const track_state_t & | trackState, | ||
| const Logger & | logger ) |
Process measurements and fill the aMatrix and bVector.
The function processes each measurement for the GX2F Actor fitting process. It extracts the information from the track state and adds it to aMatrix, bVector, and chi2sum.
| kMeasDim | Number of dimensions of the measurement |
| track_state_t | The type of the track state |
| extendedSystem | All parameters of the current equation system to update |
| jacobianFromStart | The Jacobian matrix from start to the current state |
| trackState | The track state to analyse |
| logger | A logger instance |
Definition at line 545 of file Chi2Fitter.h.
| void MuonExperimental::addMeasurementToGx2fSumsBackend | ( | Gx2fSystem & | extendedSystem, |
| const std::vector< BoundMatrix > & | jacobianFromStart, | ||
| const std::vector< std::size_t > & | materialIndices, | ||
| const std::vector< double > & | qOverPderiv, | ||
| const Eigen::MatrixXd & | covarianceMeasurement, | ||
| const BoundVector & | predicted, | ||
| const Eigen::VectorXd & | measurement, | ||
| const Eigen::MatrixXd & | projector, | ||
| const Logger & | logger ) |
Adds a measurement to the GX2F equation system in a modular backend function.
This function processes measurement data and integrates it into the GX2F system.
| extendedSystem | All parameters of the current equation system to update. |
| jacobianFromStart | The Jacobian matrix from the start to the current state. |
| covarianceMeasurement | The covariance matrix of the measurement. |
| predicted | The predicted state vector based on the track state. |
| measurement | The measurement vector. |
| projector | The projection matrix. |
| logger | A logger instance. |
Definition at line 213 of file Chi2Fitter.cxx.
| Eigen::VectorXd MuonExperimental::computeGx2fDeltaParams | ( | const Gx2fSystem & | extendedSystem | ) |
Solve the gx2f system to get the delta parameters for the update.
This function computes the delta parameters for the GX2F Actor fitting process by solving the linear equation system [a] * delta = b. It uses the column-pivoting Householder QR decomposition for numerical stability.
| extendedSystem | All parameters of the current equation system |
Definition at line 331 of file Chi2Fitter.cxx.
| void MuonExperimental::fillGx2fSystem | ( | const track_proxy_t | track, |
| Gx2fSystem & | extendedSystem, | ||
| const std::unordered_map< GeometryIdentifier, Gx2fMaterialProperties > & | materialMap, | ||
| const std::vector< std::size_t > & | materialParamIndices, | ||
| std::vector< GeometryIdentifier > & | geoIdVector, | ||
| const Logger & | logger ) |
Fill the GX2F system with data from a track.
This function processes a track proxy and updates the aMatrix, bVector, and chi2 values for the GX2F fitting system. It considers material only if multiple scattering is enabled.
| track_proxy_t | The type of the track proxy |
| track | A constant track proxy to inspect |
| extendedSystem | All parameters of the current equation system |
| multipleScattering | Flag to consider multiple scattering in the calculation |
| materialMap | Map of geometry identifiers to scattering properties, containing scattering angles and validation status |
| logger | A logger instance |
Invalid material state
Definition at line 582 of file Chi2Fitter.h.
| void MuonExperimental::updateGx2fCovarianceParams | ( | BoundMatrix & | fullCovariancePredicted, |
| Gx2fSystem & | extendedSystem ) |
Calculate and update the covariance of the fitted parameters.
This function calculates the covariance of the fitted parameters using cov = inv([a]) It then updates the first square block of size ndfSystem. This ensures, that we only update the covariance for fitted parameters. (In case of no qop/time fit)
| fullCovariancePredicted | The covariance matrix to update |
| extendedSystem | All parameters of the current equation system |
Definition at line 195 of file Chi2Fitter.cxx.
| void MuonExperimental::updateGx2fParams | ( | BoundTrackParameters & | params, |
| const Eigen::VectorXd & | deltaParamsExtended, | ||
| std::unordered_map< GeometryIdentifier, Gx2fMaterialProperties > & | materialMap, | ||
| const std::vector< GeometryIdentifier > & | geoIdVector ) |
Update parameters (and scattering angles if applicable).
| params | Parameters to be updated |
| deltaParamsExtended | Delta parameters for bound parameter and scattering angles |
| materialMap | Map of geometry identifiers to scattering properties, containing all scattering angles and covariances |
| geoIdVector | Vector of geometry identifiers corresponding to material surfaces |
Definition at line 175 of file Chi2Fitter.cxx.