Linear Collider Forum



Home » Software Tools » Marlin et al » Material DB, Vertex Cryostat
Material DB, Vertex Cryostat [message #2074] Wed, 15 September 2010 02:32
sailer
Messages: 34
Registered: February 2009
Hello Everyone,

We removed the Cryostat around the vertex detector in Mokka.

However when doing the reconstruction the MaterialDB processor is looking for the gear Parameters connected to this cryostat and causes an exception.

In MarlinReco/Tracking/SiliconTracking/src/MaterialDB.cc:

I'm now catching the unknown parameter exception. Is there anything else that should be checked with the changed geometry?
(I guess my if-statement is redundant?)
  try {
    bool useCryostat = false;
    float AlRadius = float(pVXDDet.getDoubleVal("CryostatAlRadius"));
    float AlHalfLength = float(pVXDDet.getDoubleVal("CryostatAlHalfZ"));
    float AlThickness = float(pVXDDet.getDoubleVal("CryostatAlThickness"));
    float AlZEndCap = float(pVXDDet.getDoubleVal("CryostatAlZEndCap"));
    float AlRinEndCap = float(pVXDDet.getDoubleVal("CryostatAlInnerR"));
    float xrad_cryo = 0.1*float(pVXDDet.getDoubleVal("Cryostat_RadLen"));
    float dedx_cryo = 10.0*float(pVXDDet.getDoubleVal("Cryostat_dEdx"));
    useCryostat = true;

    if(useCryostat){ 
      // Al cryostat barrel
      fkddes_.rcmat[Ncmat] = 0.1*(AlRadius+0.5*AlThickness);
      fkddes_.zcmin[Ncmat] = -0.1*AlHalfLength;
      fkddes_.zcmax[Ncmat] = 0.1*AlHalfLength;
      fkddes_.xrlc[Ncmat] = 0.1*AlThickness/xrad_cryo;
      fkddes_.xelosc[Ncmat] = 0.1*AlThickness*dedx_cryo;
      Ncmat++;
      
      // Al cryostat endcaps
      fkddes_.zpmat[Npmat] = -0.1*(AlZEndCap+0.5*AlThickness);
      fkddes_.rpmin[Npmat] = 0.1*AlRinEndCap;
      fkddes_.rpmax[Npmat] = 0.1*(AlRadius+AlThickness);;
      fkddes_.xrlp[Npmat] = 0.1*AlThickness/xrad_cryo;
      fkddes_.xelosp[Npmat] = 0.1*AlThickness*dedx_cryo;
      Npmat++;
      
      fkddes_.zpmat[Npmat] = 0.1*(AlZEndCap+0.5*AlThickness);
      fkddes_.rpmin[Npmat] = 0.1*AlRinEndCap;
      fkddes_.rpmax[Npmat] = 0.1*(AlRadius+AlThickness);;
      fkddes_.xrlp[Npmat] = 0.1*AlThickness/xrad_cryo;
      fkddes_.xelosp[Npmat] = 0.1*AlThickness*dedx_cryo;
      Npmat++;
    }
  }catch( gear::UnknownParameterException& e ){
    std::cout << "  oops - no Vertex Cryo" << std::endl;
  }


Thanks,
André
 
Read Message
Previous Topic:ilcsoft patch release v01-09-02
Next Topic:ilcsoft release v01-09
Goto Forum:
  


Current Time: Wed Dec 19 07:16:36 Pacific Standard Time 2018
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.1.
Copyright ©2001-2010 FUDforum Bulletin Board Software