#include <GenericHouseholder.h>
Public Member Functions | |
GenericHouseholder (bool normalise=false) | |
std::vector< float > | iterate (const std::vector< std::vector< float > > &eventMatrix, const std::vector< float > &energyVector) |
run the Householder Algorithm. Returns the vector of calibration coefficients. More... | |
std::vector< float > | iterate (const std::vector< std::vector< float > > &eventMatrix, const std::vector< float > &energyVector, const int nIter) |
run the Householder Algorithm several times (nIter). Returns the final vector of calibration coefficients. More... | |
~GenericHouseholder () | |
Destructor. More... | |
Private Member Functions | |
bool | decompose (const int m, const int n, std::vector< std::vector< float > > &qr, std::vector< float > &alpha, std::vector< int > &pivot) |
void | solve (int m, int n, const std::vector< std::vector< float > > &qr, const std::vector< float > &alpha, const std::vector< int > &pivot, std::vector< float > &r, std::vector< float > &y) |
Private Attributes | |
bool | normaliseFlag |
Generic implementation of the QR decomposition of a matrix using Householder transformation
Definition at line 13 of file GenericHouseholder.h.
GenericHouseholder::GenericHouseholder | ( | bool | normalise = false | ) |
Default constructor CAVEAT: use normalise = true only if you know what you're doing!
Definition at line 11 of file GenericHouseholder.cc.
GenericHouseholder::~GenericHouseholder | ( | ) |
|
private |
make decomposition input: m=number of events, n=number of channels, qr=event matrix output: qr = new event matrix, alpha, pivot returns a boolean value, true if decomposition worked, false if it didn't
Definition at line 188 of file GenericHouseholder.cc.
References zMuMuMuonUserData::alpha, zMuMuMuonUserData::beta, gather_cfg::cout, mps_fire::i, dqmiolumiharvest::j, dqmdumpme::k, visualization-live-secondInstance_cfg::m, dqmiodumpmetadata::n, mathSSE::sqrt(), and y.
Referenced by iterate().
std::vector< float > GenericHouseholder::iterate | ( | const std::vector< std::vector< float > > & | eventMatrix, |
const std::vector< float > & | energyVector | ||
) |
run the Householder Algorithm. Returns the vector of calibration coefficients.
Definition at line 47 of file GenericHouseholder.cc.
References MaterialEffects_cfi::A, zMuMuMuonUserData::alpha, gather_cfg::cout, decompose(), MillePedeFileConverter_cfg::e, mps_fire::i, dqmiolumiharvest::j, visualization-live-secondInstance_cfg::m, dqmiodumpmetadata::n, normaliseFlag, alignCSCRings::r, and solve().
std::vector< float > GenericHouseholder::iterate | ( | const std::vector< std::vector< float > > & | eventMatrix, |
const std::vector< float > & | energyVector, | ||
const int | nIter | ||
) |
run the Householder Algorithm several times (nIter). Returns the final vector of calibration coefficients.
Definition at line 15 of file GenericHouseholder.cc.
References mps_fire::i.
|
private |
Apply transformations to rhs output: r = ?, y = solution
Definition at line 283 of file GenericHouseholder.cc.
References zMuMuMuonUserData::alpha, gather_cfg::cout, CustomPhysics_cfi::gamma, mps_fire::i, dqmiolumiharvest::j, visualization-live-secondInstance_cfg::m, dqmiodumpmetadata::n, alignCSCRings::r, y, and z.
Referenced by iterate().
|
private |
Definition at line 52 of file GenericHouseholder.h.
Referenced by iterate().