12,8 → 12,8 |
void showVisual(int b) {show_3d = b;} |
void showData(int b) {show_data = b;} |
|
// Set the initial detector parameters (a, b, d, activeDetector, n1, n2, n3, gap) |
DetectorParameters parameters(3.0, 5.0, 3.0, 3.0, 1, 1.53, 1.46, TVector3(0.3, 0, 0)); |
// Set the initial detector parameters (a, b, d, activeDetector, n1, n2, n3, gap, badCoupling) |
DetectorParameters parameters(3.0, 5.0, 3.0, 3.0, 1, 1.53, 1.46, TVector3(0.3, 0, 0), false); |
// Print the detector parameters |
void getParameters(); |
|
193,9 → 193,10 |
} |
//------------------------------------------------------------------------------------------ |
// Propagate NN rays generated as grid and show the statistics |
void LGG(int NN = 10, double theta = 0.0) |
void LGG(int NN=10, double theta=0.0, bool coupling=false) |
{ |
CDetector *detector = new CDetector(TVector3(-2,0,0), parameters); |
parameters.setCoupling(coupling); |
CDetector *detector = new CDetector(CENTER, parameters); |
Init(); |
double izkoristek = Grid(detector, parameters, NN, theta); |
//printf("izkoristek = %.3lf\n", izkoristek); |
207,7 → 208,7 |
// Propagate NN rays genarated under the same angle theta, phi with random spacing and statistics |
void LGR(int NN = 1e4, double theta = 0.0, double phi = 0.0) |
{ |
CDetector *detector = new CDetector(TVector3(-2,0,0), parameters); |
CDetector *detector = new CDetector(CENTER, parameters); |
Init(); |
double izkoristek = RandYZ(detector, parameters, NN, theta, phi, 30); |
//printf("izkoristek = %.3lf\n", izkoristek); |
231,19 → 232,22 |
//detector->Draw(); |
} |
|
void LGB(int NN = 1e4, double phiMin=-19.4, double phiMax=19.4, int nnrays = 30, int showr = 0) |
void LGB(int NN = 1e4, double phiMin=-19.4, double phiMax=19.4, bool coupling=true, int nnrays = 30, int showr = 0) |
{ |
Init(); |
parameters.setCoupling(coupling); |
CDetector *detector = new CDetector(CENTER, parameters); |
//CDetector detector = new CDetector(); |
double izkoristek = beamtest(detector, parameters, NN, 18.5, phiMin, phiMax, nnrays, showr); |
//printf("izkoristek = %.3lf\n", izkoristek); |
PrintGuideHead(); |
PrintGuideStat(izkoristek); |
DrawData(detector, parameters, 18.5, izkoristek); |
//TCanvas *canvasDetector = new TCanvas("canvasDetector","canvasDetector",500,500); |
//canvasDetector->cd(); |
//detector->Draw(); |
|
const double theta = 18.5; |
double izkoristek = beamtest(detector, parameters, NN, theta, phiMin, phiMax, nnrays, showr); |
|
PrintGuideHead(); |
PrintGuideStat(izkoristek); |
DrawData(detector, parameters, 18.5, izkoristek); |
|
//TCanvas *canvasDetector = new TCanvas("canvasDetector","canvasDetector",500,500); |
//canvasDetector->cd(); |
//detector->Draw(); |
} |
|
|