Commit f979a437 authored by Lennart Huth's avatar Lennart Huth
Browse files

New parameter added: uinque_cluster_usage to reject tracks with hits alredy used

parent 9569a25d
...@@ -25,6 +25,7 @@ The DUT plane can be excluded from the track finding. ...@@ -25,6 +25,7 @@ The DUT plane can be excluded from the track finding.
* `volume_scattering`: Select if volume scattering will be taken into account - defaults to false * `volume_scattering`: Select if volume scattering will be taken into account - defaults to false
* `volume_radiation_length`: Define the radiation length of the volume around the telescope. Defaults to dry air with a radiation length of`304.2 m` * `volume_radiation_length`: Define the radiation length of the volume around the telescope. Defaults to dry air with a radiation length of`304.2 m`
* `reject_by_roi`: If true, tracks intercepting any detector outside its ROI will be rejected. Defaults to `false`. * `reject_by_roi`: If true, tracks intercepting any detector outside its ROI will be rejected. Defaults to `false`.
* `uinque_cluster_usage`: Only use a cluster for one track - in the case of multiple assignments, the track with the best chi2/ndof is kept. Defaults to `false`
### Plots produced ### Plots produced
......
...@@ -32,6 +32,7 @@ Tracking4D::Tracking4D(Configuration& config, std::vector<std::shared_ptr<Detect ...@@ -32,6 +32,7 @@ Tracking4D::Tracking4D(Configuration& config, std::vector<std::shared_ptr<Detect
config_.setDefault<double>("volume_radiation_length", Units::get<double>(304.2, "m")); config_.setDefault<double>("volume_radiation_length", Units::get<double>(304.2, "m"));
config_.setDefault<bool>("volume_scattering", false); config_.setDefault<bool>("volume_scattering", false);
config_.setDefault<bool>("reject_by_roi", false); config_.setDefault<bool>("reject_by_roi", false);
config_.setDefault<bool>("uinque_cluster_usage", false);
if(config_.count({"time_cut_rel", "time_cut_abs"}) == 0) { if(config_.count({"time_cut_rel", "time_cut_abs"}) == 0) {
config_.setDefault("time_cut_rel", 3.0); config_.setDefault("time_cut_rel", 3.0);
...@@ -62,6 +63,7 @@ Tracking4D::Tracking4D(Configuration& config, std::vector<std::shared_ptr<Detect ...@@ -62,6 +63,7 @@ Tracking4D::Tracking4D(Configuration& config, std::vector<std::shared_ptr<Detect
volume_radiation_length_ = config_.get<double>("volume_radiation_length"); volume_radiation_length_ = config_.get<double>("volume_radiation_length");
use_volume_scatterer_ = config_.get<bool>("volume_scattering"); use_volume_scatterer_ = config_.get<bool>("volume_scattering");
reject_by_ROI_ = config_.get<bool>("reject_by_roi"); reject_by_ROI_ = config_.get<bool>("reject_by_roi");
uinque_cluster_usage_ = config_.get<bool>("uinque_cluster_usage");
// print a warning if volumeScatterer are used as this causes fit failures // print a warning if volumeScatterer are used as this causes fit failures
// that are still not understood // that are still not understood
......
...@@ -74,6 +74,7 @@ namespace corryvreckan { ...@@ -74,6 +74,7 @@ namespace corryvreckan {
bool exclude_DUT_; bool exclude_DUT_;
bool use_volume_scatterer_; bool use_volume_scatterer_;
bool reject_by_ROI_; bool reject_by_ROI_;
bool uinque_cluster_usage_;
std::vector<std::string> require_detectors_; std::vector<std::string> require_detectors_;
std::map<std::shared_ptr<Detector>, double> time_cuts_; std::map<std::shared_ptr<Detector>, double> time_cuts_;
std::map<std::shared_ptr<Detector>, XYVector> spatial_cuts_; std::map<std::shared_ptr<Detector>, XYVector> spatial_cuts_;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment