ATLAS Offline Software
TFCSParametrizationEbinChain.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3 */
4 
10 #include <iostream>
11 
12 //=============================================
13 //======= TFCSParametrizationEbinChain =========
14 //=============================================
15 
17  TFCSSimulationState &simulstate, const TFCSTruthState *,
18  const TFCSExtrapolationState *) const {
19  return std::string(Form("Ebin=%d", simulstate.Ebin()));
20 }
21 
23  TFCSSimulationState *simulstate, const TFCSTruthState *truth,
26  if (!simulstate)
27  simulstate = new TFCSSimulationState();
28  if (!truth)
29  truth = new TFCSTruthState();
30  if (!extrapol)
32 
33  TFCSParametrizationEbinChain chain("chain", "chain");
34  chain.setLevel(MSG::DEBUG);
35 
37  param = new TFCSParametrization("A begin all", "A begin all");
38  param->setLevel(MSG::DEBUG);
39  chain.push_before_first_bin(param);
40  param = new TFCSParametrization("A end all", "A end all");
41  param->setLevel(MSG::DEBUG);
42  chain.push_back(param);
43 
44  for (int i = 0; i < 3; ++i) {
46  new TFCSLateralShapeParametrization(Form("A%d", i), Form("A %d", i));
47  param->setLevel(MSG::DEBUG);
48  param->set_Ekin_bin(i);
49  chain.push_back_in_bin(param, i);
50  }
51 
52  for (int i = 3; i > 0; --i) {
54  new TFCSLateralShapeParametrization(Form("B%d", i), Form("B %d", i));
55  param->setLevel(MSG::DEBUG);
56  param->set_Ekin_bin(i);
57  chain.push_back_in_bin(param, i);
58  }
59  param = new TFCSParametrization("B end all", "B end all");
60  param->setLevel(MSG::DEBUG);
61  chain.push_back(param);
62  param = new TFCSParametrization("B begin all", "B begin all");
63  param->setLevel(MSG::DEBUG);
64  chain.push_before_first_bin(param);
65 
66  ATH_MSG_NOCLASS(logger, "==== Chain setup ====");
67  chain.Print();
68  ATH_MSG_NOCLASS(logger, "==== Simulate with Ebin=0 ====");
69  simulstate->set_Ebin(0);
70  chain.simulate(*simulstate, truth, extrapol);
71  ATH_MSG_NOCLASS(logger, "==== Simulate with Ebin=1 ====");
72  simulstate->set_Ebin(1);
73  chain.simulate(*simulstate, truth, extrapol);
74  ATH_MSG_NOCLASS(logger, "==== Simulate with Ebin=2 ====");
75  simulstate->set_Ebin(2);
76  chain.simulate(*simulstate, truth, extrapol);
77  ATH_MSG_NOCLASS(logger, "===================================" << std::endl);
78 }
ISF_FCS::MLogging
Cut down AthMessaging.
Definition: MLogging.h:176
TFCSParametrizationEbinChain
Definition: TFCSParametrizationEbinChain.h:11
TFCSParametrizationEbinChain.h
TFCSExtrapolationState
Definition: TFCSExtrapolationState.h:13
RunActsMaterialValidation.extrapol
extrapol
Definition: RunActsMaterialValidation.py:90
TFCSParametrizationBase
Definition: TFCSParametrizationBase.h:46
TFCSSimulationState::set_Ebin
void set_Ebin(int bin)
Definition: TFCSSimulationState.h:47
lumiFormat.i
int i
Definition: lumiFormat.py:92
TFCSSimulationState::Ebin
int Ebin() const
Definition: TFCSSimulationState.h:45
TFCSParametrizationChain::chain
const Chain_t & chain() const
Definition: TFCSParametrizationChain.h:53
TFCSLateralShapeParametrization::set_Ekin_bin
void set_Ekin_bin(int bin)
Definition: TFCSLateralShapeParametrization.cxx:17
TFCSParametrization::TFCSParametrization
TFCSParametrization(const char *name=nullptr, const char *title=nullptr)
Definition: TFCSParametrization.cxx:12
TFCSParametrizationEbinChain::unit_test
static void unit_test(TFCSSimulationState *simulstate=nullptr, const TFCSTruthState *truth=nullptr, const TFCSExtrapolationState *extrapol=nullptr)
Definition: TFCSParametrizationEbinChain.cxx:22
TFCSLateralShapeParametrization.h
ISF_FCS::MLogging::setLevel
virtual void setLevel(MSG::Level lvl)
Update outputlevel.
Definition: MLogging.cxx:105
TFCSParametrizationEbinChain::get_variable_text
virtual const std::string get_variable_text(TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const override
Definition: TFCSParametrizationEbinChain.cxx:16
TFCSTruthState.h
ATH_MSG_NOCLASS
#define ATH_MSG_NOCLASS(logger_name, x)
Definition: MLogging.h:52
TFCSExtrapolationState.h
DEBUG
#define DEBUG
Definition: page_access.h:11
TFCSSimulationState.h
TFCSLateralShapeParametrization
Definition: TFCSLateralShapeParametrization.h:10
TFCSTruthState
Definition: TFCSTruthState.h:13
TFCSSimulationState
Definition: TFCSSimulationState.h:32
python.iconfTool.gui.pad.logger
logger
Definition: pad.py:14