Specific implementation of MaterialScan to do Spherical scanning.
More...
#include <MaterialScan.h>
|
| | MaterialScanSpherical (TFile *rootFile, const G4ThreeVector &origin, const ScanParams ¶ms, bool doCosTheta) |
| | Create a Spherical Scan object with the given parameters. More...
|
| |
| bool | createNext (G4ThreeVector &origin, G4ThreeVector &direction) override |
| | Get the origin and direction for the next scan particle. More...
|
| |
|
int | getNRays () const override |
| | Return the number of rays in this scan.
|
| |
|
void | UserSteppingAction (const G4Step *step) override |
| | Record the material budget for each step of the particles.
|
| |
|
std::string | getName () const |
| | Return the name of the scan.
|
| |
|
|
void | getRay (G4ThreeVector &origin, G4ThreeVector &direction) override |
| | Create a ray with the current parameter values according to a spherical distribution.
|
| |
| TH2D * | getHistogram (const std::string &name) |
| | get histogram for a given name, create if needed. More...
|
| |
| void | fillValue (const std::string &name, double value) |
| | Fill the recorded material budget into the corresponding histogram. More...
|
| |
|
bool | checkStep (const G4Step *step) |
| | check for stuck tracks by looking at the step length
|
| |
|
|
G4ThreeVector | m_origin |
| | Origin for the spherical scan.
|
| |
|
bool | m_doCosTheta |
| | Flag to indicate if polar-angular sampling is uniform in cos(theta) rather than theta.
|
| |
|
ScanParams | m_params |
| | Parameters for the scan.
|
| |
|
double | m_curU |
| | Current value of the parametetr u.
|
| |
|
double | m_stepU |
| | Stepsize for the parameter u.
|
| |
|
double | m_curV |
| | Current value of the parametetr v.
|
| |
|
double | m_stepV |
| | Stepsize for the parameter v.
|
| |
|
double | m_curDepth |
| | Tracklength of the current Ray.
|
| |
|
std::map< std::string, std::unique_ptr< TH2D > > | m_regions |
| | Map holding pointers to all created histograms.
|
| |
|
TFile * | m_rootFile |
| | Pointer to the root file for the histograms.
|
| |
|
std::string | m_name |
| | Name of the scan, will be prefixed to all histogram names.
|
| |
|
std::string | m_axisLabel |
| | Labels for the coordinate axes.
|
| |
|
|
int | m_zeroSteps {0} |
| | Count the number of steps with (almost) zero length.
|
| |
|
|
static constexpr double | c_zeroTolerance = 1e-6 |
| | maximum Step length to be considered zero
|
| |
|
static constexpr int | c_maxZeroStepsNudge = 10 |
| | maximum number of consecutive zero steps before nudging the track along
|
| |
|
static constexpr int | c_maxZeroStepsKill = 20 |
| | maximum number of consecutive zero steps before killing the track
|
| |
Specific implementation of MaterialScan to do Spherical scanning.
That is shooting rays from the origin with varying aximuth and polar angle.
Definition at line 167 of file MaterialScan.h.
◆ MaterialScanSpherical()
Create a Spherical Scan object with the given parameters.
- Parameters
-
| rootFile | pointer to the ROOT File containing the histograms |
| origin | Origin for the spherical scan |
| params | Parameters of the scan |
| doCosTheta | |
Definition at line 175 of file MaterialScan.h.
◆ createNext()
| bool createNext |
( |
G4ThreeVector & |
origin, |
|
|
G4ThreeVector & |
direction |
|
) |
| |
|
overridevirtualinherited |
Get the origin and direction for the next scan particle.
- Parameters
-
| [out] | origin | Origin of the next scan particle |
| [out] | direction | Direction of the next scan particle |
- Returns
- false if the scan is finished
Implements MaterialScanBase.
Definition at line 99 of file MaterialScan.cc.
◆ fillValue()
| void fillValue |
( |
const std::string & |
name, |
|
|
double |
value |
|
) |
| |
|
protectedinherited |
Fill the recorded material budget into the corresponding histogram.
- Parameters
-
| name | Name of the histogram |
| value | Value to store |
Definition at line 140 of file MaterialScan.cc.
◆ getHistogram()
| TH2D * getHistogram |
( |
const std::string & |
name | ) |
|
|
protectedinherited |
get histogram for a given name, create if needed.
- Parameters
-
| name | Name of the histogram |
Definition at line 127 of file MaterialScan.cc.
The documentation for this class was generated from the following files: