Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
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
28
class
SurfaceFinder
{
29
private
:
30
Jetscape::real
T_cut
;
31
const
EvolutionHistory
&
bulk_info
;
32
bool
boost_invariant
;
33
34
std::vector<SurfaceCellInfo>
surface_cell_list
;
35
36
public
:
37
SurfaceFinder
(
const
Jetscape::real
T_in,
const
EvolutionHistory
&bulk_data);
38
~SurfaceFinder
();
39
40
void
Find_full_hypersurface
();
41
42
int
get_number_of_surface_cells
()
const
{
return
(
surface_cell_list
.size()); }
43
SurfaceCellInfo
get_surface_cell_with_idx
(
int
idx
)
const
{
44
return
(
surface_cell_list
[idx]);
45
}
46
std::vector<SurfaceCellInfo>
get_surface_cells_vector
()
const
{
47
return
(
surface_cell_list
);
48
}
49
50
bool
check_intersect_3D
(
Jetscape::real
tau
,
Jetscape::real
x
,
51
Jetscape::real
y
,
Jetscape::real
dt,
52
Jetscape::real
dx,
Jetscape::real
dy
,
double
***cube);
53
void
Find_full_hypersurface_3D
();
54
55
bool
check_intersect_4D
(
Jetscape::real
tau
,
Jetscape::real
x
,
56
Jetscape::real
y
,
Jetscape::real
eta
,
57
Jetscape::real
dt,
Jetscape::real
dx,
58
Jetscape::real
dy
,
Jetscape::real
deta,
59
double
****cube);
60
void
Find_full_hypersurface_4D
();
61
62
SurfaceCellInfo
PrepareASurfaceCell
(
Jetscape::real
tau
,
Jetscape::real
x
,
63
Jetscape::real
y
,
Jetscape::real
eta
,
64
Jetscape::real
da0,
Jetscape::real
da1,
65
Jetscape::real
da2,
Jetscape::real
da3,
66
const
FluidCellInfo
fluid_cell);
67
};
68
69
}
// namespace Jetscape
70
71
#endif // SURFACEFINDER_H_
JETSCAPE
blob
main
src
framework
SurfaceFinder.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:24
using
1.8.2 with
sPHENIX GitHub integration