CFEL - ASG Software Suite  2.5.0
CASS
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
cass::pp408 Class Reference

Tof to Energy linear interpolation and correct from 0d histogram. More...

#include <partial_covariance.h>

+ Inheritance diagram for cass::pp408:
+ Collaboration diagram for cass::pp408:

Public Member Functions

 pp408 (const name_t &)
 constructor More...
 
virtual void process (const CASSEvent &, result_t &)
 process event More...
 
virtual void loadSettings (size_t)
 load the settings of the pp More...
 
- Public Member Functions inherited from cass::Processor
 Processor (const name_t &name)
 constructor More...
 
virtual ~Processor ()
 virtual destructor More...
 
virtual void processEvent (const CASSEvent &event)
 process the event More...
 
virtual const result_tresult (const CASSEvent::id_t eventid=0)
 retrieve a result for a given id. More...
 
virtual void releaseEvent (const CASSEvent &event)
 tell the list that the result for event can be overwritten More...
 
result_t::shared_pointer resultCopy (const uint64_t eventid)
 retrieve histogram for id More...
 
virtual void load ()
 load the general settings More...
 
virtual void aboutToQuit ()
 function that will be called when the processor is about to be deleted More...
 
const names_tdependencies ()
 Define all processors keys a processor depends on. More...
 
void clearDependencies ()
 clear the dependenies More...
 
void clearHistograms ()
 clear the histograms More...
 
virtual void processCommand (std::string command)
 process command in pp More...
 
const name_t name () const
 retrieve the name of this processor More...
 
bool hide () const
 retrieve the hide flag of this processor More...
 
const std::string & comment () const
 retrieve the comment of this processor More...
 

Protected Member Functions

double calcEtoTof (double energy)
 retrieve the time that corresponses to a given energy More...
 
double calcTofValue (const double tofPos, const size_t binlow, const double bin_size, const result_t &TofHisto)
 retrieve the linear interpolation value More...
 
void ToftoEnergy (const result_t &TofHisto, result_t &Energy, double offset)
 make the histogram in energy scale. More...
 
- Protected Member Functions inherited from cass::Processor
virtual void createHistList (result_t::shared_pointer result)
 create result list. More...
 
void setupGeneral ()
 general setup of the processor More...
 
bool setupCondition (bool defaultConditionType=true)
 setup the condition. More...
 
shared_pointer setupDependency (const std::string &depVarName, const name_t &name="")
 setup the dependecy. More...
 

Protected Attributes

shared_pointer _pHist
 pp containing input histogram More...
 
shared_pointer _constHist
 pp containing input OD histogram More...
 
std::pair< float, float > _userTofRange
 the user requested Tof-axis limits More...
 
double t0
 corrects the time of flight More...
 
double e0
 retardation voltage More...
 
double alpha
 Coefficient to convert to energy. More...
 
double tb1
 The lower limit for calculating baseline. More...
 
double tb2
 The upper limit for calculating baseline. More...
 
double ediff
 difference from expected energy More...
 
size_t NbrBins
 number of bins in converted histgram More...
 
size_t binTofUp
 Upper limit converted to bin. More...
 
size_t binTofLow
 lower limit converted to bin More...
 
size_t bint0
 t0 converted to bin More...
 
size_t bintb1
 tb1 converted to bin More...
 
size_t bintb2
 tb2 converted to bin More...
 
- Protected Attributes inherited from cass::Processor
const name_t _name
 the processors name More...
 
bool _hide
 flag to tell whether this pp should be hidden in the dropdown list More...
 
std::string _comment
 optional comment that one can add to a processor. More...
 
CachedList _resultList
 the list of results More...
 
names_t _dependencies
 the list of dependencies More...
 
shared_pointer _condition
 pointer to the processor that will contain the condition More...
 

Additional Inherited Members

- Public Types inherited from cass::Processor
typedef std::tr1::shared_ptr< Processorshared_pointer
 a shared pointer of this More...
 
typedef std::string name_t
 define the name type More...
 
typedef std::list< name_tnames_t
 define the list of names More...
 
typedef CachedList::item_type result_t
 define the results More...
 
typedef CachedList::item_sp resultsp_t
 define the shared pointer to the result More...
 

Detailed Description

Tof to Energy linear interpolation and correct from 0d histogram.

Available PostProcessors:
"408": Tof to Energy linear interpolation and correct from 0d histogram

converts a time of flight trace of electrons to the coresponding energy and apply linear interpolation to energy spectrum using fuction $e=(\frac{\alpha}{t-t_0})^2-e_0$.

User definable Parameters:

Processor/%name%/{TofLow|TofUp}
The time of flight range within the histogram to convert to energy. Default is 0|1.

Processor/%name%/{t0}
corrects the time of flight. Default is 0.

Processor/%name%/{e0}
Retardation voltage. Default is 0.

Processor/%name%/{alpha}
Coefficient for converting to energy. Default is 0.

Processor/%name%/{NbrBins}
number of bins in converted histogram. Default is 0.

Processor/%name%/{tb1}
The lower limit for calculating baseline. Default is 0.

Processor/%name%/{tb2}
The upper limit for calculating baseline. Default is 0.

Processor/%name%/{TofName}
input 1D histogram that is the time of flight wavetrace.

Processor/%name%/{HistZeroD}
input 0D histogram for enegy correction.

Author
Koji Motomura
Marco Siano

Definition at line 572 of file partial_covariance.h.

Constructor & Destructor Documentation

pp408::pp408 ( const name_t name)

constructor

Definition at line 639 of file partial_covariance.cpp.

References loadSettings().

Member Function Documentation

double pp408::calcEtoTof ( double  energy)
protected

retrieve the time that corresponses to a given energy

calculate the time using function $t=\frac{\alpha}{\sqrt{e+e_0}}+t_0$.

Returns
the calculated time
Parameters
energythe energy that one wants to calc the time for

Definition at line 700 of file partial_covariance.cpp.

References alpha, ediff, and t0.

Referenced by ToftoEnergy().

double pp408::calcTofValue ( const double  tofPos,
const size_t  binlow,
const double  bin_size,
const result_t TofHisto 
)
protected

retrieve the linear interpolation value

calculate the signal height at tofPos when it is interpolated

Returns
height of signal
Parameters
tofPosa time that we want to know interpolated value
binlowbin value at lower side
bin_sizethe bin size of energy histogram
TofHistoToF wavetrace

Definition at line 707 of file partial_covariance.cpp.

References cass::Result< T >::axis(), and cass::Result< float >::xAxis.

Referenced by ToftoEnergy().

void pp408::loadSettings ( size_t  )
virtual
void pp408::process ( const CASSEvent evt,
result_t result 
)
virtual
void pp408::ToftoEnergy ( const result_t TofHisto,
result_t Energy,
double  offset 
)
protected

make the histogram in energy scale.

This function makes the histgram in energy scale. Offset value is calculated by average in range of no signal.

Parameters
TofHistoinput ToF histgram
Energyresult histgram converted to energy
offsetbaseline of wavetrace

Definition at line 714 of file partial_covariance.cpp.

References _userTofRange, alpha, cass::Result< T >::axis(), calcEtoTof(), calcTofValue(), e0, NbrBins, offset, cass::Axis< T >::pos(), t0, and cass::Result< float >::xAxis.

Referenced by process().

Member Data Documentation

shared_pointer cass::pp408::_constHist
protected

pp containing input OD histogram

Definition at line 589 of file partial_covariance.h.

Referenced by loadSettings(), and process().

shared_pointer cass::pp408::_pHist
protected

pp containing input histogram

Definition at line 586 of file partial_covariance.h.

Referenced by loadSettings(), and process().

std::pair<float,float> cass::pp408::_userTofRange
protected

the user requested Tof-axis limits

Definition at line 592 of file partial_covariance.h.

Referenced by loadSettings(), and ToftoEnergy().

double cass::pp408::alpha
protected

Coefficient to convert to energy.

Definition at line 636 of file partial_covariance.h.

Referenced by calcEtoTof(), loadSettings(), and ToftoEnergy().

size_t cass::pp408::bint0
protected

t0 converted to bin

Definition at line 657 of file partial_covariance.h.

Referenced by loadSettings().

size_t cass::pp408::bintb1
protected

tb1 converted to bin

Definition at line 660 of file partial_covariance.h.

Referenced by loadSettings(), and process().

size_t cass::pp408::bintb2
protected

tb2 converted to bin

Definition at line 663 of file partial_covariance.h.

Referenced by loadSettings(), and process().

size_t cass::pp408::binTofLow
protected

lower limit converted to bin

Definition at line 654 of file partial_covariance.h.

Referenced by loadSettings().

size_t cass::pp408::binTofUp
protected

Upper limit converted to bin.

Definition at line 651 of file partial_covariance.h.

Referenced by loadSettings().

double cass::pp408::e0
protected

retardation voltage

Definition at line 633 of file partial_covariance.h.

Referenced by loadSettings(), process(), and ToftoEnergy().

double cass::pp408::ediff
protected

difference from expected energy

Definition at line 645 of file partial_covariance.h.

Referenced by calcEtoTof(), and process().

size_t cass::pp408::NbrBins
protected

number of bins in converted histgram

Definition at line 648 of file partial_covariance.h.

Referenced by loadSettings(), and ToftoEnergy().

double cass::pp408::t0
protected

corrects the time of flight

Definition at line 630 of file partial_covariance.h.

Referenced by calcEtoTof(), loadSettings(), and ToftoEnergy().

double cass::pp408::tb1
protected

The lower limit for calculating baseline.

Definition at line 639 of file partial_covariance.h.

Referenced by loadSettings().

double cass::pp408::tb2
protected

The upper limit for calculating baseline.

Definition at line 642 of file partial_covariance.h.

Referenced by loadSettings().


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