19#ifndef BDSFIELDQUERYINFO_H
20#define BDSFIELDQUERYINFO_H
22#include "BDSFourVector.hh"
24#include "G4AffineTransform.hh"
44 n(nIn), min(minIn), max(maxIn)
50 G4double StepSize()
const {
return (max - min)/n;}
55 const G4String& outfileMagneticIn,
56 const G4String& outfileElectricIn,
57 G4bool queryMagneticIn,
58 G4bool queryElectricIn,
59 QueryDimensionInfo xInfoIn,
60 QueryDimensionInfo yInfoIn,
61 QueryDimensionInfo zInfoIn,
62 QueryDimensionInfo tInfoIn,
63 const G4AffineTransform& globalTransformIn = G4AffineTransform(),
64 G4bool overwriteExistingFilesIn =
false,
65 const G4String& fieldObjectIn =
"",
66 G4bool printTransformIn =
false,
67 G4bool checkParametersIn =
true,
68 G4bool drawArrowsIn =
true,
69 G4bool drawZeroValuePointsIn =
true,
70 G4bool drawBoxesIn =
true,
71 G4double boxAlphaIn = 0.2);
75 const G4String& outfileMagneticIn,
76 const G4String& outfileElectricIn,
77 G4bool queryMagneticIn,
78 G4bool queryElectricIn,
80 const std::vector<G4String>& pointsColumnNamesIn,
81 G4bool overwriteExistingFilesIn =
false,
82 const G4String& fieldObjectIn =
"",
83 G4bool checkParametersIn =
true,
84 G4bool drawArrowsIn =
true,
85 G4bool drawZeroValuePointsIn =
true,
86 G4bool drawBoxesIn =
true,
87 G4double boxAlphaIn = 0.2);
91 G4String outfileMagnetic;
92 G4String outfileElectric;
95 QueryDimensionInfo xInfo;
96 QueryDimensionInfo yInfo;
97 QueryDimensionInfo zInfo;
98 QueryDimensionInfo tInfo;
100 std::vector<BDSFourVector<G4double>> pointsToQuery;
101 std::vector<G4String> pointsColumnNames;
103 G4AffineTransform globalTransform;
105 G4bool overwriteExistingFiles;
106 G4bool printTransform;
113 G4bool drawZeroValuePoints;
Holder class for all information required for a field query.
G4bool checkParameters
For internal testing use only.
G4bool SpecificPoints() const
Whether to query a specific set of points.
G4String fieldObject
Optional for use in interpolator.
A simple templated four vector class.
QueryDimensionInfo(G4int nIn, G4double minIn, G4double maxIn)