Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SurfaceFinder.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file SurfaceFinder.h
1 /*******************************************************************************
2  * Copyright (c) The JETSCAPE Collaboration, 2018
3  *
4  * Modular, task-based framework for simulating all aspects of heavy-ion collisions
5  *
6  * For the list of contributors see AUTHORS.
7  *
8  * Report issues at https://github.com/JETSCAPE/JETSCAPE/issues
9  *
10  * or via email to bugs.jetscape@gmail.com
11  *
12  * Distributed under the GNU General Public License 3.0 (GPLv3 or later).
13  * See COPYING for details.
14  ******************************************************************************/
15 // This is a general basic class for a hyper-surface finder
16 
17 #ifndef SURFACEFINDER_H_
18 #define SURFACEFINDER_H_
19 
20 #include <vector>
21 
22 #include "RealType.h"
23 #include "SurfaceCellInfo.h"
24 #include "FluidEvolutionHistory.h"
25 
26 namespace Jetscape {
27 
29 private:
33 
34  std::vector<SurfaceCellInfo> surface_cell_list;
35 
36 public:
37  SurfaceFinder(const Jetscape::real T_in, const EvolutionHistory &bulk_data);
39 
41 
42  int get_number_of_surface_cells() const { return (surface_cell_list.size()); }
44  return (surface_cell_list[idx]);
45  }
46  std::vector<SurfaceCellInfo> get_surface_cells_vector() const {
47  return (surface_cell_list);
48  }
49 
52  Jetscape::real dx, Jetscape::real dy, double ***cube);
54 
59  double ****cube);
61 
66  const FluidCellInfo fluid_cell);
67 };
68 
69 } // namespace Jetscape
70 
71 #endif // SURFACEFINDER_H_