5#include "CLHEP/Geometry/Point3D.h"
7#include "CLHEP/Vector/ThreeVector.h"
8#include "CLHEP/Vector/LorentzVector.h"
9#include "CLHEP/Vector/TwoVector.h"
11using CLHEP::Hep3Vector;
17 ToyCgem(
int layer_vir,
double r,
double x0,
double y0,
double z0,
double rx,
double ry,
double rz);
43 ToyRay(
double dr,
double phi,
double dz,
double tanl);
67 void setLayerR(
int layer_geo,
double r) { m_r[layer_geo] = r; }
69 double getDx(
int layer_vir) {
return m_dx[layer_vir]; }
70 double getDy(
int layer_vir) {
return m_dy[layer_vir]; }
71 double getDz(
int layer_vir) {
return m_dz[layer_vir]; }
72 double getRx(
int layer_vir) {
return m_rx[layer_vir]; }
73 double getRy(
int layer_vir) {
return m_ry[layer_vir]; }
74 double getRz(
int layer_vir) {
return m_rz[layer_vir]; }
76 double getDx(
int layer_geo,
int sheet_geo) {
return m_dx[layer_geo*2+sheet_geo]; }
77 double getDy(
int layer_geo,
int sheet_geo) {
return m_dy[layer_geo*2+sheet_geo]; }
78 double getDz(
int layer_geo,
int sheet_geo) {
return m_dz[layer_geo*2+sheet_geo]; }
79 double getRx(
int layer_geo,
int sheet_geo) {
return m_rx[layer_geo*2+sheet_geo]; }
80 double getRy(
int layer_geo,
int sheet_geo) {
return m_ry[layer_geo*2+sheet_geo]; }
81 double getRz(
int layer_geo,
int sheet_geo) {
return m_rz[layer_geo*2+sheet_geo]; }
84 void setDx(
int layer_vir,
double v) { m_dx[layer_vir] =
v; }
85 void setDy(
int layer_vir,
double v) { m_dy[layer_vir] =
v; }
86 void setDz(
int layer_vir,
double v) { m_dz[layer_vir] =
v; }
87 void setRx(
int layer_vir,
double v) { m_rx[layer_vir] =
v; }
88 void setRy(
int layer_vir,
double v) { m_ry[layer_vir] =
v; }
89 void setRz(
int layer_vir,
double v) { m_rz[layer_vir] =
v; }
91 void setDx(
int layer_geo,
int sheet_geo,
double v) { m_dx[layer_geo*2+sheet_geo] =
v; }
92 void setDy(
int layer_geo,
int sheet_geo,
double v) { m_dy[layer_geo*2+sheet_geo] =
v; }
93 void setDz(
int layer_geo,
int sheet_geo,
double v) { m_dz[layer_geo*2+sheet_geo] =
v; }
94 void setRx(
int layer_geo,
int sheet_geo,
double v) { m_rx[layer_geo*2+sheet_geo] =
v; }
95 void setRy(
int layer_geo,
int sheet_geo,
double v) { m_ry[layer_geo*2+sheet_geo] =
v; }
96 void setRz(
int layer_geo,
int sheet_geo,
double v) { m_rz[layer_geo*2+sheet_geo] =
v; }
105 void HelixConversion(
int layer_vir,
double helixOriginal[],
double helixConverted[]);
111 double shift_y,
double shift_z,
double rotation_z);
124 bool getinter(
ToyRay ARay,
int layer_vir, Hep3Vector& posUp, Hep3Vector& posDown);
125 bool getinter(
ToyRay ARay,
int layer_geo,
int sheet_geo, Hep3Vector& posUp, Hep3Vector& posDown);
127 bool getinter(
ToyRay ARay,
int layer_geo,
int sheet_geo, Hep3Vector& pos);
**********Class see also m_nmax DOUBLE PRECISION m_amel DOUBLE PRECISION m_x2 DOUBLE PRECISION m_alfinv DOUBLE PRECISION m_Xenph INTEGER m_KeyWtm INTEGER m_idyfs DOUBLE PRECISION m_zini DOUBLE PRECISION m_q2 DOUBLE PRECISION m_Wt_KF DOUBLE PRECISION m_WtCut INTEGER m_KFfin *COMMON c_KarLud $ !Input CMS energy[GeV] $ !CMS energy after beam spread beam strahlung[GeV] $ !Beam energy spread[GeV] $ !z boost due to beam spread $ !electron beam mass *ff pair spectrum $ !minimum v
double getDx(int layer_vir)
void setRy(int layer_vir, double v)
void StraightLineConversion_v1(int layer_vir, double lineOriginal[], double lineConverted[])
void setDy(int layer_geo, int sheet_geo, double v)
double getRy(int layer_geo, int sheet_geo)
void setRz(int layer_vir, double v)
void setLayerR(int layer_geo, double r)
double getDz(int layer_geo, int sheet_geo)
void setDz(int layer_vir, double v)
StraightLine StraightLineConversion(int layer_vir, StraightLine lineOriginal)
double getRx(int layer_vir)
void setDz(int layer_geo, int sheet_geo, double v)
double getRy(int layer_vir)
void setDy(int layer_vir, double v)
void setRy(int layer_geo, int sheet_geo, double v)
void GetLocPos(int layer_vir, Hep3Vector GposUp, Hep3Vector GposDown, HepPoint3D &LposUp, HepPoint3D &LposDown)
double getRz(int layer_vir)
double getDz(int layer_vir)
double getRx(int layer_geo, int sheet_geo)
HepPoint3D point_invTransform(int layer_vir, HepPoint3D pos)
void initAlignPar(std::string alignFile)
double getRz(int layer_geo, int sheet_geo)
void setDx(int layer_vir, double v)
void HelixConversion(int layer_vir, double helixOriginal[], double helixConverted[])
void setRx(int layer_geo, int sheet_geo, double v)
void setDx(int layer_geo, int sheet_geo, double v)
bool getinter(ToyRay ARay, int layer_vir, Hep3Vector &posUp, Hep3Vector &posDown)
void setRz(int layer_geo, int sheet_geo, double v)
double getDy(int layer_geo, int sheet_geo)
HepPoint3D point_transform(int layer_vir, HepPoint3D pos)
void setRx(int layer_vir, double v)
double getDy(int layer_vir)
double getDx(int layer_geo, int sheet_geo)
ToyCgem(int layer_vir, double r, double x0, double y0, double z0, double rx, double ry, double rz)
ToyRay(double dr, double phi, double dz, double tanl)