TSpectrum


class description - source file - inheritance tree

class TSpectrum : public TNamed


    public:
TSpectrum() TSpectrum(Int_t maxpositions, Float_t resolution = 1) TSpectrum(const TSpectrum&) virtual ~TSpectrum() double Area(double a, double sigma, double t, double b) virtual const char* Background(TH1* hist, int niter, Option_t* option = "goff") const const char* Background1(float* spectrum, int size, int niter) const const char* Background1General(float* spectrum, int size, int number_of_iterations, int direction, int filter_order, bool compton) const void BitReverse(float* working_space, int num) void BitReverseHaar(float* working_space, int shift, int num, int start) static TClass* Class() const char* Deconvolution1(float* source, const float* resp, int size, int niter) const const char* Deconvolution1HighResolution(float* source, const float* resp, int size, int number_of_iterations, int number_of_repetitions, double boost) const const char* Deconvolution1Unfolding(float* source, const float** resp, int sizex, int sizey, int number_of_iterations) const double Dera1(double i) double Dera2(double i) double Deramp(double i, double i0, double sigma, double t, double s, double b) double Derb(int num_of_fitted_peaks, double i, const double* parameter, double sigma, double t, double b) double Derderi0(double i, double amp, double i0, double sigma) double Derdersigma(int num_of_fitted_peaks, double i, const double* parameter, double sigma) double Derfc(double x) double Deri0(double i, double amp, double i0, double sigma, double t, double s, double b) double Derpa(double sigma, double t, double b) double Derpb(double a, double sigma, double t, double b) double Derpsigma(double a, double t, double b) double Derpt(double a, double sigma, double b) double Ders(int num_of_fitted_peaks, double i, const double* parameter, double sigma) double Dersigma(int num_of_fitted_peaks, double i, const double* parameter, double sigma, double t, double s, double b) double Dert(int num_of_fitted_peaks, double i, const double* parameter, double sigma, double b) const char* Enhance1(const float* source, float* dest, int size, int type, int degree, int xmin, int xmax, float enhance_coeff) const double Erfc(double x) const char* Filter1Zonal(const float* source, float* dest, int size, int type, int degree, int xmin, int xmax, float filter_coeff) const const char* Fit1Awmi(float* source, TSpectrumOneDimFit* p, int size) const const char* Fit1Stiefel(float* source, TSpectrumOneDimFit* p, int size) const void Fourier(float* working_space, int num, int hartley, int direction, int zt_clear) int GeneralExe(float* working_space, int zt_clear, int num, int degree, int type) int GeneralInv(float* working_space, int num, int degree, int type) TH1* GetHistogram() const Int_t GetNPeaks() const Float_t* GetPositionX() const Float_t* GetPositionY() const void Haar(float* working_space, int num, int direction) virtual TClass* IsA() const double Lls(double a) double Ourpowl(double a, int pw) virtual Int_t Search(TH1* hist, Double_t sigma, Option_t* option = "goff", Double_t threshold = 0.05) Int_t Search1HighRes(float* source, float* dest, int size, float sigma, double threshold, bool background_remove, int decon_iterations, bool markov, int aver_window) void SetResolution(Float_t resolution = 1) double Shape(int num_of_fitted_peaks, double i, const double* parameter, double sigma, double t, double s, double b, double a0, double a1, double a2) virtual void ShowMembers(TMemberInspector& insp, char* parent) const char* Smooth1Markov(float* source, int size, int aver_window) const void StiefelInversion(double** a, int rozmer) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) const char* Transform1(const float* source, float* dest, int size, int type, int direction, int degree) const void Walsh(float* working_space, int num)

Data Members


    protected:
Int_t fMaxPeaks Maximum number of peaks to be found Int_t fNPeaks number of peaks found Float_t* fPosition !array of current peak positions Float_t* fPositionX !X position of peaks Float_t* fPositionY !Y position of peaks Float_t fResolution resolution of the neighboring peaks TH1* fHistogram resulting histogram

Class Description

   THIS CLASS CONTAINS ADVANCED SPECTRA PROCESSING FUNCTIONS.            
                                                                         
   ONE-DIMENSIONAL BACKGROUND ESTIMATION FUNCTIONS                       
   TWO-DIMENSIONAL BACKGROUND ESTIMATION FUNCTIONS                       
   ONE-DIMENSIONAL SMOOTHING FUNCTIONS                                   
   TWO-DIMENSIONAL SMOOTHING FUNCTIONS                                   
   ONE-DIMENSIONAL DECONVOLUTION FUNCTIONS                               
   TWO-DIMENSIONAL DECONVOLUTION FUNCTIONS                               
   ONE-DIMENSIONAL PEAK SEARCH FUNCTIONS                                 
   TWO-DIMENSIONAL PEAK SEARCH FUNCTIONS                                 
   ONE-DIMENSIONAL PEAKS FITTING FUNCTIONS                               
   TWO-DIMENSIONAL PEAKS FITTING FUNCTIONS                               
   ONE-DIMENSIONAL ORTHOGONAL TRANSFORMS FUNCTIONS                       
   TWO-DIMENSIONAL ORTHOGONAL TRANSFORMS FUNCTIONS                       
                                                                         
   These functions were written by:                                      
   Miroslav Morhac                                                       
   Institute of Physics                                                  
   Slovak Academy of Sciences                                            
   Dubravska cesta 9, 842 28 BRATISLAVA                                  
   SLOVAKIA                                                              
                                                                         
   email:fyzimiro@savba.sk,    fax:+421 7 54772479                       
                                                                         
  The original code in C has been repackaged as a C++ class by R.Brun    //                        
                                                                         
  The algorithms in this class have been published in the following      
  references:                                                            
   [1]  M.Morhac et al.: Background elimination methods for              
   multidimensional coincidence gamma-ray spectra. Nuclear               
   Instruments and Methods in Physics Research A 401 (1997) 113-         
   132.                                                                  
                                                                         
   [2]  M.Morhac et al.: Efficient one- and two-dimensional Gold         
   deconvolution and its application to gamma-ray spectra                
   decomposition. Nuclear Instruments and Methods in Physics             
   Research A 401 (1997) 385-408.                                        
                                                                         
   [3]  M.Morhac et al.: Identification of peaks in multidimensional     
   coincidence gamma-ray spectra. Submitted for publication in           
   Nuclear Instruments and Methods in Physics Research A.                
                                                                         
   These NIM papers are also available as Postscript files from:         


TSpectrum() :TNamed("Spectrum", "Miroslav Morhac peak finder")

TSpectrum(Int_t maxpositions, Float_t resolution) :TNamed("Spectrum", "Miroslav Morhac peak finder")

~TSpectrum()

const char* Background(TH1 * h, int number_of_iterations, Option_t * option)

Int_t Search(TH1 * hin, Double_t sigma, Option_t * option, Double_t threshold)

void SetResolution(Float_t resolution)

const char* Background1(float *spectrum, int size, int number_of_iterations)

const char* Background1General(float *spectrum, int size, int number_of_iterations, int direction, int filter_order, bool compton)

const char* Smooth1Markov(float *source, int size, int aver_window)

const char* Deconvolution1(float *source, const float *resp, int size, int number_of_iterations)

double Lls(double a)

const char* Deconvolution1HighResolution(float *source, const float *resp, int size, int number_of_iterations, int number_of_repetitions, double boost)

const char* Deconvolution1Unfolding(float *source, const float **resp, int sizex, int sizey, int number_of_iterations)

Int_t Search1HighRes(float *source,float *dest, int size, float sigma, double threshold, bool background_remove,int decon_iterations, bool markov, int aver_window)

double Erfc(double x)

double Derfc(double x)

double Deramp(double i, double i0, double sigma, double t, double s, double b)

double Deri0(double i, double amp, double i0, double sigma, double t, double s, double b)

double Derderi0(double i, double amp, double i0, double sigma)

double Dersigma(int num_of_fitted_peaks, double i, const double *parameter, double sigma, double t, double s, double b)

double Derdersigma(int num_of_fitted_peaks, double i, const double *parameter, double sigma)

double Dert(int num_of_fitted_peaks, double i, const double *parameter, double sigma, double b)

double Ders(int num_of_fitted_peaks, double i, const double *parameter, double sigma)

double Derb(int num_of_fitted_peaks, double i, const double *parameter, double sigma, double t, double b)

double Dera1(double i) //derivative of backgroud according to a1

double Dera2(double i) //derivative of backgroud according to a2

double Shape(int num_of_fitted_peaks, double i, const double *parameter, double sigma, double t, double s, double b, double a0, double a1, double a2)

double Area(double a, double sigma, double t, double b)

double Derpa(double sigma, double t, double b)

double Derpsigma(double a, double t, double b)

double Derpt(double a, double sigma, double b)

double Derpb(double a, double sigma, double t, double b)

double Ourpowl(double a, int pw)

const char* Fit1Awmi(float *source, TSpectrumOneDimFit * p, int size)

void StiefelInversion(double **a, int size)

const char* Fit1Stiefel(float *source, TSpectrumOneDimFit * p, int size)

void Haar(float *working_space, int num, int direction)

void Walsh(float *working_space, int num)

void BitReverse(float *working_space, int num)

void Fourier(float *working_space, int num, int hartley, int direction, int zt_clear)

void BitReverseHaar(float *working_space, int shift, int num, int start)

int GeneralExe(float *working_space, int zt_clear, int num, int degree, int type)

int GeneralInv(float *working_space, int num, int degree, int type)

const char* Transform1(const float *source, float *dest, int size, int type, int direction, int degree)

const char* Filter1Zonal(const float *source, float *dest, int size, int type, int degree, int xmin, int xmax, float filter_coeff)

const char* Enhance1(const float *source, float *dest, int size, int type, int degree, int xmin, int xmax, float enhance_coeff)



Inline Functions


               TH1* GetHistogram() const
              Int_t GetNPeaks() const
           Float_t* GetPositionX() const
           Float_t* GetPositionY() const
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
          TSpectrum TSpectrum(const TSpectrum&)


Author: Miroslav Morhac 27/05/99
Last update: root/hist:$Name: $:$Id: TSpectrum.cxx,v 1.18 2003/12/16 08:05:10 brun Exp $


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.