Declaration of the operator that performs the reconstruction.
82 const double STANDARD_DEVIATIONS = 3.0;
105 copy(dataL1.begin(), dataL1.end(), back_inserter(dataL0));
107 for (buffer_type::const_iterator i = buffer.begin(); i != buffer.end(); ++i) {
109 if (find_if(dataL1.begin(), dataL1.end(), match_t(*i,
TMaxLocal_ns)) == dataL1.end()) {
110 dataL0.push_back(*i);
114 for (buffer_type::const_iterator
root = dataL1.begin();
root != dataL1.end(); ++
root) {
116 buffer_type data(1, *
root);
120 for (buffer_type::const_iterator i = dataL0.begin(); i != dataL0.end(); ++i) {
122 if((
root->getModuleIdentifier() != i->getModuleIdentifier() ) && matching(*i)){
127 buffer_type::iterator __end1 =
clusterizeWeight(data.begin() + 1, data.end(), match3G);
132 double chi2 = numeric_limits<double>::max();
133 int NDF =
distance(data.begin(), __end1) - JEstimator_t::NUMBER_OF_PARAMETERS;
138 double ymin = numeric_limits<double>::max();
140 buffer_type::iterator __end2 = __end1;
143 JEstimator_t::NUMBER_OF_PARAMETERS; ++
n, --__end2) {
145 sort(data.begin() + 1, __end1, compare);
150 fit(data.begin(), __end2);
158 NDF =
distance(data.begin(), __end2) - JEstimator_t::NUMBER_OF_PARAMETERS;
166 ymin -= STANDARD_DEVIATIONS * STANDARD_DEVIATIONS;
171 const int number_of_outliers =
distance(data.begin(), __end1) - JEstimator_t::NUMBER_OF_PARAMETERS - 1;
173 buffer_type::iterator __end2 = __end1;
175 for (
int n = 0; n <= number_of_outliers; ++
n) {
179 fit(data.begin(), __end2);
182 NDF =
distance(data.begin(), __end2) - JEstimator_t::NUMBER_OF_PARAMETERS;
189 buffer_type::iterator imax = __end2;
191 for (buffer_type::iterator i = data.begin() + 1; i != __end2; ++i) {
201 if (ymax > STANDARD_DEVIATIONS * STANDARD_DEVIATIONS) {
203 swap(*imax, *__end2);
216 out.rbegin()->setW(13, chi2);
217 out.rbegin()->setW(14, N);
JBinder2nd< JHit_t > JBind2nd(const JMatch< JHit_t > &match, const JHit_t &second)
Auxiliary method to create JBinder2nd object.
Linear fit of bright point (position and time) between hits (objects with position and time)...
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
Data structure for vertex fit.
then JPlot1D f $WORKDIR postfit[prefit\] root
Auxiliary class to convert binary JMatch operator and given hit to unary match operator.
double getQuality(const double chi2, const int N, const int NDF)
Get quality of fit.
static struct JTRIGGER::@71 clusterizeWeight
Anonymous struct for weighed clustering of hits.
static const int JSHOWERPREFIT
const JModuleRouter & router
Data structure for L2 parameters.
JFit getFit(const JHistory &history, const JTrack3D &track, const double Q, const int NDF, const double energy=0.0, const int status=0)
Get fit.
Auxiliary class for permutations of L1 hits.
Data structure for set of track fit results.
alias put_queue eval echo n
int getCount(const T &hit)
Get hit count.
void copy(const Head &from, JHead &to)
Copy header from from to to.
Reduced data structure for L1 hit.
double getChi2(const double P)
Get chi2 corresponding to given probability.
Data structure for normalised vector in positive z-direction.
then usage $script[input file[working directory[option]]] nWhere option can be N