Common Analysis Framework » QFRAMEWORK » TQPCA

class TQPCA: public TQNamedTaggable


 TQPCA

 The TQPCA is a improved version of the standard root class TPrincipal.
 It provides extended functionality, including management of metadata and event weights.
 It is integrated to the HWWAnalysisCode and used by the TQPCAAnalysisJob.
 Interfaces for adding and scaling TQPCA objects are provided and intertwined with
 the TQSampleDataReader facilities.


Function Members (Methods)

public:
virtual~TQPCA()
voidTObject::AbstractMethod(const char* method) const
booladd(const TQPCA& other, double factor = 1)
booladd(const TQPCA* other, double factor = 1)
boolTQTaggable::allTagsOfTypeBool()
boolTQTaggable::allTagsOfTypeDouble()
boolTQTaggable::allTagsOfTypeInteger()
boolTQTaggable::allTagsOfTypeString()
boolTQTaggable::allTagsValidBools()
boolTQTaggable::allTagsValidDoubles()
boolTQTaggable::allTagsValidIntegers()
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
voidcalculate()
voidcalculateFromCorrelationMatrix()
boolTQTaggable::canSetThisTag(const TString& key, bool& treatAsList)
ULong_tTObject::CheckedHash()
intTQTaggable::claimTags(const TString& definition, bool printErrMsg = false)
intTQTaggable::claimTags(const TString& definition, TString& message)
intTQTaggable::claimTags(const TString& definition, TString& missing, TString& invalid, TString& unexpected)
static TClass*Class()
virtual const char*TObject::ClassName() const
voidclear()
virtual voidTNamed::Clear(Option_t* option = "")
voidclearResults()
intTQTaggable::clearTags()
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
intTQTaggable::countMatchingTags(const TString& name) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt,...) const
doubleevaluateProjection(size_t index, const vector<double>& values, bool normalize = false)
doubleevaluateReverseProjection(size_t index, const vector<double>& values, bool normalize = false)
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
boolTQTaggable::exportConfigFile(bool writeUnreadKeys = true)
boolTQTaggable::exportConfigFile(const TString& filename, bool writeUnreadKeys = true)
boolTQTaggable::exportConfigFile(const TString& filename, const TString& prefix, bool writeUnreadKeys = true)
boolexportEigenSystemTags(TQTaggable& tags, size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
boolexportEigenSystemTags(TQTaggable& tags, size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
intTQTaggable::exportTags(TQTaggable* dest, const TString& subDest = "", const TString& filter = "", bool recursive = false)
TStringTQTaggable::exportTagsAsConfigString(const TString& prefix, const TString& filter = "")
stringTQTaggable::exportTagsAsStandardConfigString(const TString& prefix, const TString& filter = "")
stringTQTaggable::exportTagsAsStandardString(const TString& filter = "", bool xmlStyle = false)
TStringTQTaggable::exportTagsAsString(const TString& filter = "", bool xmlStyle = false)
virtual voidTObject::Fatal(const char* method, const char* msgfmt,...) const
voidfill(double weight, const double* row)
boolfill(double weight, const vector<double>& row)
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual TQTaggable*TQTaggable::getBaseTaggable() const
TMatrixDSymgetCorrelationMatrix()
TMatrixDSymgetCovarianceMatrix()
virtual TList*TQTaggable::getDescendantTaggables()
TStringgetDetailsAsString(int option = 1)
virtual Option_t*TObject::GetDrawOption() const
static Longptr_tTObject::GetDtorOnly()
TQTaggable*getEigenSystemTags(size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
TQTaggable*getEigenSystemTags(size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
TStringgetEigenSystemTagsAsString(size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
TStringgetEigenSystemTagsAsString(size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
doublegetEigenValue(size_t i)
TVectorDgetEigenValues()
TVectorDgetEigenVector(size_t i)
TMatrixDgetEigenVectors()
virtual TStringTQTaggable::getFlags()
intTQTaggable::getFlagsSize()
boolTQTaggable::getGlobalIgnoreCase() const
boolTQTaggable::getGlobalOverwrite() const
static shared_ptr<TQTaggable>TQTaggable::getGlobalTaggable(const char* name)
static shared_ptr<TQTaggable>TQTaggable::getGlobalTaggable(const TString& name)
TStringgetHistogramDefinition(size_t i, size_t nBinsPlus, size_t nBinsMinus)
TStringgetHistogramDefinition2D(size_t iX, size_t iY, size_t nBinsXplus, size_t nBinsXminus, size_t nBinsYplus, size_t nBinsYminus)
virtual const char*TObject::GetIconName() const
TList*TQTaggable::getListOfKeys(const TString& filter = "")
virtual TList*TQTaggable::getListOfTaggables(const TString& name)
TList*TQTaggable::getListOfTagNames()
virtual TList*TQTaggable::getListOfUnreadKeys(const TString& filter = "")
doublegetMean(size_t i)
virtual TStringTQNamedTaggable::getName() const
virtual const char*TNamed::GetName() const
virtual const TString&TQNamedTaggable::getNameConst() const
intgetNDim()
intgetNEntries()
TStringgetNormalizedHistogramDefinition(size_t i, size_t nBins, double min, double max)
TStringgetNormalizedHistogramDefinition2D(size_t iX, size_t iY, size_t nBinsX, double xMin, double xMax, size_t nBinsY, double yMin, double yMax)
intTQTaggable::getNTags() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
doublegetPCMean(size_t i)
doublegetPCVariance(size_t i)
TStringgetProjection(size_t index, bool normalize = false)
TStringgetReverseProjection(size_t index, bool normalize = false)
doublegetSumWeights()
boolTQTaggable::getTag(const TString& key, double& value)
boolTQTaggable::getTag(const TString& key, int& value)
boolTQTaggable::getTag(const TString& key, bool& value)
boolTQTaggable::getTag(const TString& key, TString& value)
intTQTaggable::getTag(const TString& key, vector<TString>& vec)
intTQTaggable::getTag(const TString& key, vector<int>& vec)
intTQTaggable::getTag(const TString& key, vector<double>& vec)
intTQTaggable::getTag(const TString& key, vector<bool>& vec)
intTQTaggable::getTag(const TString& key, TList* l)
boolTQTaggable::getTag(const TString& key, double& value, bool recursive)
boolTQTaggable::getTag(const TString& key, int& value, bool recursive)
boolTQTaggable::getTag(const TString& key, bool& value, bool recursive)
boolTQTaggable::getTag(const TString& key, TString& value, bool recursive)
boolTQTaggable::getTagAsString(const TString& key, TString& tag)
boolTQTaggable::getTagBool(const TString& key, bool& value)
boolTQTaggable::getTagBool(const TString& key, bool& value, bool recursive)
boolTQTaggable::getTagBoolDefault(const TString& key, bool defaultVal = false)
doubleTQTaggable::getTagDefault(const TString& key, double defaultVal)
intTQTaggable::getTagDefault(const TString& key, int defaultVal)
boolTQTaggable::getTagDefault(const TString& key, bool defaultVal)
TStringTQTaggable::getTagDefault(const TString& key, const TString& defaultVal)
TStringTQTaggable::getTagDefault(const TString& key, const char* defaultVal)
boolTQTaggable::getTagDouble(const TString& key, double& value)
boolTQTaggable::getTagDouble(const TString& key, double& value, bool recursive)
doubleTQTaggable::getTagDoubleDefault(const TString& key, double defaultVal = 0.)
virtual TList*TQTaggable::getTaggablesByName(const TString& name)
boolTQTaggable::getTagInteger(const TString& key, int& value)
boolTQTaggable::getTagInteger(const TString& key, int& value, bool recursive)
intTQTaggable::getTagIntegerDefault(const TString& key, int defaultVal = 0)
TList*TQTaggable::getTagList(const TString& key)
intTQTaggable::getTagListLength(const TString& key)
intTQTaggable::getTagsSize()
stringTQTaggable::getTagStandardStringDefault(const TString& key, const TString& defaultVal = "")
boolTQTaggable::getTagString(const TString& key, TString& value)
boolTQTaggable::getTagString(const TString& key, TString& value, bool recursive)
TStringTQTaggable::getTagStringDefault(const TString& key, const TString& defaultVal = "")
vector<bool>TQTaggable::getTagVBool(const TString& key)
vector<double>TQTaggable::getTagVDouble(const TString& key)
vector<int>TQTaggable::getTagVInt(const TString& key)
vector<int>TQTaggable::getTagVInteger(const TString& key)
vector<string>TQTaggable::getTagVStandardString(const TString& key)
vector<TString>TQTaggable::getTagVString(const TString& key)
virtual TStringTQNamedTaggable::getTitle()
virtual const char*TNamed::GetTitle() const
virtual const TString&TQNamedTaggable::getTitleConst() const
boolTQTaggable::getTypeOfTagAsString(const TString& key, TString& type)
virtual UInt_tTObject::GetUniqueID() const
static const TString&TQTaggable::getValidKeyCharacters()
boolTQTaggable::getValueOfTagAsString(const TString& key, TString& value)
TStringTQTaggable::getValuesOfTags(const TString& keys, const TString& sep = ", ")
doublegetVariance(size_t i)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
boolTQTaggable::hasEquivalentTag(const TQValue* reference, bool recurseUp = true)
boolTQTaggable::hasEquivalentTag(const TQValue& reference, bool recurseUp = true)
boolTQTaggable::hasEquivalentTag(const TString& key, const TString& value)
boolTQTaggable::hasEquivalentTag(const TString& key, const double value)
boolTQTaggable::hasEquivalentTag(const TString& key, const int value)
boolTQTaggable::hasEquivalentTag(const TString& key, const bool value)
static boolTQTaggable::hasGlobalTaggable(const char* name)
static boolTQTaggable::hasGlobalTaggable(const TString& name)
virtual ULong_tTNamed::Hash() const
Bool_tTObject::HasInconsistentHash() const
boolTQTaggable::hasMatchingTag(const TString& name) const
boolTQTaggable::hasTag(const TString& key)
boolTQTaggable::hasTagBool(const TString& key)
boolTQTaggable::hasTagDouble(const TString& key)
boolTQTaggable::hasTagInteger(const TString& key)
boolTQTaggable::hasTagString(const TString& key)
boolTQTaggable::hasTagWithIndex(const TString& key)
boolTQTaggable::hasTagWithoutIndex(const TString& key)
virtual boolTQTaggable::hasUnreadKeys(const TString& filter = "")
intTQTaggable::importTag(TString tag, bool overwrite = true, bool keepStringQuotes = false)
intTQTaggable::importTags(TString tags, bool overwrite = true, bool keepStringQuotes = false)
intTQTaggable::importTags(const TQTaggable* tags, bool overwrite = true, bool recursive = false)
intTQTaggable::importTags(shared_ptr<TQTaggable> tags, bool overwrite = true, bool recursive = false)
intTQTaggable::importTags(const TQTaggable& tags, bool overwrite = true, bool recursive = false)
intTQTaggable::importTagsWithoutPrefix(const TQTaggable* tags, const TString& prefix, bool overwrite = true, bool recursive = false)
intTQTaggable::importTagsWithoutPrefix(const TQTaggable& tags, const TString& prefix, bool overwrite = true, bool recursive = false)
intTQTaggable::importTagsWithPrefix(TString tags, const TString& prefix, bool overwrite = true, bool keepStringQuotes = false, TString fallbackKey = "")
intTQTaggable::importTagsWithPrefix(const TQTaggable* tags, const TString& prefix, bool overwrite = true, bool recursive = false, TString fallbackKey = "")
intTQTaggable::importTagsWithPrefix(const TQTaggable& tags, const TString& prefix, bool overwrite = true, bool recursive = false, TString fallbackKey = "")
intTQTaggable::importTagWithPrefix(const TString& tag, const TString& prefix, bool overwrite = true, TString fallbackKey = "", bool keepStringQuotes = false)
virtual voidTObject::Info(const char* method, const char* msgfmt,...) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
voidinit(int nDim)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTObject::IsDestructed() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
boolTQTaggable::isTagOverwrittenByDescendants(TString key)
static boolTQTaggable::isValidKey(const TString& key)
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
static TList*TQTaggable::makeListOfTags(TList* unTags)
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
virtual voidTQTaggable::onAccess(TQValue* tag)
virtual voidTQTaggable::onRead(TQValue* tag)
virtual voidTQTaggable::onWrite(TQValue* tag)
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TQPCA&operator=(const TQPCA&)
virtual voidTObject::Paint(Option_t* option = "")
static TQTaggable*TQTaggable::parseFlags(const TString& flags)
boolTQTaggable::parseKey(TString key, TString& bareKey, int& opUp, int& opDown)
static TQTaggable*TQTaggable::parseParameterList(const TString& parameter, const TString& sep = ",", bool trim = true, const TString& blocks = "", const TString& quotes = "")
virtual voidTObject::Pop()
voidprint(const TString& opts = "")
virtual voidTNamed::Print(Option_t* option = "") const
intTQTaggable::printClaim(const TString& definition)
voidprintCorrelationMatrix()
voidprintCovarianceMatrix()
boolTQTaggable::printDiffOfTags(TQTaggable* tags, const TString& options = "")
boolTQTaggable::printDiffOfTags(TQTaggable* tags, TQTaggable& options)
voidprintRawData()
voidprintResults()
voidTQTaggable::printTags(TString options = "r")
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
static boolTQTaggable::removeGlobalTaggable(const char* name)
static boolTQTaggable::removeGlobalTaggable(const TString& name)
intTQTaggable::removeTag(const TString& key)
intTQTaggable::removeTags(const TString& key)
boolTQTaggable::renameTag(const TString& oldKey, const TString& newKey)
intTQTaggable::renameTags(const TString& oldPrefix, const TString& newPrefix)
stringTQTaggable::replaceInStandardString(const TString& in, bool keepQuotes = false)
stringTQTaggable::replaceInStandardString(const TString& in, const char* prefix, bool keepQuotes = false)
stringTQTaggable::replaceInStandardString(const TString& in, const TString& prefix, bool keepQuotes = false)
stringTQTaggable::replaceInStandardStringRecursive(TString in, const TString& prefix = "", bool keepQuotes = false)
intTQTaggable::replaceInTags(TQTaggable& params, const TString& tagFilter = "*")
TStringTQTaggable::replaceInText(const TString& in, bool keepQuotes = false)
TStringTQTaggable::replaceInText(const TString& in, const char* prefix, bool keepQuotes = false)
TStringTQTaggable::replaceInText(const TString& in, const TString& prefix, bool keepQuotes = false)
TStringTQTaggable::replaceInText(const TString& in, int& nReplaced, int& nFailed, bool keepQuotes = false)
TStringTQTaggable::replaceInText(TString in, int& nReplaced, int& nFailed, const TString& prefix, bool keepQuotes = false)
TStringTQTaggable::replaceInTextRecursive(TString in, const TString& prefix = "", bool keepQuotes = false)
voidTObject::ResetBit(UInt_t f)
virtual voidTQTaggable::resetReadFlags()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidscale(double factor = 1)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidTQTaggable::setGlobalIgnoreCase(bool globalIgnoreCase = true)
voidTQTaggable::setGlobalOverwrite(bool globalOverwrite = true)
virtual voidTQNamedTaggable::setName(const TString& newName)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
intTQTaggable::setTag(const TString& key, double value, const TString& destination = "")
intTQTaggable::setTag(const TString& key, int value, const TString& destination = "")
intTQTaggable::setTag(const TString& key, bool value, const TString& destination = "")
intTQTaggable::setTag(const TString& key, const TString& value, const TString& destination = "")
intTQTaggable::setTag(const TString& key, const char* value, const TString& destination = "")
intTQTaggable::setTag(const char* key, double value, const TString& destination = "")
intTQTaggable::setTag(const char* key, int value, const TString& destination = "")
intTQTaggable::setTag(const char* key, bool value, const TString& destination = "")
intTQTaggable::setTag(const char* key, const TString& value, const TString& destination = "")
intTQTaggable::setTag(const char* key, const char* value, const TString& destination = "")
intTQTaggable::setTagAuto(const TString& key, TString value, const TString& destination = "")
intTQTaggable::setTagBool(TString key, bool value, const TString& destination = "")
intTQTaggable::setTagDouble(TString key, double value, const TString& destination = "")
intTQTaggable::setTagInteger(TString key, int value, const TString& destination = "")
intTQTaggable::setTagList(const TString& key, TString value, const TString& destination = "")
intTQTaggable::setTagString(TString key, const TString& value, const TString& destination = "")
virtual voidTQNamedTaggable::setTitle(const TString& newTitle)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt,...) const
boolTQTaggable::tagIsOfTypeBool(const TString& key)
boolTQTaggable::tagIsOfTypeDouble(const TString& key)
boolTQTaggable::tagIsOfTypeInteger(const TString& key)
boolTQTaggable::tagIsOfTypeString(const TString& key)
boolTQTaggable::tagsAreEquivalentTo(TQTaggable* tags, const TString& filter = "")
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TQPCA()
TQPCA(const TQPCA&)
TQPCA(const TString& name, int nDim = 2)
voiduseBesselCorrection(bool val)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt,...) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
intTQTaggable::countTagDown(const TString& key)
intTQTaggable::countTagUp(const TString& key)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
TQValue*TQTaggable::findTag(TString name)
TList*TQTaggable::getListOfTags()
boolTQTaggable::getOp(const TString& op, int& opCode)
boolTQTaggable::getTag(const TString& key, TQValue*& tag)
voidTObject::MakeZombie()
voidprintMatrix(const TMatrixD& matrix, const TString& title)
intTQTaggable::setTag(TQValue* tag, const TString& destination = "")
intTQTaggable::setTag(TQValue* tag, const TString& destination, bool overwrite)
private:
virtual Bool_tCheckTObjectHashConsistency() const

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::(anonymous)TObject::kInconsistent
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EDeprecatedStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
boolbesselCorrection
boolcalculated
TMatrixDSymcovMatrixA
vector<double>covMatrixB
boolTQTaggable::fGlobalIgnoreCase!
boolTQTaggable::fGlobalOverwrite!
TStringTNamed::fNameobject identifier
TList*TQTaggable::fReadFlags!
TList*TQTaggable::fTags
TStringTNamed::fTitleobject title
static TObject::(anonymous)TObject::kOnlyPrepStep
static TQTaggable::(anonymous)TQTaggable::kOpADD
static TQTaggable::(anonymous)TQTaggable::kOpAND
static TQTaggable::(anonymous)TQTaggable::kOpCNT
static TQTaggable::(anonymous)TQTaggable::kOpMULT
static TQTaggable::(anonymous)TQTaggable::kOpNone
static TQTaggable::(anonymous)TQTaggable::kOpOR
static TQTaggable::(anonymous)TQTaggable::kOpRec
TMatrixD*mEigenVectors!
unsigned intnDim
unsigned intnEntries
static map<TString,shared_ptr<TQTaggable> >TQTaggable::sGlobalTaggables
doublesumWeights
TVectorD*vEigenValues!

Class Charts

Inheritance Chart:
TObject
TNamed
TQTaggable
TQNamedTaggable
TQPCA

Function documentation

TQPCA()
 default constructor
TQPCA(const TString& name, int nDim = 2)
 default constructor
~TQPCA()
 destructor
void useBesselCorrection(bool val)
 control the use of the Bessel correction
 for the calculation of the (co)variance,
 i.e. the use of 1/(n-1) instead of 1/n
 in the (co)variance formula
void clear()
 clear all data
 the user needs to call TQPCA::init to reinitialize
 before re-use of the instance is sensible
int getNDim()
 retrieve the number of dimensions
double getSumWeights()
 retrieve the total sum of weights
int getNEntries()
 retrieve the total number of entries
TString getDetailsAsString(int option = 1)
 retrieve an info-string
void init(int nDim)
 initialize the object based on given dimensionality
void print(const TString& opts = "")
 print some information about the object
bool fill(double weight, const std::vector<double>& row)
 fill values from a std::vector<double>
void printRawData()
void fill(double weight, const double* row)
 fill values from an array
TMatrixDSym getCovarianceMatrix()
 retrieve the covariance matrix
TMatrixDSym getCorrelationMatrix()
 retrieve the correlation matrix
TVectorD getEigenValues()
 retrieve the TVectorD of all eigenvectors
double getEigenValue(size_t i)
 retrieve the i-th eigenvalue as a double
TMatrixD getEigenVectors()
 retrieve the TMatrixD of all eigenvectors
TVectorD getEigenVector(size_t i)
 retrieve the i-th eigenvector as a TVectorD
void clearResults()
 delete all matrix operation results and reset the calculation status
void calculate()
 calculate the eigenvectors and eigenvalues
void calculateFromCorrelationMatrix()
 calculate the eigenvectors and eigenvalues
 from the correlation matrix instead of the covariance matrix
bool add(const TQPCA* other, double factor = 1)
 add another TQPCA instance to this one
bool add(const TQPCA& other, double factor = 1)
 add two objects of type TQPCA
void scale(double factor = 1)
 scale the entries with some given factor
void printMatrix(const TMatrixD& matrix, const TString& title)
 print any matrix to std::cout, nicely formatted
void printCovarianceMatrix()
 print the covariance matrix to std::cout, nicely formatted
void printCorrelationMatrix()
 print the correlation matrix to std::cout, nicely formatted
void printResults()
 print the results to std::cout, nicely formatted
double getVariance(size_t i)
 retrieve the gaussian variance on variable i
double getMean(size_t i)
 retrieve the weighted mean
double getPCVariance(size_t i)
 retrieve the gaussian variance on principal component i
double getPCMean(size_t i)
 retrieve the mean of the principal component i
TString getProjection(size_t index, bool normalize = false)
 retrieve the arithmetic expression for the projection
 onto the principal component with the given index
 if normalize is true, the prefactors will be normalized
 to their respective dimensional weighted averages
double evaluateProjection(size_t index, const vector<double>& values, bool normalize = false)
 evaluate the projection of the given coordinates
 onto the principal component with the given index
 if normalize is true, the prefactors will be normalized
 to their respective dimensional weighted averages
TString getReverseProjection(size_t index, bool normalize = false)
 retrieve the arithmetic expression for the projection
 onto the input variable with the given index
 if normalize is true, the prefactors will be normalized
 to their respective dimensional weighted averages
double evaluateReverseProjection(size_t index, const vector<double>& values, bool normalize = false)
 evaluate the projection of the given coordinates
 onto the input variable with the given index
 if normalize is true, the prefactors will be normalized
 to their respective dimensional weighted averages
TString getHistogramDefinition2D(size_t iX, size_t iY, size_t nBinsXplus, size_t nBinsXminus, size_t nBinsYplus, size_t nBinsYminus)
 retrieve the definition string for a 2d histogram
TString getNormalizedHistogramDefinition2D(size_t iX, size_t iY, size_t nBinsX, double xMin, double xMax, size_t nBinsY, double yMin, double yMax)
 retrieve the definition string for a 2d histogram in normalized coordinates
TString getHistogramDefinition(size_t i, size_t nBinsPlus, size_t nBinsMinus)
 retrieve the definition string for a histogram
TString getNormalizedHistogramDefinition(size_t i, size_t nBins, double min, double max)
 retrieve the definition string for a histogram in normalized coordinates
bool exportEigenSystemTags(TQTaggable& tags, size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
 export the TQPlotter tags required to draw the Eigen coordinate system
bool exportEigenSystemTags(TQTaggable& tags, size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
 export the TQPlotter tags required to draw the Eigen coordinate system
TQTaggable* getEigenSystemTags(size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
 export the TQPlotter tags required to draw the Eigen coordinate system
TString getEigenSystemTagsAsString(size_t iX, size_t iY, double nSigmaX, double nSigmaY, bool normalize = false)
 export the TQPlotter tags required to draw the Eigen coordinate system
TQTaggable* getEigenSystemTags(size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
 export the TQPlotter tags required to draw the Eigen coordinate system
TString getEigenSystemTagsAsString(size_t iX, size_t iY, double nSigmaX, double nSigmaY, double normX, double normY)
 export the TQPlotter tags required to draw the Eigen coordinate system
TQPCA()