TSpectrum2


class description - source file - inheritance tree

class TSpectrum2 : public TNamed


    public:
TSpectrum2() TSpectrum2(Int_t maxpositions, Float_t resolution = 1) TSpectrum2(const TSpectrum2&) virtual ~TSpectrum2() virtual const char* Background(TH1* hist, int niter, const Option_t* option = "goff") const const char* Background2(float** spectrum, int sizex, int sizey, int niter) const const char* Background2NonlinearRidges(float** spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order) const const char* Background2RectangularRidges(float** spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order, int filter_type) const const char* Background2RectangularRidgesX(float** spectrum, int sizex, int sizey, int number_of_iterations, int direction, int filter_order) const const char* Background2RectangularRidgesY(float** spectrum, int sizex, int sizey, int number_of_iterations, int direction, int filter_order) const const char* Background2SkewRidges(float** spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order) const void BitReverse(float* working_space, int num) void BitReverseHaar(float* working_space, int shift, int num, int start) static TClass* Class() void DecFourier2(double* working_space, int num, int iter, int inv) const char* Deconvolution2(float** source, const float** resp, int sizex, int sizey, int niter) const const char* Deconvolution2HighResolution(float** source, const float** resp, int sizex, int sizey, int number_of_iterations, int number_of_repetitions, double boost) const double Deramp2(double x, double y, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by) double Derampx(double x, double x0, double sigmax, double tx, double sx, double bx) double Derbx(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double txy, double tx, double bx, double by) double Derby(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double txy, double ty, double bx, double by) double Derderi01(double x, double ax, double x0, double sigmax) double Derderi02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro) double Derderj02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro) double Derdersigmax(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double ro) double Derdersigmay(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double ro) double Derfc(double x) double Deri01(double x, double ax, double x0, double sigmax, double tx, double sx, double bx) double Deri02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by) double Derj02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by) double Derpa2(double sx, double sy, double ro) double Derpro(double a, double sx, double sy, double ro) double Derpsigmax(double a, double sy, double ro) double Derpsigmay(double a, double sx, double ro) double Derro(int num_of_fitted_peaks, double x, double y, const double* parameter, double sx, double sy, double r) double Dersigmax(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double ro, double txy, double sxy, double tx, double sx, double bx, double by) double Dersigmay(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double ro, double txy, double sxy, double ty, double sy, double bx, double by) double Dersx(int num_of_fitted_peaks, double x, const double* parameter, double sigmax) double Dersxy(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay) double Dersy(int num_of_fitted_peaks, double x, const double* parameter, double sigmax) double Dertx(int num_of_fitted_peaks, double x, const double* parameter, double sigmax, double bx) double Dertxy(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double bx, double by) double Derty(int num_of_fitted_peaks, double x, const double* parameter, double sigmax, double bx) const char* Enhance2(const float** source, float** dest, int sizex, int sizey, int type, int degree, int xmin, int xmax, int ymin, int ymax, float enhance_coeff) const double Erfc(double x) const char* Filter2Zonal(const float** source, float** dest, int sizex, int sizey, int type, int degree, int xmin, int xmax, int ymin, int ymax, float filter_coeff) const const char* Fit2Awmi(float** source, TSpectrumTwoDimFit* p, int sizex, int sizey) const const char* Fit2Stiefel(float** source, TSpectrumTwoDimFit* p, int sizex, int sizey) const void FourCos2(float** working_matrix, float* working_vector, int numx, int numy, int direction, int type) void Fourier(float* working_space, int num, int hartley, int direction, int zt_clear) void General2(float** working_matrix, float* working_vector, int numx, int numy, int direction, int type, int degree) 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) void HaarWalsh2(float** working_matrix, float* working_vector, int numx, int numy, int direction, int type) virtual TClass* IsA() const double Lls(double a) double Ourpowl(double a, int pw) int PeakEvaluate(const double* temp, int size, int xmax, double xmin, bool markov) virtual Int_t Search(TH1* hist, Double_t sigma, const Option_t* option = "goff") Int_t Search2(float** source, int sizex, int sizey, double sigma) Int_t Search2General(float** source, int sizex, int sizey, double sigma, double threshold, bool markov, int aver_window) void SetResolution(Float_t resolution = 1) double Shape2(int num_of_fitted_peaks, double x, double y, const double* parameter, double sigmax, double sigmay, double ro, double a0, double ax, double ay, double txy, double sxy, double tx, double ty, double sx, double sy, double bx, double by) virtual void ShowMembers(TMemberInspector& insp, char* parent) const char* Smooth2(float** spectrum, int sizex, int sizey, int pointsx, int pointsy) const void StiefelInversion(double** a, int rozmer) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) const char* Transform2(const float** source, float** dest, int sizex, int sizey, int type, int direction, int degree) const double Volume(double a, double sx, double sy, double ro) 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:         


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

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

~TSpectrum2()

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

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

void SetResolution(Float_t resolution)

const char* Background2(float **spectrum, int sizex, int sizey, int number_of_iterations)

const char* Background2RectangularRidges(float **spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order, int filter_type)

const char* Background2RectangularRidgesX(float **spectrum, int sizex, int sizey, int number_of_iterations, int direction, int filter_order)

const char* Background2RectangularRidgesY(float **spectrum, int sizex, int sizey, int number_of_iterations, int direction, int filter_order)

const char* Background2SkewRidges(float **spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order)

const char* Background2NonlinearRidges(float **spectrum, int sizex, int sizey, int number_of_iterations_x, int number_of_iterations_y, int direction, int filter_order)

const char* Smooth2(float **spectrum, int sizex, int sizey, int pointsx, int pointsy)

double Lls(double a)

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

void DecFourier2(double *working_space, int num, int iter, int inv)

const char* Deconvolution2HighResolution(float **source, const float **resp, int sizex, int sizey, int number_of_iterations, int number_of_repetitions, double boost)

Int_t PeakEvaluate(const double *temp, int size, int xmax, double xmin, bool markov)

Int_t Search2(float **source, int sizex, int sizey, double sigma)

Int_t Search2General(float **source, int sizex, int sizey, double sigma, double threshold, bool markov, int aver_window)

double Erfc(double x)

double Derfc(double x)

double Ourpowl(double a, int pw)

void StiefelInversion(double **a, int size)

double Shape2(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double ro, double a0, double ax, double ay, double txy, double sxy, double tx, double ty, double sx, double sy, double bx, double by)

double Deramp2(double x, double y, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by)

double Derampx(double x, double x0, double sigmax, double tx, double sx, double bx)

double Deri02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by)

double Derderi02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro)

double Derj02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro, double txy, double sxy, double bx, double by)

double Derderj02(double x, double y, double a, double x0, double y0, double sigmax, double sigmay, double ro)

double Deri01(double x, double ax, double x0, double sigmax, double tx, double sx, double bx)

double Derderi01(double x, double ax, double x0, double sigmax)

double Dersigmax(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double ro, double txy, double sxy, double tx, double sx, double bx, double by)

double Derdersigmax(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double ro)

double Dersigmay(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double ro, double txy, double sxy, double ty, double sy, double bx, double by)

double Derdersigmay(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double ro)

double Derro(int num_of_fitted_peaks, double x, double y, const double *parameter, double sx, double sy, double r)

double Dertxy(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double bx, double by)

double Dersxy(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay)

double Dertx(int num_of_fitted_peaks, double x, const double *parameter, double sigmax, double bx)

double Derty(int num_of_fitted_peaks, double x, const double *parameter, double sigmax, double bx)

double Dersx(int num_of_fitted_peaks, double x, const double *parameter, double sigmax)

double Dersy(int num_of_fitted_peaks, double x, const double *parameter, double sigmax)

double Derbx(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double txy, double tx, double bx, double by)

double Derby(int num_of_fitted_peaks, double x, double y, const double *parameter, double sigmax, double sigmay, double txy, double ty, double bx, double by)

double Volume(double a, double sx, double sy, double ro)

double Derpa2(double sx, double sy, double ro)

double Derpsigmax(double a, double sy, double ro)

double Derpsigmay(double a, double sx, double ro)

double Derpro(double a, double sx, double sy, double ro)

const char* Fit2Awmi(float **source, TSpectrumTwoDimFit * p, int sizex, int sizey)

const char* Fit2Stiefel(float **source, TSpectrumTwoDimFit * p, int sizex, int sizey)

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)

void HaarWalsh2(float **working_matrix, float *working_vector, int numx, int numy, int direction, int type)

void FourCos2(float **working_matrix, float *working_vector, int numx, int numy, int direction, int type)

void General2(float **working_matrix, float *working_vector, int numx, int numy, int direction, int type, int degree)

const char* Transform2(const float **source, float **dest, int sizex, int sizey, int type, int direction, int degree)

const char* Filter2Zonal(const float **source, float **dest, int sizex, int sizey, int type, int degree, int xmin, int xmax, int ymin, int ymax, float filter_coeff)

const char* Enhance2(const float **source, float **dest, int sizex, int sizey, int type, int degree, int xmin, int xmax, int ymin, int ymax, 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)
         TSpectrum2 TSpectrum2(const TSpectrum2&)


Author: Miroslav Morhac 11/04/2003
Last update: root/hist:$Name: $:$Id: TSpectrum2.cxx,v 1.6 2003/05/08 15:00:38 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.