]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TMEVSIM/AliMevSimConfig.cxx
new lookup table for sim. data with numberof TRMs
[u/mrichter/AliRoot.git] / TMEVSIM / AliMevSimConfig.cxx
index 539fdadf4d1eb350785bd6223ee67b1dfcb76730..b305f7725231af278129b7a4d65ff98a5fb73771 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-
-/* $Id$ */
+//__________________________________________________________________
+////////////////////////////////////////////////////////////////////
+//
+// class AliMevSimConfig
+//
+// Class containing configuation inforamtion for MeVSim generator
+// --------------------------------------------
+// --------------------------------------------
+// --------------------------------------------
+// author: radomski@if.pw.edu.pl
+//
+//    (3) model_type - equals 1,2,3,4,5 or 6 so far.  See comments in
+//                     Function dNdpty to see what is calculated.
+//                     The models included are:
+//                   = 1, Factorized mt exponential, Gaussian rapidity model
+//                   = 2, Pratt non-expanding, spherical thermal source model
+//                   = 3, Bertsch non-expanding spherical thermal source model
+//                   = 4, Pratt spherically expanding, thermally equilibrated
+//                        source model.
+//                   = 5, Factorized pt and eta distributions input bin-by-bin.
+//                   = 6, Fully 2D pt,eta distributions input bin-by-bin.
+//                        NOTE: model_type = 1-4 are functions of (pt,y)
+//                              model_type = 5,6 are functions of (pt,eta)
+//    (4) reac_plane_cntrl - Can be either 1,2,3 or 4 where:
+//                         = 1 to ignore reaction plane and anisotropic flow,
+//                             all distributions will be azimuthally symm.
+//                         = 2 to use a fixed reaction plane angle for all
+//                             events in the run.
+//                         = 3 to assume a randomly varying reaction plane
+//                             angle for each event as determined by a
+//                             Gaussian distribution.
+//                         = 4 to assume a randomly varying reaction plane
+//                             for each event in the run as determined by
+//                             a uniform distribution from 0 to 360 deg.
+//    (5) PSIr_mean, PSIr_stdev - Reaction plane angle mean and Gaussian
+//                                std.dev. (both are in degrees) for cases
+//                                with reac_plane_cntrl = 2 (use mean value)
+//                                and 3.  Note: these are read in regardless
+//                                of the value of reac_plane_cntrl.
+//    (6) MultFac_mean, MultFac_stdev - Overall multiplicity scaling factor
+//                                      for all PID types; mean and std.dev.;
+//                                      for trigger fluctuations event-to-evt.
+//    (7) pt_cut_min,pt_cut_max - Range of transverse momentum in GeV/c.
+//    (8) eta_cut_min,eta_cut_max - Pseudorapidity range
+//    (9) phi_cut_min,phi_cut_max - Azimuthal angular range in degrees.
+//   (10) n_stdev_mult - Number of standard deviations about the mean value
+//                       of multiplicity to include in the random event-to-
+//                       event selection process.  The maximum number of
+//                       steps that can be covered is determined by
+//                       parameter n_mult_max_steps in the accompanying
+//                       include file 'Parameter_values.inc' which is
+//                       presently set at 1000, but the true upper limit for
+//                       this is n_mult_max_steps - 1 = 999.
+//   (11) n_stdev_temp - Same, except for the "Temperature" parameter.
+//   (12) n_stdev_sigma- Same, except for the rapidity width parameter.
+//   (13) n_stdev_expvel - Same, except for the expansion velocity parameter.
+//   (14) n_stdev_PSIr   - Same, except for the reaction plane angle
+//   (15) n_stdev_Vn     - Same, except for the anisotropy coefficients, Vn.
+//   (16) n_stdev_MultFac - Same, except for the multiplicity scaling factor.
+//   (17) n_integ_pts - Number of mesh points to use in the random model
+//                      parameter selection process.  The upper limit is
+//                      set by parameter nmax_integ in the accompanying
+//                      include file 'Parameter_values.inc' which is presently
+//                      set at 100, but the true upper limit for n_integ_pts
+//                      is nmax_integ - 1 = 99.
+//   (18) n_scan_pts  - Number of mesh points to use to scan the (pt,y)
+//                      dependence of the model distributions looking for
+//                      the maximum value.  The 2-D grid has
+//                      n_scan_pts * n_scan_pts points; no limit to size of
+//                      n_scan_pts.
+//
+////////////////////////////////////////////////////////////////////
 
 #include "AliMevSimConfig.h"
 
@@ -23,14 +93,14 @@ ClassImp(AliMevSimConfig)
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 AliMevSimConfig::AliMevSimConfig() {
-
+//def ctor
   Init();
 }
 
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 AliMevSimConfig::AliMevSimConfig(Int_t modelType) {
-
+//ctor
   Init();
   SetModelType(modelType);
 }
@@ -38,12 +108,12 @@ AliMevSimConfig::AliMevSimConfig(Int_t modelType) {
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 AliMevSimConfig::~AliMevSimConfig() {
+//dtor
 }
 
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 void AliMevSimConfig::Init() {
-
   // Default Values
 
   fModelType = 1;
@@ -63,8 +133,8 @@ void AliMevSimConfig::Init() {
 //////////////////////////////////////////////////////////////////////////////////////////////////
  
 void AliMevSimConfig::SetModelType(Int_t modelType) {
-
-  if (modelType < 0 || modelType > kMAX_MODEL)
+//Sets type of the model
+  if (modelType < 0 || modelType > fgkMAX_MODEL)
     Error("SetModelType","Wrog Model Type indentifier (%d)",modelType);
 
   fModelType = modelType;
@@ -73,8 +143,8 @@ void AliMevSimConfig::SetModelType(Int_t modelType) {
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 void AliMevSimConfig::SetRectPlane(Int_t ctrl, Float_t psiRMean, Float_t psiRStDev) {
-
-  if (ctrl < 0 || ctrl > kMAX_CTRL)
+//Sets reaction plane parameters
+  if (ctrl < 0 || ctrl > fgkMAX_CTRL)
     Error("SetReactPlane","Wrong Control Parameter (%d)", ctrl);
 
   fReacPlaneCntrl = ctrl;
@@ -85,7 +155,7 @@ void AliMevSimConfig::SetRectPlane(Int_t ctrl, Float_t psiRMean, Float_t psiRStD
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 void AliMevSimConfig::SetMultFac(Float_t mean, Float_t stDev) {
-  
+  //Sets multiplicity mean and variance
   fMultFacMean = mean;
   fMultFacStDev = stDev;
 }
@@ -94,7 +164,7 @@ void AliMevSimConfig::SetMultFac(Float_t mean, Float_t stDev) {
 
 void AliMevSimConfig::SetStDev(Float_t mult, Float_t temp, Float_t sigma,
   Float_t expVel, Float_t psiR, Float_t Vn, Float_t multFac) {
-
+//sets Dev parameters (whatever Dev is)
   fNStDevMult = mult;
   fNStDevTemp = temp;
   fNStDevSigma = sigma;
@@ -102,12 +172,26 @@ void AliMevSimConfig::SetStDev(Float_t mult, Float_t temp, Float_t sigma,
   fNStdDevPSIr = psiR;
   fNStDevVn = Vn;
   fNStDevMultFac =multFac;
+
+}
+void AliMevSimConfig::GetStDev(Float_t& mult, Float_t& temp, Float_t& sigma,
+                Float_t& expVel, Float_t& psiR, Float_t& Vn, Float_t& multFac) const
+{
+ //returns dev parameters
+   mult  = fNStDevMult;
+   temp  = fNStDevTemp;
+   sigma  = fNStDevSigma;
+   expVel  = fNStDevExpVel;
+   psiR  = fNStdDevPSIr;
+   Vn  = fNStDevVn;
+   multFac  = fNStDevMultFac;
 }
 
 //////////////////////////////////////////////////////////////////////////////////////////////////
 
 void AliMevSimConfig::SetGrid(Int_t integr, Int_t scan) {
-
+//Sets grid 
   fNIntegPts = integr;
   fNScanPts = scan;
 }