CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GsfCombinedMaterialEffectsUpdator.cc
Go to the documentation of this file.
2 #include<cassert>
3 
4 #include<iostream>
5 
6 GsfCombinedMaterialEffectsUpdator::GsfCombinedMaterialEffectsUpdator(GsfMaterialEffectsUpdator& msUpdator,
7  GsfMaterialEffectsUpdator& elUpdator) :
8  GsfMaterialEffectsUpdator(msUpdator.mass(),msUpdator.size()*elUpdator.size()),
9  theMSUpdator(msUpdator.clone()),
10  theELUpdator(elUpdator.clone()) {}
11 
12 //
13 // Computation: combine updates on momentum and cov. matrix from the multiple
14 // scattering and energy loss updators and store them in private data members
15 //
17  const PropagationDirection propDir, Effect effects[]) const
18 {
19  Effect msEffects[theMSUpdator->size()];
20  theMSUpdator->compute(TSoS,propDir,msEffects);
21  Effect elEffects[theELUpdator->size()];
22  theELUpdator->compute(TSoS,propDir,elEffects);
23 
24  //
25  // combine the two multi-updates
26  //
27  uint32_t k=0;
28  for ( auto const & mse : msEffects )
29  for ( auto const & ele : elEffects)
30  effects[k++].combine(mse,ele);
31  assert(k==size());
32 }
33 
PropagationDirection
int k[5][pyjets_maxn]
tuple clone
Definition: statics.py:58
tuple size
Write out results.