BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
__w
bdsim
bdsim
include
BDSOutputROOTEventAperture.hh
1
/*
2
Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3
University of London 2001 - 2024.
4
5
This file is part of BDSIM.
6
7
BDSIM is free software: you can redistribute it and/or modify
8
it under the terms of the GNU General Public License as published
9
by the Free Software Foundation version 3 of the License.
10
11
BDSIM is distributed in the hope that it will be useful, but
12
WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
You should have received a copy of the GNU General Public License
17
along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
18
*/
19
#ifndef BDSOUTPUTROOTEVENTAPERTURE_H
20
#define BDSOUTPUTROOTEVENTAPERTURE_H
21
22
#ifndef __ROOTBUILD__
23
#include "G4Types.hh"
24
class
BDSHitApertureImpact
;
25
#endif
26
27
#include "TObject.h"
28
29
#include <vector>
30
31
class
BDSOutputROOTParticleData
;
32
39
class
BDSOutputROOTEventAperture
:
public
TObject
40
{
41
public
:
42
int
n
= 0;
43
std::vector<float>
energy
;
44
std::vector<double>
S
;
45
std::vector<float>
weight
;
46
std::vector<bool> isPrimary;
47
std::vector<bool>
firstPrimaryImpact
;
48
std::vector<int>
partID
;
49
std::vector<int>
turn
;
50
std::vector<float> x;
51
std::vector<float> y;
52
std::vector<float> xp;
53
std::vector<float> yp;
54
std::vector<float>
T
;
55
std::vector<float>
kineticEnergy
;
56
std::vector<bool> isIon;
57
std::vector<int> ionA;
58
std::vector<int> ionZ;
59
std::vector<int> nElectrons;
60
61
std::vector<int>
trackID
;
62
std::vector<int>
parentID
;
63
std::vector<int>
modelID
;
64
65
BDSOutputROOTEventAperture
();
66
virtual
~BDSOutputROOTEventAperture
();
67
68
#ifndef __ROOTBUILD__
69
void
Fill(
const
BDSHitApertureImpact
* hit,
70
G4bool isPrimaryFirstImpact);
71
#endif
72
void
Fill(
const
BDSOutputROOTEventAperture
* other);
73
virtual
void
Flush(){
FlushLocal
();}
74
77
void
FlushLocal
();
78
79
static
BDSOutputROOTParticleData
* particleTable;
80
81
ClassDef(
BDSOutputROOTEventAperture
,1);
82
};
83
84
#endif
BDSHitApertureImpact
Snapshot of information for particle passing through a collimator.
Definition
BDSHitApertureImpact.hh:37
BDSOutputROOTEventAperture
Data stored for energy deposition hits per event.
Definition
BDSOutputROOTEventAperture.hh:40
BDSOutputROOTEventAperture::kineticEnergy
std::vector< float > kineticEnergy
Kinetic energy in GeV at pre step point.
Definition
BDSOutputROOTEventAperture.hh:55
BDSOutputROOTEventAperture::parentID
std::vector< int > parentID
ParentID that created the deposit.
Definition
BDSOutputROOTEventAperture.hh:62
BDSOutputROOTEventAperture::turn
std::vector< int > turn
Turn number.
Definition
BDSOutputROOTEventAperture.hh:49
BDSOutputROOTEventAperture::energy
std::vector< float > energy
Total energy of particle.
Definition
BDSOutputROOTEventAperture.hh:43
BDSOutputROOTEventAperture::trackID
std::vector< int > trackID
TrackID that created the deposit.
Definition
BDSOutputROOTEventAperture.hh:61
BDSOutputROOTEventAperture::firstPrimaryImpact
std::vector< bool > firstPrimaryImpact
Whether the first time the primary is passing through.
Definition
BDSOutputROOTEventAperture.hh:47
BDSOutputROOTEventAperture::modelID
std::vector< int > modelID
Geometry model index.
Definition
BDSOutputROOTEventAperture.hh:63
BDSOutputROOTEventAperture::FlushLocal
void FlushLocal()
Definition
BDSOutputROOTEventAperture.cc:113
BDSOutputROOTEventAperture::weight
std::vector< float > weight
Weight associated with loss.
Definition
BDSOutputROOTEventAperture.hh:45
BDSOutputROOTEventAperture::T
std::vector< float > T
Global time (time since beginning of event).
Definition
BDSOutputROOTEventAperture.hh:54
BDSOutputROOTEventAperture::n
int n
Number of entries.
Definition
BDSOutputROOTEventAperture.hh:42
BDSOutputROOTEventAperture::S
std::vector< double > S
Global curvilinear S coordinate.
Definition
BDSOutputROOTEventAperture.hh:44
BDSOutputROOTEventAperture::partID
std::vector< int > partID
ParticleID that create the deposit.
Definition
BDSOutputROOTEventAperture.hh:48
BDSOutputROOTParticleData
Geant4 particle data for particles used in simulation.
Definition
BDSOutputROOTParticleData.hh:41
Generated on Sat Oct 18 2025 18:31:04 for BDSIM by
1.9.8