1 #ifndef MagneticFieldGrid_H
2 #define MagneticFieldGrid_H
37 for (
int i = 0;
i < 3; ++
i) {
38 NumberOfPoints[
i] = 0;
40 for (
int i = 0;
i < 3; ++
i) {
41 ReferencePoint[
i] = 0.;
43 for (
int i = 0;
i < 3; ++
i) {
44 BasicDistance0[
i] = 0.;
46 for (
int i = 0;
i < 3; ++
i) {
47 for (
int j = 0;
j < 3; ++
j) {
48 BasicDistance1[
i][
j] = 0.;
51 for (
int i = 0;
i < 3; ++
i) {
52 for (
int j = 0;
j < 3; ++
j) {
53 BasicDistance2[
i][
j] = 0.;
56 for (
int i = 0;
i < 4; ++
i) {
57 RParAsFunOfPhi[
i] = 0.;
59 for (
int i = 0;
i < 3; ++
i) {
60 EasyCoordinate[
i] =
false;
93 void putB3(
float Bx,
float By,
float Bz);
103 int NumberOfPoints[3];
104 double ReferencePoint[3];
105 double BasicDistance0[3];
106 double BasicDistance1[3][3];
107 double BasicDistance2[3][3];
108 double RParAsFunOfPhi[4];
109 bool EasyCoordinate[3];
120 void interpolateAtPoint(
double X1,
double X2,
double X3,
float &Bx,
float &By,
float &Bz);
123 void putCoordGetInd(
double X1,
double X2,
double X3,
int &Index1,
int &Index2,
int &Index3);
125 void putIndicesGetB(
int Index1,
int Index2,
int Index3,
float &Bx,
float &By,
float &Bz);
127 void putIndGetCoord(
int Index1,
int Index2,
int Index3,
double &X1,
double &X2,
double &X3);
129 int lineNumber(
int Index1,
int Index2,
int Index3);
std::vector< BVector > FieldValues