70 TH3D* histbx= (TH3D*)
fieldmap->Get(
"Bx");
71 TH3D* histby= (TH3D*)
fieldmap->Get(
"By");
72 TH3D* histbz= (TH3D*)
fieldmap->Get(
"Bz");
73 xmin = histbx->GetXaxis()->GetXmin();
74 xmax = histbx->GetXaxis()->GetXmax();
75 ymin = histbx->GetYaxis()->GetXmin();
76 ymax = histbx->GetYaxis()->GetXmax();
77 zmin = histbx->GetZaxis()->GetXmin();
78 zmax = histbx->GetZaxis()->GetXmax();
104 std::cout<<
"ShipGoliathField::getpos: GetCurrentNavigator volname "<<volname<<std::endl;
107 nav = gGeoManager->GetCurrentNavigator();}
108 else { std::cout<<
"No geomanager"<<std::endl;}
109 std::cout<<
"ShipGoliathField::getpos: cd to volume "<<volname<<std::endl;
110 Bool_t rc = nav->cd(volname);
112 cout <<
"ShipGoliathfield::getpos, TGeoNavigator failed "<<volname<<endl;
115 std::cout<<
"ShipGoliathField::getpos GetCurrentNode"<<std::endl;
116 TGeoNode* W = nav->GetCurrentNode();
117 TGeoBBox* S =
dynamic_cast<TGeoBBox*
>(W->GetVolume()->GetShape());
118 Double_t top[3] = {S->GetDX(),S->GetDY(),S->GetDZ()};
119 Double_t bot[3] = {-S->GetDX(),-S->GetDY(),-S->GetDZ()};
120 Double_t Gtop[3],Gbot[3];
121 nav->LocalToMaster(top, Gtop);
122 nav->LocalToMaster(bot, Gbot);
123 vtop.SetXYZ(Gtop[0],Gtop[1],Gtop[2]);
124 vbot.SetXYZ(Gbot[0],Gbot[1],Gbot[2]);
144 Int_t binx = hbx->GetXaxis()->FindBin(x);
145 Int_t biny = hbx->GetYaxis()->FindBin(y);
146 Int_t binz = hbx->GetZaxis()->FindBin(z - 350.75);
147 bx=hbx->GetBinContent(binx,biny,binz)*
tesla;
163 Int_t binx = hby->GetXaxis()->FindBin(x);
164 Int_t biny = hby->GetYaxis()->FindBin(y);
165 Int_t binz = hby->GetZaxis()->FindBin(z- 350.75);
166 by=hby->GetBinContent(binx,biny,binz)*
tesla;
183 Int_t binx = hbz->GetXaxis()->FindBin(x);
184 Int_t biny = hbz->GetYaxis()->FindBin(y);
185 Int_t binz = hbz->GetZaxis()->FindBin(z- 350.75);
186 bz=hbz->GetBinContent(binx,biny,binz)*
tesla;