#include <iostream>
#include <stdexcept>
#include "boost/io/ios_state.hpp"
#include <map>
#include "TRandom3.h"
#include "TF1.h"
#include "TNtupleD.h"
#include "TFile.h"
#include "TROOT.h"
#include "GeoSpecialShapes/LArWheelCalculator.h"
#include "LArWheelSliceSolid.h"
#include "CLHEP/Units/SystemOfUnits.h"
#include "CLHEP/Units/PhysicalConstants.h"
#include <stdlib.h>
#include "CxxUtils/checker_macros.h"
Go to the source code of this file.
|
| static void | get_r (const G4VSolid *p, G4double z, G4double &rmin, G4double &rmax) |
| double | LArWheelSliceSolid_fcn_area (double *x, double *p) |
| double | LArWheelSliceSolid_fcn_vol (double *x, double *p) |
| double | LArWheelSliceSolid_fcn_area_on_pc (double *x, double *p) |
| double | LArWheelSliceSolid_get_dl (double *x, double *par, G4int side) |
| static double | fcn_length (double *x, double *p) |
| double | LArWheelSliceSolid_fcn_side_area (double *x, double *p) |
◆ fcn_length()
| double fcn_length |
( |
double * | x, |
|
|
double * | p ) |
|
static |
◆ get_r()
| void get_r |
( |
const G4VSolid * | p, |
|
|
G4double | z, |
|
|
G4double & | rmin, |
|
|
G4double & | rmax ) |
|
static |
Definition at line 58 of file LArWheelSliceSolidTests.cxx.
61{
62 G4ThreeVector from(10.*CLHEP::m, 0.,
z);
63 rmax = from[0] -
p->DistanceToIn(from, G4ThreeVector(-1., 0., 0.));
64 from[0] = 0.;
65 rmin =
p->DistanceToIn(from, G4ThreeVector(1., 0., 0.));
66}
◆ LArWheelSliceSolid_fcn_area()
| double LArWheelSliceSolid_fcn_area |
( |
double * | x, |
|
|
double * | p ) |
Definition at line 528 of file LArWheelSliceSolidTests.cxx.
529{
530 const double &
z =
x[0];
531 const double &
r =
p[0];
532 const double &
index =
p[1];
533
534 G4ThreeVector
a(0.,
r,
z);
535 double b =
solid[
index]->GetCalculator()->AmplitudeOfSurface(
a, -1, 121)
536 -
solid[
index]->GetCalculator()->AmplitudeOfSurface(
a, 1, 121);
538}
static std::map< double, LArWheelSliceSolid * > solid
◆ LArWheelSliceSolid_fcn_area_on_pc()
| double LArWheelSliceSolid_fcn_area_on_pc |
( |
double * | x, |
|
|
double * | p ) |
Definition at line 548 of file LArWheelSliceSolidTests.cxx.
549{
550 const double &
z =
x[0];
551 const double &
index =
p[0];
552
553 G4double rmin, rmax;
555
557 G4ThreeVector
a(0., rmin,
z);
559 -
solid[
index]->GetCalculator()->AmplitudeOfSurface(
a, 1, 232);
562 -
solid[
index]->GetCalculator()->AmplitudeOfSurface(
a, 1, 343);
563
565}
static void get_r(const G4VSolid *p, G4double z, G4double &rmin, G4double &rmax)
◆ LArWheelSliceSolid_fcn_side_area()
| double LArWheelSliceSolid_fcn_side_area |
( |
double * | x, |
|
|
double * | p ) |
◆ LArWheelSliceSolid_fcn_vol()
| double LArWheelSliceSolid_fcn_vol |
( |
double * | x, |
|
|
double * | p ) |
◆ LArWheelSliceSolid_get_dl()
| double LArWheelSliceSolid_get_dl |
( |
double * | x, |
|
|
double * | par, |
|
|
G4int | side ) |
Definition at line 568 of file LArWheelSliceSolidTests.cxx.
569{
570 const double &
z =
x[0];
571 const double &
r =
par[0];
573
574 const double h = 0.001;
575
576
577 G4ThreeVector
p(0.,
r,
z +
h);
578 G4double D1 =
solid[
index]->GetCalculator()->AmplitudeOfSurface(p, side, 5665);
580 D1 -=
solid[
index]->GetCalculator()->AmplitudeOfSurface(p, side, 5665);
582
584 G4double D2 =
solid[
index]->GetCalculator()->AmplitudeOfSurface(p, side, 5665);
586 D2 -=
solid[
index]->GetCalculator()->AmplitudeOfSurface(p, side, 5665);
588
589 G4double D = (D2 * 4 - D1) / 3.;
590 G4double
dl = sqrt(1 + D * D);
591
593}
Header file for AthHistogramAlgorithm.
◆ ATLAS_NO_CHECK_FILE_THREAD_SAFETY
| ATLAS_NO_CHECK_FILE_THREAD_SAFETY |
◆ IntPrecision
| double IntPrecision = 0.0001 |
|
static |
◆ rnd
◆ solid