]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TUHKMgen/UHKM/StrangePotential1.h
Updated object after ALiZDCPreprocessor correction
[u/mrichter/AliRoot.git] / TUHKMgen / UHKM / StrangePotential1.h
CommitLineData
b1c2e580 1#ifndef NAStrangePotential_h
2#define NAStrangePotential_h
3#include "StrangeDensity.h"
4#include "EquationSolver.h"
5/*
6
7 Nikolai Amelin, Ludmila Malinina, Timur Pocheptsov (C) JINR/Dubna
8 amelin@sunhe.jinr.ru, malinina@sunhe.jinr.ru, pocheptsov@sunhe.jinr.ru
9 November. 2, 2005
10
11*/
12
13//This class is used to calculate strange potential from
14//the known initial strange density = 0 at given temperature and baryon potential.
15
16class NAStrangePotential {
17 public:
18 NAStrangePotential(const Double_t initialStrangeDensity) :
19 fStrangeDensity(initialStrangeDensity),
20 fNIteration(100),
21 fTolerance(1.e-8),
22 fNSolverIteration(100),
23 fMinStrangePotential(0.0001*GeV),
24 fMaxStrangePotential(0.9*GeV)
25 {};
26
27 ~NAStrangePotential() {};
28
29 Double_t operator()(const Double_t strangePotential) {
30 return (fStrangeDensity - this->CalculateStrangeDensity(strangePotential))/fStrangeDensity;
31 }
32
33 private:
34 // default constructor is not accesible
35 NAStrangePotential(){};
36
37 public:
38 void SetTemperature(Double_t value) {fTemperature = value;}
39 void SetBaryonPotential(Double_t value) {fBaryonPotential = value;}
40 void SetMinStrangePotential(Double_t value) {fMinStrangePotential = value;}
41 void SetMaxStrangePotential(Double_t value) {fMaxStrangePotential = value;}
42 Double_t CalculateStrangePotential();
43
44 private:
45 //compute hadron system strange density through strange potential
46 Double_t CalculateStrangeDensity(const Double_t strangePotential);
47 Double_t fTemperature;
48 Double_t fBaryonPotential;
49 Double_t fStrangeDensity;
50 Double_t fMinStrangePotential;//initial min value of strange potential
51 Double_t fMaxStrangePotential;//initial max value of strange potential
52 Int_t fNIteration; //to find proper [minStrangePotential, maxStrangePotential] interval
53 Int_t fNSolverIteration; //to find root in [minStrangePotential,maxStrangePotential] interval
54 Double_t fTolerance;//to find root
55 NAStrangeDensity fGc;
56};
57
58#endif