StRoot
1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
StHbtMaker
Infrastructure
StHbtCoulomb.h
1
/***************************************************************************
2
*
3
* $Id: StHbtCoulomb.h,v 1.12 2000/10/26 19:48:54 rcwells Exp $
4
*
5
* Author: Randy Wells, Ohio State, rcwells@mps.ohio-state.edu
6
***************************************************************************
7
*
8
* Description: part of STAR HBT Framework: StHbtMaker package
9
* This is a Coulomb correction class which
10
* 1. Reads in the dat from a file
11
* 2. Performs a linear interpolation in R and creates any array of interpolations
12
* 3. Interpolates in eta and returns the Coulomb correction to user
13
*
14
***************************************************************************
15
*
16
* $Log: StHbtCoulomb.h,v $
17
* Revision 1.12 2000/10/26 19:48:54 rcwells
18
* Added functionality for Coulomb correction of <qInv> in 3D correltions
19
*
20
* Revision 1.11 2000/08/02 01:25:12 lisa
21
* Add Coulomb correction capability to 3D Bertsch-Pratt CorrFctn
22
*
23
* Revision 1.10 2000/07/16 21:38:22 laue
24
* StHbtCoulomb.cxx StHbtSectoredAnalysis.cxx : updated for standalone version
25
* StHbtV0.cc StHbtV0.hh : some cast to prevent compiling warnings
26
* StHbtParticle.cc StHbtParticle.hh : pointers mTrack,mV0 initialized to 0
27
* StHbtIOBinary.cc : some printouts in #ifdef STHBTDEBUG
28
* StHbtEvent.cc : B-Field set to 0.25Tesla, we have to think about a better
29
* solution
30
*
31
* Revision 1.9 2000/05/31 20:12:53 rcwells
32
* Modified StHbtCoulomb for Id and Log entries
33
*
34
*
35
**************************************************************************/
36
37
#ifndef StHbtCoulomb_HH
38
#define StHbtCoulomb_HH
39
40
#include <stdio.h>
41
#include "StHbtMaker/Infrastructure/StHbtTypes.hh"
42
#include "StHbtMaker/Infrastructure/StHbtPair.hh"
43
#include "StHbtMaker/Infrastructure/StHbtParticle.hh"
44
45
class
StHbtCoulomb
{
46
47
public
:
48
StHbtCoulomb
();
49
StHbtCoulomb
(
const
char
*readFile,
const
double
& radius,
const
double
& charge);
50
virtual
~
StHbtCoulomb
();
51
52
void
SetRadius(
const
double
& radius);
53
double
GetRadius();
54
void
SetFile(
const
char
*readFile);
55
void
SetChargeProduct(
const
double
& charge);
56
57
// These have different names so eta/Qinv don't confuse the compiler
58
double
CoulombCorrect(
const
double
& eta);
59
double
CoulombCorrect(
const
double
& eta,
const
double
& radius);
60
double
CoulombCorrect(
const
StHbtPair
* pair);
61
double
CoulombCorrect(
const
StHbtPair
* pair,
const
double
& radius);
62
double
CoulombCorrect(
const
double
& mass,
const
double
& charge,
63
const
double
& radius,
const
double
& qInv);
64
StHbt1DHisto
* CorrectionHistogram(
const
double
& mass1,
const
double
& mass2,
const
int
& nBins,
65
const
double
& low,
const
double
& high);
66
#ifdef __ROOT__
67
StHbt1DHisto
* CorrectionHistogram(
const
StHbt1DHisto
*,
const
double
);
68
StHbt3DHisto* CorrectionHistogram(
const
StHbt3DHisto*,
const
double
);
69
#endif
70
private
:
71
double
Eta(
const
StHbtPair
* pair);
// Calculates eta
72
void
CreateLookupTable(
const
double
& radius);
// Creates look-up table
73
const
char
* mFile;
// File to interpolate corrections from
74
double
mRadius;
// Radius from previous iteration
75
double
mZ1Z2;
// Charge product of particles
76
double
mEta[1000];
// interpolated Coulomb correction table
77
double
mCoulomb[1000];
// interpolated Coulomb correction table
78
int
mNLines;
// Number of Eta's in lookup-table
79
80
#ifdef __ROOT__
81
ClassDef(
StHbtCoulomb
, 0)
82
#endif
83
};
84
85
86
#endif
franks1HistoD
Definition:
franks1HistoD.hh:11
StHbtCoulomb
Definition:
StHbtCoulomb.h:45
StHbtPair
Definition:
StHbtPair.hh:98
Generated by
1.8.5