Commit 9a9e585a authored by Simon Spannagel's avatar Simon Spannagel
Browse files

PixelDetectorModel still check for backside offset though

parent 6ac2f732
Loading
Loading
Loading
Loading
+13 −9
Original line number Diff line number Diff line
@@ -43,12 +43,15 @@ void PixelDetectorModel::validate() {
                implant.getConfiguration(), "size", "implant depth cannot be larger than sensor thickness");
        }

        // Check the offset only for front-side implants, backside implants are allowed to overlap:
        if(implant.getType() == Implant::Type::BACKSIDE) {
            continue;
            // For backside implants, only check that the center of the implant lies within the pixel cell:
            if(std::fabs(implant.getOffset().x()) > pixel_size_.x() / 2 ||
               std::fabs(implant.getOffset().y()) > pixel_size_.y() / 2) {
                throw InvalidValueError(
                    implant.getConfiguration(), "offset", "implant offset outside cell. Reduce implant offset");
            }

        // Offset of the collection diode implant from the pixel center, defaults to zero.
        } else {
            // For frontside implants, check that the implant lies within the pixel cell with its entire size
            if(std::fabs(implant.getOffset().x()) + implant.getSize().x() / 2 > pixel_size_.x() / 2 ||
               std::fabs(implant.getOffset().y()) + implant.getSize().y() / 2 > pixel_size_.y() / 2) {
                throw InvalidValueError(
@@ -56,6 +59,7 @@ void PixelDetectorModel::validate() {
            }
        }
    }
}

/**
 * The definition of inside the sensor is determined by the detector model