BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
Loading...
Searching...
No Matches
BDSFieldQueryInfo.cc
1/*
2Beam Delivery Simulation (BDSIM) Copyright (C) Royal Holloway,
3University of London 2001 - 2023.
4
5This file is part of BDSIM.
6
7BDSIM is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published
9by the Free Software Foundation version 3 of the License.
10
11BDSIM is distributed in the hope that it will be useful, but
12WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with BDSIM. If not, see <http://www.gnu.org/licenses/>.
18*/
19#include "BDSFieldQueryInfo.hh"
20
22 const G4String& outfileMagneticIn,
23 const G4String& outfileElectricIn,
24 G4bool queryMagneticIn,
25 G4bool queryElectricIn,
26 QueryDimensionInfo xInfoIn,
27 QueryDimensionInfo yInfoIn,
28 QueryDimensionInfo zInfoIn,
29 QueryDimensionInfo tInfoIn,
30 const G4AffineTransform& globalTransformIn,
31 G4bool overwriteExistingFilesIn,
32 const G4String& fieldObjectIn,
33 G4bool printTransformIn,
34 G4bool checkParametersIn,
35 G4bool drawArrowsIn,
36 G4bool drawZeroValuePointsIn,
37 G4bool drawBoxesIn,
38 G4double boxAlphaIn):
39 name(nameIn),
40 outfileMagnetic(outfileMagneticIn),
41 outfileElectric(outfileElectricIn),
42 queryMagnetic(queryMagneticIn),
43 queryElectric(queryElectricIn),
44 xInfo(xInfoIn),
45 yInfo(yInfoIn),
46 zInfo(zInfoIn),
47 tInfo(tInfoIn),
48 globalTransform(globalTransformIn),
49 overwriteExistingFiles(overwriteExistingFilesIn),
50 printTransform(printTransformIn),
51 fieldObject(fieldObjectIn),
52 checkParameters(checkParametersIn),
53 drawArrows(drawArrowsIn),
54 drawZeroValuePoints(drawZeroValuePointsIn),
55 drawBoxes(drawBoxesIn),
56 boxAlpha(boxAlphaIn)
57{;}
58
60 const G4String& outfileMagneticIn,
61 const G4String& outfileElectricIn,
62 G4bool queryMagneticIn,
63 G4bool queryElectricIn,
64 const std::vector<BDSFourVector<G4double>>& pointsToQueryIn,
65 const std::vector<G4String>& pointsColumnNamesIn,
66 G4bool overwriteExistingFilesIn,
67 const G4String& fieldObjectIn,
68 G4bool checkParametersIn,
69 G4bool drawArrowsIn,
70 G4bool drawZeroValuePointsIn,
71 G4bool drawBoxesIn,
72 G4double boxAlphaIn):
73 name(nameIn),
74 outfileMagnetic(outfileMagneticIn),
75 outfileElectric(outfileElectricIn),
76 queryMagnetic(queryMagneticIn),
77 queryElectric(queryElectricIn),
78 pointsToQuery(pointsToQueryIn),
79 pointsColumnNames(pointsColumnNamesIn),
80 overwriteExistingFiles(overwriteExistingFilesIn),
81 printTransform(false),
82 fieldObject(fieldObjectIn),
83 checkParameters(checkParametersIn),
84 drawArrows(drawArrowsIn),
85 drawZeroValuePoints(drawZeroValuePointsIn),
86 drawBoxes(drawBoxesIn),
87 boxAlpha(boxAlphaIn)
88{;}
89
90BDSFieldQueryInfo::~BDSFieldQueryInfo()
91{;}
BDSFieldQueryInfo(const G4String &nameIn, const G4String &outfileMagneticIn, const G4String &outfileElectricIn, G4bool queryMagneticIn, G4bool queryElectricIn, QueryDimensionInfo xInfoIn, QueryDimensionInfo yInfoIn, QueryDimensionInfo zInfoIn, QueryDimensionInfo tInfoIn, const G4AffineTransform &globalTransformIn=G4AffineTransform(), G4bool overwriteExistingFilesIn=false, const G4String &fieldObjectIn="", G4bool printTransformIn=false, G4bool checkParametersIn=true, G4bool drawArrowsIn=true, G4bool drawZeroValuePointsIn=true, G4bool drawBoxesIn=true, G4double boxAlphaIn=0.2)
Usual constructor with number of points to query in each dimension.
A simple templated four vector class.