#include <UltraFresnelLens.hh>
Definition at line 54 of file UltraFresnelLens.hh.
Definition at line 59 of file UltraFresnelLens.cc.
62 LensMaterial = Material ;
63 LensDiameter = Diameter ;
64 NumberOfGrooves = nGrooves;
65 GrooveWidth = (Diameter/2.0)/nGrooves ;
68 if( GrooveWidth <= 0 ){
70 "UltraFresnelLens constructor: GrooveWidth<=0");
74 G4double Rmin1 = (NumberOfGrooves-1)*(GrooveWidth) ;
75 G4double Rmax1 = (NumberOfGrooves-0)*(GrooveWidth) ;
G4double GetSagita(G4double)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
UltraFresnelLens::~UltraFresnelLens |
( |
| ) |
|
G4double UltraFresnelLens::GetDiameter |
( |
| ) |
|
|
inline |
G4double UltraFresnelLens::GetGrooveWidth |
( |
| ) |
|
|
inline |
G4int UltraFresnelLens::GetNumberOfGrooves |
( |
| ) |
|
|
inline |
Definition at line 123 of file UltraFresnelLens.cc.
133 0.0/(
mm2*mm3*mm3*mm3),
134 0.0/(
mm*mm3*mm3*mm3*
mm3),
135 0.0/(
mm*3*mm3*mm3*mm3*mm3)
140 for(
G4int k=1;k<9;k++){
141 TotAspher += Aspher[k-1]*std::pow(radius,2*k) ;
144 G4double ArgSqrt = 1.0-(1.0+Conic)*std::pow(Curvature,2)*std::pow(radius,2) ;
147 G4Exception(
"UltraFresnelLens::GetSagita()",
"AirSh002",
149 "UltraFresnelLensParameterisation::Sagita: Square Root of <0 !");
151 G4double Sagita_value = Curvature*std::pow(radius,2)/(1.0+std::sqrt(ArgSqrt)) + TotAspher;
153 return Sagita_value ;
static constexpr double mm
static constexpr double mm2
static constexpr double mm3
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4double UltraFresnelLens::GetThickness |
( |
| ) |
|
|
inline |
The documentation for this class was generated from the following files: