LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "Solver.h"
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <set>
#include <iostream>
Go to the source code of this file.
Functions | |
template<class T > | |
T | sqr (T x) |
double | Metric (double q, double p) |
QuadExpr | Metric (double q, QuadExpr p) |
double | Metric (const std::vector< SpaceCharge * > &scs, double alpha) |
double | Metric (const std::vector< CollectionWireHit * > &cwires, double alpha) |
QuadExpr | Metric (const SpaceCharge *sci, const SpaceCharge *scj, double alpha) |
QuadExpr | Metric (const SpaceCharge *sc, double alpha) |
double | SolvePair (CollectionWireHit *cwire, SpaceCharge *sci, SpaceCharge *scj, double alpha) |
void | Iterate (CollectionWireHit *cwire, double alpha) |
void | Iterate (SpaceCharge *sc, double alpha) |
void | Iterate (const std::vector< CollectionWireHit * > &cwires, const std::vector< SpaceCharge * > &orphanSCs, double alpha) |
void Iterate | ( | CollectionWireHit * | cwire, |
double | alpha | ||
) |
Definition at line 263 of file Solver.cxx.
References SpaceCharge::AddCharge(), CollectionWireHit::fCrossings, SolvePair(), and x.
Referenced by Iterate(), and reco3d::SpacePointSolver::Minimize().
void Iterate | ( | SpaceCharge * | sc, |
double | alpha | ||
) |
Definition at line 286 of file Solver.cxx.
References SpaceCharge::AddCharge(), QuadExpr::Eval(), SpaceCharge::fPred, QuadExpr::Linear(), max, Metric(), QuadExpr::Quadratic(), and x.
void Iterate | ( | const std::vector< CollectionWireHit * > & | cwires, |
const std::vector< SpaceCharge * > & | orphanSCs, | ||
double | alpha | ||
) |
double Metric | ( | double | q, |
double | p | ||
) |
Definition at line 71 of file Solver.cxx.
References sqr().
Referenced by Iterate(), Metric(), reco3d::SpacePointSolver::Minimize(), and SolvePair().
Definition at line 77 of file Solver.cxx.
References sqr().
double Metric | ( | const std::vector< SpaceCharge * > & | scs, |
double | alpha | ||
) |
Definition at line 83 of file Solver.cxx.
References Metric(), and sqr().
double Metric | ( | const std::vector< CollectionWireHit * > & | cwires, |
double | alpha | ||
) |
QuadExpr Metric | ( | const SpaceCharge * | sci, |
const SpaceCharge * | scj, | ||
double | alpha | ||
) |
Definition at line 117 of file Solver.cxx.
References InductionWireHit::fCharge, Neighbour::fCoupling, SpaceCharge::fNeighbours, SpaceCharge::fNeiPotential, InductionWireHit::fPred, SpaceCharge::fPred, Neighbour::fSC, SpaceCharge::fWire1, SpaceCharge::fWire2, Metric(), n, sqr(), x, and QuadExpr::X().
QuadExpr Metric | ( | const SpaceCharge * | sc, |
double | alpha | ||
) |
Definition at line 191 of file Solver.cxx.
References InductionWireHit::fCharge, SpaceCharge::fNeiPotential, InductionWireHit::fPred, SpaceCharge::fPred, SpaceCharge::fWire1, SpaceCharge::fWire2, Metric(), sqr(), x, and QuadExpr::X().
double SolvePair | ( | CollectionWireHit * | cwire, |
SpaceCharge * | sci, | ||
SpaceCharge * | scj, | ||
double | alpha | ||
) |
Definition at line 217 of file Solver.cxx.
References QuadExpr::Eval(), SpaceCharge::fPred, QuadExpr::Linear(), max, Metric(), min, QuadExpr::Quadratic(), and x.
Referenced by Iterate().
T sqr | ( | T | x | ) |