Ignore:
Timestamp:
01/06/11 16:53:13 (14 years ago)
Author:
tbretz
Message:
Implemented improved handling for the obscuration by the detector.
Location:
trunk/Mars/msimreflector
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Mars/msimreflector/MSimReflector.cc

    r9565 r10090  
    2727//  MSimReflector
    2828//
     29//  fDetectorFrame is a radius in centimeter, defining a disk in the focal
     30//  plane around the focal point, in which photons are absorbed. If
     31//  fDetectorFrame<=0 the virtual HitFrame function of the camera
     32//  geometry container is used instead.
     33//
    2934//  fDetectorMargin is a margin (in mm) which is given to the
    3035//  MGeomCam::HitDetector. It should define a margin around the area
     
    7681    fMirror4(0), /*fRunHeader(0),*/ fEvtHeader(0), fReflector(0),
    7782    fGeomCam(0), fPointing(0), fNameReflector("MReflector"),
    78     fDetectorMargin(0)
     83    fDetectorFrame(0), fDetectorMargin(0)
    7984{
    8085    fName  = name  ? name  : "MSimReflector";
     
    502507
    503508        // Check if the photon has hit the camera housing and holding
    504         if (fGeomCam->HitFrame(p, w))
     509        if (fGeomCam->HitFrame(p, w, fDetectorFrame))
    505510            continue;
    506511
     
    579584{
    580585    Bool_t rc = kFALSE;
     586    if (IsEnvDefined(env, prefix, "DetectorFrame", print))
     587    {
     588        rc = kTRUE;
     589        fDetectorFrame = GetEnvValue(env, prefix, "DetectorFrame", 0);
     590    }
    581591    if (IsEnvDefined(env, prefix, "DetectorMargin", print))
    582592    {
  • trunk/Mars/msimreflector/MSimReflector.h

    r9565 r10090  
    3333    TString fNameReflector;      // Name of the container storing the reflector geometry
    3434
     35    Double_t fDetectorFrame;     // A disk of radius DetectorFrame around the focal point absorbing photons
    3536    Double_t fDetectorMargin;    // A margin around the detector (MGeomCam::HitCamera) in which photons are also stored
    3637
     
    4950    void SetNameReflector(const char *name="MReflector") { fNameReflector = name; }
    5051
    51     void SetDetectorMargin(Double_t m=0) { fDetectorMargin = m; }
     52    void SetDetectorFrame(Double_t cm=0)  { fDetectorFrame  = cm; }
     53    void SetDetectorMargin(Double_t mm=0) { fDetectorMargin = mm; }
    5254
    5355    ClassDef(MSimReflector, 0) // Task to calculate reflection on a mirror
Note: See TracChangeset for help on using the changeset viewer.