Script Compiler

From: mdobbs@uvic.ca
Date: Thu Jul 15 1999 - 23:53:32 MEST


Hello,

I'm attempting to use the new Script Compiler feature of V2.22 on 
HP-UX.B.10.20 and having some problems- hoping someone call help out:

Here's the result:
_________________________________________________________________________
  *******************************************
  *                                         *
  *        W E L C O M E  to  R O O T       *
  *                                         *
  *   Version   2.22/09      13 July 1999   *
  *                                         *
  *  You are welcome to visit our Web site  *
  *          http://root.cern.ch            *
  *                                         *
  *******************************************
CINT/ROOT C/C++ Interpreter version 5.14.8, Jul 4 1999
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
root [0] .L GausLandConv.C++
Creating shared library
/gumbi/home/mdobbs/RootExamples_MAD/./GausLandConv.so
Note: operator new() masked 1c
Note: operator delete() masked 1c
CC: error: "baaa02213.C" not legal input for "-b" option (1923)
root [1] 
_________________________________________________________________________
and here's the function GausLandConv.C
_________________________________________________________________________
#ifndef __CINT__
#include "TMath.h"
#endif
class TMath;

Double_t GausLandConv(Double_t *x, Double_t *par) {

  // Crude convolution of a Gaussian (mean= 0.) and a Landau
  // distribution at x[0].

  Double_t LoBound = par[0];       // lo bound for integration
  Double_t HiBound = par[1];       // hi bound for integration
  Double_t NumIntBins = par[2];    // number of Riemann integration bins
  Double_t YNorm = par[3];         // Normalization
  Double_t GausSigma = par[4];     // sigma width of gaussian
  Double_t XNorm = par[5];         // x axis normalization
  Double_t LandMostProb = par[6];  // most probable of landau
  Double_t StepSize = (HiBound - LoBound) / NumIntBins;

  // Integrate over the region LoBound --> HiBound using 
  //      NumIntBins Riemannian bins
  
  Double_t gaus, result = 0;
  for ( Double_t tau = LoBound + StepSize/2; tau < HiBound; 
	tau += StepSize ) {

    // evaluate a gaussian curve at (x[0]-tau)
    gaus = TMath::Exp( -1*(x[0]-tau)*(x[0]-tau)/(2*GausSigma*GausSigma) ) 
           / ( TMath::Sqrt(2.*3.141592653)*GausSigma );

    // add the area of this Riemann bin to the total integral result
    result += YNorm * TMath::Landau(tau,LandMostProb,XNorm) * gaus;
  }
  return result;
}

Thanks, Matt

_________________________________________________________________________
                           Matt   D O B B S
Department of Physics and Astronomy   CERN Address:
University of Victoria                40-1-C15, ATLAS Bldg.
P.O. Box 3055                         Office Tel: 41.22.76.71272
Victoria, British Columbia		
Canada    V8W 3P6			
Email: mdobbs@uvic.ca                 Matthew.Adam.Dobbs@Cern.CH
Office Tel.: (250) 721-7728           http://wwwhep.phys.uvic.ca/~mdobbs/
Home Tel.: (250) 995-1235



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:35 MET