4 #include "CLHEP/Units/GlobalSystemOfUnits.h" 10 const std::vector<double>&
angle,
double maxL,
11 bool rot) : hgcons_(hgc), cut_(maxL), rot_(rot) {
15 for (
auto ang : angle) {
16 projXY_.push_back(std::pair<double,double>(
cos(ang*CLHEP::deg),
sin(ang*CLHEP::deg)));
20 <<
" with mode " <<
modeUV_ <<
" along " 21 << angle.size() <<
" axes";
22 for (
unsigned int k=0;
k<angle.size(); ++
k)
24 <<
" with projections " <<
projXY_[
k].first
35 double xx = (zside > 0) ? xy.first : -xy.first;
45 double dist =
dx*proj.first +
dy*proj.second;
46 if (dist >
cut_) {check =
true;
break;}
50 << zside <<
" wafer " << waferU <<
":" << waferV
51 <<
" position " << xy.first <<
":" << xx <<
":" 52 << xy.second <<
" dxy " <<
dx <<
":" <<
dy 53 <<
" check " <<
check;
std::vector< std::pair< double, double > > projXY_
Sin< T >::type sin(const T &t)
bool exclude(G4ThreeVector &point, int zside, int waferU, int waferV)
Cos< T >::type cos(const T &t)
Abs< T >::type abs(const T &t)
HGCalGeometryMode::GeometryMode geomMode() const
const HGCalDDDConstants & hgcons_
std::pair< double, double > waferPosition(int wafer, bool reco) const
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
HGCMouseBite(const HGCalDDDConstants &hgc, const std::vector< double > &angle, double maxLength, bool waferRotate)
T angle(T x1, T y1, T z1, T x2, T y2, T z2)