CP::SystematicSet Class Reference

Class to wrap a set of SystematicVariations. More...

#include <SystematicSet.h>

List of all members.

Public Types

enum  MATCHTYPE { FULL, FULLORCONTINUOUS }
 

description: match systematic or continuous version


typedef std::set
< SystematicVariation >
::iterator 
iterator
 construct with an std::initializer_list
typedef std::set
< SystematicVariation >
::const_iterator 
const_iterator

Public Member Functions

 SystematicSet ()
 construct an empty set
 SystematicSet (const std::string &systematics)
 construct set by splitting single systematics string
 SystematicSet (const std::vector< std::string > &systematics)
 construct by vector of systematic names
 SystematicSet (const std::vector< SystematicVariation > &systematics)
 construct by vector of SystematicVariation
const_iterator begin () const
 description: const iterator to the beginning of the set
const_iterator end () const
 description: const iterator to the end of the set
iterator find (const SystematicVariation &sys) const
 description: find an element in the set
bool empty () const
 returns: whether the set is empty
size_t size () const
 returns: size of the set
void insert (const SystematicVariation &systematic)
 description: insert a systematic into the set
void insert (const SystematicSet &systematics)
 description: insert a systematic set into this set
void swap (SystematicSet &otherSet)
 description: swap elements of a set
void clear ()
 description: clear the set
bool matchSystematic (const SystematicVariation &systematic, MATCHTYPE type=FULL) const
SystematicSet filterByBaseName (const std::string &basename) const
std::set< std::string > getBaseNames () const
 description: get the set of base systematic names from this set
SystematicVariation getSystematicByBaseName (const std::string &basename) const
 description: get the first systematic matching basename
float getParameterByBaseName (const std::string &basename) const
 returns: the parameter value for the given basename
std::pair< unsigned, float > getToyVariationByBaseName (const std::string &basename) const
 the toy variation for the given basename
std::string name () const
std::size_t hash () const

Static Public Member Functions

static SystematicCode filterForAffectingSystematics (const SystematicSet &systConfig, const SystematicSet &affectingSystematics, SystematicSet &filteredSystematics)

Detailed Description

Class to wrap a set of SystematicVariations.


Member Function Documentation

SystematicSet CP::SystematicSet::filterByBaseName ( const std::string &  basename  )  const

description: get the subset of systematics matching basename Should this return a SystematicCode instead?

SystematicCode CP::SystematicSet::filterForAffectingSystematics ( const SystematicSet systConfig,
const SystematicSet affectingSystematics,
SystematicSet filteredSystematics 
) [static]

description: filter the systematics for the affected systematics returns: success guarantee: strong failures: out of memory II failures: requesting multiple variations on the same systematic (e.g. up & down) failures: requesting an unsupported variation on an otherwise supported systematic (e.g. a 2 sigma variation and the tool only supports 1 sigma variations)

std::pair< unsigned, float > CP::SystematicSet::getToyVariationByBaseName ( const std::string &  basename  )  const

the toy variation for the given basename

in case there is no toy variation for the given base name, this returns (0,0)

See also:
SystematicVariation::getToyVariation
Guarantee
strong
Failures
not a toy variation
parse errors
out of memory II
std::size_t CP::SystematicSet::hash (  )  const

returns: hash value for the joined string. Caches the hash if not already done

std::string CP::SystematicSet::name (  )  const

returns: the systematics joined into a single string. Caches the name if not already done


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Apr 2017 for RootCore Packages by  doxygen 1.6.1