![]() |
MaCh3 2.2.1
Reference Guide
|
#include "Parameters/ParameterStructs.h"
#include "TMatrixT.h"
#include "TMatrixDSym.h"
#include "TVectorT.h"
#include "TVectorD.h"
#include "TH1D.h"
#include "TH2D.h"
#include "TTree.h"
#include "TFile.h"
#include "TRandom3.h"
#include "TMath.h"
#include "TDecompChol.h"
#include "TStopwatch.h"
#include "TMatrix.h"
#include "TMatrixDSymEigen.h"
#include "TMatrixDEigen.h"
#include "TDecompSVD.h"
#include "TKey.h"
Go to the source code of this file.
Namespaces | |
namespace | M3 |
Functions | |
double * | M3::MatrixMult (double *A, double *B, int n) |
CW: Multi-threaded matrix multiplication. | |
double ** | M3::MatrixMult (double **A, double **B, int n) |
CW: Multi-threaded matrix multiplication. | |
TMatrixD | M3::MatrixMult (TMatrixD A, TMatrixD B) |
CW: Multi-threaded matrix multiplication. | |
void | M3::MatrixVectorMulti (double *_restrict_ VecMulti, double **_restrict_ matrix, const double *_restrict_ vector, const int n) |
KS: Custom function to perform multiplication of matrix and vector with multithreading. | |
double | M3::MatrixVectorMultiSingle (double **_restrict_ matrix, const double *_restrict_ vector, const int Length, const int i) |
KS: Custom function to perform multiplication of matrix and single element which is thread safe. | |
void | M3::FixSampleNamesQuotes (std::string &yamlStr) |
KS: Yaml emitter has problem and drops "", if you have special signs in you like * then there is problem. This bit hacky code adds these "". | |
void | M3::AddTuneValues (YAML::Node &root, const std::vector< double > &Values, const std::string &Tune, const std::vector< std::string > &FancyNames={}) |
KS: Add Tune values to YAML covariance matrix. | |
void | M3::MakeCorrelationMatrix (YAML::Node &root, const std::vector< double > &Values, const std::vector< double > &Errors, const std::vector< std::vector< double > > &Correlation, const std::vector< std::string > &FancyNames={}) |
KS: Replace correlation matrix and tune values in YAML covariance matrix. | |
TMacro * | M3::GetConfigMacroFromChain (TDirectory *CovarianceFolder) |
KS: We store configuration macros inside the chain. In the past, multiple configs were stored, which required error-prone hardcoding like "Config_xsec_cov". Therefore, this code maintains backward compatibility by checking the number of macros present and using a hardcoded name only if necessary. | |
TMatrixDSym * | M3::GetCovMatrixFromChain (TDirectory *TempFile) |
KS: Retrieve the cross-section covariance matrix from the given TDirectory. Historically, multiple covariance matrices could be stored, requiring fragile hardcoded paths like "CovarianceFolder/xsec_cov". This function maintains backward compatibility by: | |