CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Friends
CrossSectionHandler Class Reference

#include <CrossSectionHandler.h>

Public Member Functions

void addParameters (std::vector< double > &initpar)
 Inputs the vars in a vector. More...
 
 CrossSectionHandler (const std::vector< double > &crossSection, const std::vector< int > &resfind)
 
unsigned int parNum ()
 
std::vector< double > relativeCrossSections (const double *variables, const std::vector< int > &resfind)
 Perform a variable transformation from N-1 to relative cross sections. More...
 
bool releaseParameters (TMinuit &rmin, const std::vector< int > &resfind, const std::vector< int > &parfix, const int *ind, const int iorder, const unsigned int shift)
 Use the information in resfind, parorder and parfix to release the N-1 variables. More...
 
void setParameters (double *Start, double *Step, double *Mini, double *Maxi, int *ind, TString *parname, const std::vector< double > &parCrossSection, const std::vector< int > &parCrossSectionOrder, const std::vector< int > &resfind)
 Initializes the arrays needed by Minuit. More...
 

Protected Member Functions

void computeRelativeCrossSections (const std::vector< double > &crossSection, const std::vector< int > &resfind)
 
void imposeConstraint ()
 Change of variables so that we move from N to N-1 variables using the constraint that Sum(x_i) = 1. More...
 

Protected Attributes

unsigned int numberOfResonances_
 
unsigned int parNum_
 
std::vector< double > relativeCrossSectionVec_
 
std::vector< double > vars_
 

Friends

class TestCrossSectionHandler
 

Detailed Description

Definition at line 27 of file CrossSectionHandler.h.

Constructor & Destructor Documentation

CrossSectionHandler::CrossSectionHandler ( const std::vector< double > &  crossSection,
const std::vector< int > &  resfind 
)
inline

Definition at line 33 of file CrossSectionHandler.h.

Member Function Documentation

void CrossSectionHandler::addParameters ( std::vector< double > &  initpar)
inline

Inputs the vars in a vector.

Definition at line 51 of file CrossSectionHandler.h.

void CrossSectionHandler::computeRelativeCrossSections ( const std::vector< double > &  crossSection,
const std::vector< int > &  resfind 
)
inlineprotected

Initializes the relative cross sections for the range of resonances in [minRes, maxRes]. (note that both minRes and maxRes are included).
Also sets the lock on resonances. If only one of the resonances in the range is fitted its relative cross section will be 1 and it will not be fitted. If there are more than one only those that are fitted will have the relative cross section parameters unlocked during the fit.

Definition at line 166 of file CrossSectionHandler.h.

void CrossSectionHandler::imposeConstraint ( )
inlineprotected

Change of variables so that we move from N to N-1 variables using the constraint that Sum(x_i) = 1.

Definition at line 185 of file CrossSectionHandler.h.

unsigned int CrossSectionHandler::parNum ( )
inline

Definition at line 115 of file CrossSectionHandler.h.

std::vector<double> CrossSectionHandler::relativeCrossSections ( const double *  variables,
const std::vector< int > &  resfind 
)
inline

Perform a variable transformation from N-1 to relative cross sections.

Definition at line 121 of file CrossSectionHandler.h.

bool CrossSectionHandler::releaseParameters ( TMinuit &  rmin,
const std::vector< int > &  resfind,
const std::vector< int > &  parfix,
const int *  ind,
const int  iorder,
const unsigned int  shift 
)
inline

Use the information in resfind, parorder and parfix to release the N-1 variables.

Definition at line 94 of file CrossSectionHandler.h.

void CrossSectionHandler::setParameters ( double *  Start,
double *  Step,
double *  Mini,
double *  Maxi,
int *  ind,
TString *  parname,
const std::vector< double > &  parCrossSection,
const std::vector< int > &  parCrossSectionOrder,
const std::vector< int > &  resfind 
)
inline

Initializes the arrays needed by Minuit.

Definition at line 60 of file CrossSectionHandler.h.

Friends And Related Function Documentation

friend class TestCrossSectionHandler
friend

Definition at line 30 of file CrossSectionHandler.h.

Member Data Documentation

unsigned int CrossSectionHandler::numberOfResonances_
protected

Definition at line 198 of file CrossSectionHandler.h.

unsigned int CrossSectionHandler::parNum_
protected

Definition at line 197 of file CrossSectionHandler.h.

std::vector<double> CrossSectionHandler::relativeCrossSectionVec_
protected

Definition at line 195 of file CrossSectionHandler.h.

std::vector<double> CrossSectionHandler::vars_
protected

Definition at line 196 of file CrossSectionHandler.h.