LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "DBScanAlg.h"
Public Member Functions | |
DBScanAlg (fhicl::ParameterSet const &pset) | |
virtual | ~DBScanAlg () |
void | reconfigure (fhicl::ParameterSet const &p) |
void | InitScan (const std::vector< art::Ptr< recob::Hit > > &allhits, std::set< uint32_t > badChannels, const std::vector< geo::WireID > &wireids=std::vector< geo::WireID >()) |
double | getSimilarity (const std::vector< double > v1, const std::vector< double > v2) |
std::vector< unsigned int > | findNeighbors (unsigned int pid, double threshold, double threshold2) |
void | computeSimilarity () |
void | run_cluster () |
double | getSimilarity2 (const std::vector< double > v1, const std::vector< double > v2) |
void | computeSimilarity2 () |
double | getWidthFactor (const std::vector< double > v1, const std::vector< double > v2) |
void | computeWidthFactor () |
Public Attributes | |
std::vector< std::vector< unsigned int > > | fclusters |
collection of something More... | |
std::vector< std::vector< double > > | fps |
the collection of points we are working on More... | |
std::vector< unsigned int > | fpointId_to_clusterId |
mapping point_id -> clusterId More... | |
std::vector< std::vector< double > > | fsim |
std::vector< std::vector< double > > | fsim2 |
std::vector< std::vector< double > > | fsim3 |
double | fMaxWidth |
RTree | fRTree |
std::vector< dbsPoint > | fRect |
Private Member Functions | |
void | run_dbscan_cluster () |
void | run_FN_cluster () |
void | run_FN_naive_cluster () |
bool | ExpandCluster (unsigned int point, unsigned int clusterID) |
std::set< unsigned int > | RegionQuery (unsigned int point) |
std::vector< unsigned int > | RegionQuery_vector (unsigned int point) |
Private Attributes | |
double | fEps |
double | fEps2 |
unsigned int | fMinPts |
unsigned int | fClusterMethod |
Which clustering method to use. More... | |
unsigned int | fDistanceMetric |
Which distance metric to use. More... | |
std::vector< bool > | fnoise |
std::vector< bool > | fvisited |
std::vector< double > | fWirePitch |
the pitch of the wires in each plane More... | |
std::set< uint32_t > | fBadChannels |
set of bad channels in this detector More... | |
std::vector< uint32_t > | fBadWireSum |
Definition at line 34 of file DBScanAlg.h.
cluster::DBScanAlg::DBScanAlg | ( | fhicl::ParameterSet const & | pset | ) |
Definition at line 260 of file DBScanAlg.cxx.
|
virtual |
Definition at line 266 of file DBScanAlg.cxx.
void cluster::DBScanAlg::computeSimilarity | ( | ) |
Definition at line 489 of file DBScanAlg.cxx.
void cluster::DBScanAlg::computeSimilarity2 | ( | ) |
Definition at line 501 of file DBScanAlg.cxx.
void cluster::DBScanAlg::computeWidthFactor | ( | ) |
Definition at line 513 of file DBScanAlg.cxx.
|
private |
Definition at line 632 of file DBScanAlg.cxx.
References cluster::kNO_CLUSTER, and cluster::kNOISE_CLUSTER.
std::vector< unsigned int > cluster::DBScanAlg::findNeighbors | ( | unsigned int | pid, |
double | threshold, | ||
double | threshold2 | ||
) |
Definition at line 472 of file DBScanAlg.cxx.
double cluster::DBScanAlg::getSimilarity | ( | const std::vector< double > | v1, |
const std::vector< double > | v2 | ||
) |
Definition at line 372 of file DBScanAlg.cxx.
double cluster::DBScanAlg::getSimilarity2 | ( | const std::vector< double > | v1, |
const std::vector< double > | v2 | ||
) |
Definition at line 407 of file DBScanAlg.cxx.
References e.
double cluster::DBScanAlg::getWidthFactor | ( | const std::vector< double > | v1, |
const std::vector< double > | v2 | ||
) |
Definition at line 444 of file DBScanAlg.cxx.
void cluster::DBScanAlg::InitScan | ( | const std::vector< art::Ptr< recob::Hit > > & | allhits, |
std::set< uint32_t > | badChannels, | ||
const std::vector< geo::WireID > & | wireids = std::vector< geo::WireID>() |
||
) |
get 2 first wires and find their spacing (wire_dist)
Definition at line 281 of file DBScanAlg.cxx.
References dbsPoint::bounds(), Visitor::count, detinfo::DetectorProperties::DriftVelocity(), detinfo::DetectorProperties::Efield(), cluster::kNO_CLUSTER, detinfo::DetectorProperties::SamplingRate(), and detinfo::DetectorProperties::Temperature().
Referenced by cluster::DBcluster::produce().
void cluster::DBScanAlg::reconfigure | ( | fhicl::ParameterSet const & | p | ) |
Definition at line 271 of file DBScanAlg.cxx.
References fhicl::ParameterSet::get().
Referenced by cluster::fuzzyClusterAlg::reconfigure(), and cluster::DBcluster::reconfigure().
|
private |
Definition at line 595 of file DBScanAlg.cxx.
References dbsPoint::bounds(), and Visitor::sResult.
|
private |
Definition at line 610 of file DBScanAlg.cxx.
References dbsPoint::bounds(), and Visitor::vResult.
void cluster::DBScanAlg::run_cluster | ( | ) |
Definition at line 530 of file DBScanAlg.cxx.
Referenced by cluster::DBcluster::produce().
|
private |
Definition at line 549 of file DBScanAlg.cxx.
References cluster::kNO_CLUSTER, cluster::kNOISE_CLUSTER, noise(), and dbsPoint::y.
|
private |
Definition at line 681 of file DBScanAlg.cxx.
References cluster::kNO_CLUSTER, noise(), and dbsPoint::y.
|
private |
Definition at line 767 of file DBScanAlg.cxx.
References cluster::kNO_CLUSTER, noise(), and dbsPoint::y.
|
private |
set of bad channels in this detector
Definition at line 88 of file DBScanAlg.h.
|
private |
running total of bad channels. Used for fast intervening dead wire counting ala fBadChannelSum[m]-fBadChannelSum[n].
Definition at line 89 of file DBScanAlg.h.
|
private |
Which clustering method to use.
Definition at line 81 of file DBScanAlg.h.
std::vector<std::vector<unsigned int> > cluster::DBScanAlg::fclusters |
collection of something
Definition at line 60 of file DBScanAlg.h.
Referenced by cluster::DBcluster::produce().
|
private |
Which distance metric to use.
Definition at line 82 of file DBScanAlg.h.
|
private |
Definition at line 76 of file DBScanAlg.h.
|
private |
Definition at line 77 of file DBScanAlg.h.
double cluster::DBScanAlg::fMaxWidth |
Definition at line 66 of file DBScanAlg.h.
|
private |
Definition at line 79 of file DBScanAlg.h.
|
private |
Definition at line 85 of file DBScanAlg.h.
std::vector<unsigned int> cluster::DBScanAlg::fpointId_to_clusterId |
mapping point_id -> clusterId
Definition at line 62 of file DBScanAlg.h.
Referenced by cluster::DBcluster::produce().
std::vector<std::vector<double> > cluster::DBScanAlg::fps |
the collection of points we are working on
Definition at line 61 of file DBScanAlg.h.
Referenced by cluster::DBcluster::produce().
std::vector< dbsPoint > cluster::DBScanAlg::fRect |
Definition at line 69 of file DBScanAlg.h.
RTree cluster::DBScanAlg::fRTree |
Definition at line 68 of file DBScanAlg.h.
std::vector<std::vector<double> > cluster::DBScanAlg::fsim |
Definition at line 63 of file DBScanAlg.h.
std::vector<std::vector<double> > cluster::DBScanAlg::fsim2 |
Definition at line 64 of file DBScanAlg.h.
std::vector<std::vector<double> > cluster::DBScanAlg::fsim3 |
Definition at line 65 of file DBScanAlg.h.
|
private |
Definition at line 86 of file DBScanAlg.h.
|
private |
the pitch of the wires in each plane
Definition at line 87 of file DBScanAlg.h.