Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Hydroinfo_MUSIC.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Hydroinfo_MUSIC.h
1 // Hydroinfo_MUSIC.h is a part of the MARTINI event generator.
2 // Copyright (C) 2009 Bjoern Schenke.
3 // MARTINI is licenced under the GNU GPL version 2, see COPYING for details.
4 // Please respect the MCnet Guidelines, see GUIDELINES for details.
5 
6 // This file contains routines to read in hydro data from files and functions
7 // that return interpolated data at a given space-time point
8 
9 #ifndef SRC_HYDROINFO_MUSIC_H_
10 #define SRC_HYDROINFO_MUSIC_H_
11 
12 #include <vector>
13 #include <string>
14 #include "fluidCell.h"
15 
17  private:
18  double hbarC;
19  double hydroTau0; // tau_0 in the hydro data files
20  double hydroTauMax; // tau_max in the hydro data files
21  double hydroDtau; // step dtau in fm/c in the hydro data files
22  double hydroXmax; // maximum x in fm in the hydro data files
23  // [-xmax, +xmax] for both x and y
24  double hydro_eta_max; // maximum z in fm in the hydro data files
25  // [-zmax, +zmax] for 3D hydro
26  double hydroDx; // step dx in fm in the hydro data files
27  double hydroDeta; // step dz in fm in the hydro data files in
28  // the z-direction for 3D hydro
29 
31 
32  int hydroWhichHydro; // choose a hydro evolution model to use
34 
36 
37  int verbose_;
43 
48 
49  std::vector<fluidCell_2D> lattice_2D; // array to store hydro information
50  std::vector<fluidCell_3D> lattice_3D; // array to store hydro information
51  std::vector<fluidCell_3D_ideal> lattice_3D_ideal;
52  std::vector<int> idx_map_;
53 
54  public:
55  Hydroinfo_MUSIC(); // constructor
56  ~Hydroinfo_MUSIC(); // destructor
57 
58  void clean_hydro_event();
60  double get_hydro_tau_max() {return(hydroTauMax);}
61  double get_hydro_tau0() {return(hydroTau0);}
62  double get_hydro_dtau() {return(hydroDtau);}
63  double get_hydro_dx() {return(hydroDx);}
64  double get_hydro_deta() {return(hydroDeta);}
65  double get_hydro_eta_max() {return(hydro_eta_max);}
66  double get_hydro_x_max() {return(hydroXmax);}
67  int get_hydro_Nskip_tau() {return(nskip_tau);}
68  int get_hydro_Nskip_x() {return(nskip_x);}
69  int get_hydro_Nskip_eta() {return(nskip_eta);}
71 
72  void readHydroData(int whichHydro, int nskip_tau_in,
73  std::string input_filename_in, std::string hydro_ideal_filename,
75 
76  void getHydroValues(double x, double y, double z, double t,
77  hydrofluidCell *info);
78  void output_temperature_evolution(std::string filename_base);
79  void update_grid_info(double tau0, double tau_max, double dtau,
80  double x_max, double dx, double z_max, double dz);
81 };
82 
83 #endif // SRC_HYDROINFO_MUSIC_H_
84