StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | Static Protected Attributes | Friends | List of all members
GainVoltPmtParameters Class Reference

#include <GainVoltPmtParameters.h>

Public Member Functions

 GainVoltPmtParameters (double refVoltage, double gains[5])
 
 GainVoltPmtParameters (int n, double volts[], double gains[])
 
 GainVoltPmtParameters (const GainVoltPmtParameters &parameters)
 
GainVoltPmtParametersoperator= (const GainVoltPmtParameters &parameters)
 
void set (double refVolt, double gains[5])
 Set the voltages and gains. More...
 
void set (int n, double volts[], double gains[])
 Set the voltages and gains. More...
 
void fit ()
 fit the data
 
double getMultConstant () const
 Get multiplicative constant.
 
double getExponent () const
 Get exponent of the power law.
 
double getGain (double voltage) const
 Get the gain obtained if the given voltage is applied.
 
double getVoltage (double gain) const
 Get the voltage need to obtain the given relative gain.
 
int getNPoints () const
 Get the number of data points available and used for this PMT.
 
void print ()
 Print the information of this PMT.
 
PmtIdentifiergetPmtIdentifier ()
 Get the PMT identifier.
 
bool isValid () const
 Determine whether the input data are valid. More...
 

Static Public Member Functions

static void setDefaults (double multCoefficient, double exponent)
 

Static Public Attributes

static int ioMode =2
 

Protected Attributes

PmtIdentifier _id
 
double _a
 multiplicative coefficient
 
double _b
 Exponent.
 
map< double, double > _data
 HV/Gain data.
 
PowerLawFit< double > _fit
 Transient Fit Object.
 

Static Protected Attributes

static double _defaultA = 2.56e-29
 
static double _defaultB = 10.71
 

Friends

ostream & operator<< (ostream &os, GainVoltPmtParameters &object)
 Write obbject to ostream.
 
istream & operator>> (istream &is, GainVoltPmtParameters &object)
 Read object from istream.
 

Detailed Description

Class used to describe the gain vs bias voltage of a photomultiplier tube. Input parameters consist of experimentally measured relative gain vs bias voltage. Output parameters consist of the gain parameters obtained with a power law parameterization.

Definition at line 13 of file GainVoltPmtParameters.h.

Member Function Documentation

bool GainVoltPmtParameters::isValid ( ) const

Determine whether the input data are valid.

Determine whether the input data are sufficient and valid to perform a fit to determine the gain coefficients.

Definition at line 69 of file GainVoltPmtParameters.cxx.

References _data.

Referenced by fit().

void GainVoltPmtParameters::set ( double  refVolt,
double  gains[5] 
)

Set the voltages and gains.

Set the voltages and gains

Parameters
refVoltreference voltage
gainsarray of five gain values obtained with voltages ref-100,ref-50,ref,ref+50,ref+100

Definition at line 42 of file GainVoltPmtParameters.cxx.

References _data.

void GainVoltPmtParameters::set ( int  n,
double  volts[],
double  gains[] 
)

Set the voltages and gains.

Set the voltages and gains

Parameters
nnumber of data points
volts[]voltage settings
gains[]relative gains obtained with the given voltage setttings

Definition at line 57 of file GainVoltPmtParameters.cxx.

References _data.

void GainVoltPmtParameters::setDefaults ( double  multCoefficient,
double  exponent 
)
static

Set the default coefficients used in lieu of the fitted coefficients when there are insufficient or invalid data to perform a fit.

Definition at line 220 of file GainVoltPmtParameters.cxx.

References _defaultA.

Member Data Documentation

double GainVoltPmtParameters::_defaultA = 2.56e-29
staticprotected

Default value for PMTs that have incomplete data and for which a fit cannot be done. The multiplicative coefficient "_defaultA" is obtained a geometric average of the multiplicative coefficients of many towers. The exponent "_defaultB" is obtained as arithmetic average of the exponents of other towers. These values are NOT calculated internally and must be externally by the user of this code using the setDefaults() public method.

The following values were obtained from an average of 2000 STAR EMC PMTs. To change these values, use the "void setDefaults(double, double)" method.

Definition at line 78 of file GainVoltPmtParameters.h.

Referenced by fit(), and setDefaults().


The documentation for this class was generated from the following files: