//*-- AUTHOR : Anar
//*-- HypCopy : B. Spruck
//*-- Modified : 26/10/2005 by B. Spruck
//*-- Modified : 10/01/2006 by T. Perez PipPimGamma Channel and Non-used functions commented out.
//_HADES_CLASS_DESCRIPTION
////////////////////////////////////////////////////////////////////////
//
// HHypKineFit
//
// if you need any of the removed functions, retrieve a version earlier than
// 01.02.2006... Tiago .
////////////////////////////////////////////////////////////////////////
#include "hhypKineFit.h"
#include "hgeomvector.h"
using namespace std;
ClassImp(HHypKineFit);
HHypKineFit::HHypKineFit()
{
init(2200.);
}
HHypKineFit::HHypKineFit(Float_t* in,Float_t* errIn)
{
init(2200.);
for(Int_t i=0; i<12; i++)
{
fitInput[i]=in[i];
errInput[i]=errIn[i];
fitOutput[i]=-1000.;
errOutput[i]=-1000.;
}
}
HHypKineFit::~HHypKineFit()
{
if(gMinuit) delete gMinuit;
if(fitInput) delete [] fitInput;
if(fitOutput) delete [] fitOutput;
if(errInput) delete [] errInput;
if(errOutput) delete [] errOutput;
}
void HHypKineFit::init(Float_t eB)
{
gMinuit=0;
fitInput=new Float_t [12];
errInput=new Float_t [12];
fitOutput=new Double_t [12];
errOutput=new Double_t [12];
eBeam=eB;
mProton=938.27200;
Float_t mPion0=134.9766;
Float_t mPionC=139.57018;
Float_t mElec=0.511;
m2Proton=mProton*mProton;
m2Pion0=mPion0*mPion0;
m2PionC=mPionC*mPionC;
m2Elec=mElec*mElec;
ELab=eBeam+mProton;
pInput=sqrt(ELab*ELab-m2Proton);
/* ECM=sqrt(2.0*m2Proton+2.0*ELab*mProton);
GammaF=(ELab+mProton)/ECM;
BetaF=pInput/(ELab+mProton);
AllE=ELab+mProton;
AllX=0;
AllY=0;
AllZ=pInput;*/
}
void HHypKineFit::ResetOutput(void)
{
for(Int_t i=0; i<12; i++)
{
fitOutput[i]=-1000.;
errOutput[i]=-1000.;
}
}
void HHypKineFit::SetInput(Float_t* in,Float_t* errIn)
{
for(Int_t i=0; i<12; i++)
{
fitInput[i]=in[i];
errInput[i]=errIn[i];
}
}
void HHypKineFit::SetOutput(Double_t* out,Double_t* errOut)
{
for(Int_t i=0; i<12; i++)
{
fitOutput[i]=out[i];
errOutput[i]=errOut[i];
}
}
void HHypKineFit::GetInput(Float_t* in,Float_t* errIn)
{
for(Int_t i=0; i<12; i++)
{
in[i]=fitInput[i];
errIn[i]=errInput[i];
}
}
void HHypKineFit::GetOutput(Double_t* out,Double_t* errOut)
{
for(Int_t i=0; i<12; i++)
{
out[i]=fitOutput[i];
errOut[i]=errOutput[i];
}
}
Float_t HHypKineFit::scalar(HGeomVector &data1, HGeomVector &data2)
{
return (data1.getX()*data2.getX()+data1.getY()*data2.getY()+data1.getZ()*data2.getZ());
}
ROOT page - Class index - Class Hierarchy - 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.