ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
PHG4Utils.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHG4Utils.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef G4MAIN_PHG4UTILS_H
4
#define G4MAIN_PHG4UTILS_H
5
6
#include <string>
7
#include <utility>
// for pair
8
9
class
G4VisAttributes
;
10
11
class
PHG4Utils
12
{
13
public
:
14
static
double
GetLengthForRapidityCoverage
(
const
double
radius
,
const
double
eta
);
15
static
double
GetLengthForRapidityCoverage
(
const
double
radius);
16
static
void
SetPseudoRapidityCoverage
(
const
double
eta);
17
static
void
SetColour
(
G4VisAttributes
*att,
const
std::string &
mat
);
18
static
double
get_theta
(
const
double
eta);
19
static
double
get_eta
(
const
double
theta
);
20
static
std::pair<double, double>
get_etaphi
(
const
double
x
,
const
double
y
,
const
double
z
);
21
static
double
get_eta
(
const
double
radius,
const
double
z);
22
static
std::pair<bool, double>
line_and_rectangle_intersect
(
double
ax
,
double
ay,
double
bx,
double
by,
double
cx,
double
cy,
double
dx
,
double
dy
);
23
static
std::pair<bool, std::pair<double, double>>
lines_intersect
(
double
ax,
double
ay,
double
bx,
double
by,
double
cx,
double
cy,
double
dx,
double
dy);
24
static
double
circle_rectangle_intersection
(
double
x1
,
double
y1
,
double
x2
,
double
y2
,
double
mx
,
double
my
,
double
r
);
25
static
double
sA
(
double
r,
double
x,
double
y);
26
static
std::string
md5sum
(
const
std::string &
filename
);
27
28
private
:
29
static
double
_eta_coverage
;
30
};
31
32
#endif // G4MAIN_PHG4UTILS_H
coresoftware
blob
master
simulation
g4simulation
g4main
PHG4Utils.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:44
using
1.8.2 with
ECCE GitHub integration