21 m_guessValHist(nullptr),
22 m_numberOfFieldIsOnEstimates(0),
23 m_numberOfFieldEstimates(0),
24 m_updateFieldEstimate(
true),
26 m_guessValHist =
new TH1F(
"FieldEstimations",
"Field estimations from tracks and muons", 200, -4.5, 4.5);
44 return TEveVector(0, 0, field);
46 if (
m_simpleModel || (
R > 461.0 &&
R < 490.5) || (
R > 534.5 &&
R < 597.5) || (
R > 637.0 &&
R < 700.0))
47 return TEveVector(0, 0, -field / 3.8 * 1.2);
53 return TEveVector(0, 0, field);
55 return TEveVector(
x /
R * field / 3.8 * 2.0,
y /
R * field / 3.8 * 2.0, 0);
57 return TEveVector(-
x /
R * field / 3.8 * 2.0, -
y /
R * field / 3.8 * 2.0, 0);
63 return TEveVector(
x /
R * field / 3.8 * 2.0,
y /
R * field / 3.8 * 2.0, 0);
65 return TEveVector(-
x /
R * field / 3.8 * 2.0, -
y /
R * field / 3.8 * 2.0, 0);
68 return TEveVector(0, 0, 0);
145 const static float currentToField = 3.8 / 18160;
146 bool available =
false;
167 event->getByLabel(
dcsTag, dcsStatus);
169 if (dcsStatus.
isValid() && !dcsStatus->empty()) {
171 for (std::vector<DcsStatus>::const_iterator
i = dcsStatus->begin();
i < dcsStatus->end(); ++
i)
172 sum += (*i).magnetCurrent();
175 m_eventField = currentToField * sum / dcsStatus->size();