Manual sweep of MR !37385 to master
Updates of SCT_InducedChargeModel and SCT_SurfaceChargeGenerator
SCT_InducedChargeModel
- Rename SCT_InducedChargedModel to SCT_InducedChargeModel.
- Calculate Lorentz angle following SiLorentzAngleSvc.
- Define constructor and call loadICMParameters method in it.
- Change init method to setWaferParameters method and return SCT_InducedChargeModelData.
- SCT_InducedChargeModelData holds wafer dependent data.
- m_EFieldModel exists in both SCT_InducedChargeModel and SCT_InducedChargeModelData because FEM may be switched to FDM if depletion voltage is out of range.
- Make methods const using SCT_InducedChargeModelData.
- As preparation for AthenaMT in release 22
- Add cache of SCT_InducedChargeModelData to avoid the same calculation for every call.
- Change EFiled method to getEField method.
- Change m_PotentialValue to hold multiple sets (FEM and FDM)
- Define getFEMIndex method to get s_VFD0 index and check out of range of s_VFD0.
- Move some funtionalities of loadICMParameters to new setEField method.
- Chage order of EFieldModel enums for efficient memory usage.
- Make msgLvl method const
- Use std::array instead of C array.
- Add more comments.
SCT_SurfaceChargeGenerator
- SCT_SurfaceChargesGenerator::processSiHit calls SCT_InducedChargeModel::setWaferParameters.
- Otherwise correct voltage values cannot be obtained.
- m_depletionVoltage/CLHEP::volt and m_biasVoltage/CLHEP::volt are used instead of m_vdepl and m_bias.
Reco_tf.py --AMI q221
with m_doInducedChargeModel=true
worked. Default value is still false.
- With Athena master 2020-10-25T2101 + MR !37642 (merged)
- With Athena master 2020-10-25T2101 + MR !37642 (merged) +
m_doInducedChargeModel=true
The number of entries is smaller than default one by about 50%. This is not expected and will be investigated. https://its.cern.ch/jira/browse/ATLASSIM-4936 was made.
Tag @mtogawa
Edited by Susumu Oda