SND@LHC Software
Loading...
Searching...
No Matches
GFRaveMagneticField.cc
Go to the documentation of this file.
1/* Copyright 2008-2010, Technische Universitaet Muenchen,
2 Authors: Christian Hoeppner & Sebastian Neubert & Johannes Rauch
3
4 This file is part of GENFIT.
5
6 GENFIT is free software: you can redistribute it and/or modify
7 it under the terms of the GNU Lesser General Public License as published
8 by the Free Software Foundation, either version 3 of the License, or
9 (at your option) any later version.
10
11 GENFIT is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU Lesser General Public License for more details.
15
16 You should have received a copy of the GNU Lesser General Public License
17 along with GENFIT. If not, see <http://www.gnu.org/licenses/>.
18*/
19
20
21#include "GFRaveMagneticField.h"
22#include <FieldManager.h>
23
24#include <iostream>
25
26
27namespace genfit {
28
29GFRaveMagneticField *
31 return new GFRaveMagneticField(*this);
32}
33
34
35rave::Vector3D
36GFRaveMagneticField::inTesla ( const rave::Point3D & position) const
37{
38 TVector3 pos(position.x(), position.y(), position.z());
39
40 TVector3 B = FieldManager::getInstance()->getFieldVal(pos); // magnetic field in kGauss
41 B *= 1.E-1;
42
43 return rave::Vector3D (B.X(), B.Y(), B.Z());
44}
45
46
47} /* End of namespace genfit */
TVector3 getFieldVal(const TVector3 &position)
This does NOT use the cache!
static FieldManager * getInstance()
Get singleton instance.
virtual GFRaveMagneticField * copy() const
virtual rave::Vector3D inTesla(const rave::Point3D &) const
Matrix inversion tools.
Definition AbsBField.h:29