Geant4  10.01.p02
UltraFresnelLens Class Reference

#include <UltraFresnelLens.hh>

+ Collaboration diagram for UltraFresnelLens:

Public Member Functions

 UltraFresnelLens (G4double Diameter, G4int nGrooves, G4Material *Material, G4VPhysicalVolume *MotherPV, G4ThreeVector Pos)
 
 ~UltraFresnelLens ()
 
G4VPhysicalVolumeGetPhysicalVolume ()
 
G4MaterialGetMaterial ()
 
G4double GetDiameter ()
 
G4double GetThickness ()
 
G4double GetGrooveWidth ()
 
G4int GetNumberOfGrooves ()
 
G4double GetSagita (G4double)
 

Private Member Functions

void BuildLens (G4VPhysicalVolume *)
 

Private Attributes

G4double LensDiameter
 
G4int NumberOfGrooves
 
G4MaterialLensMaterial
 
G4ThreeVector LensPosition
 
G4double GrooveWidth
 
G4double LensThickness
 
G4VPhysicalVolumeLensPhysicalVolume
 

Detailed Description

Definition at line 54 of file UltraFresnelLens.hh.

Constructor & Destructor Documentation

UltraFresnelLens::UltraFresnelLens ( G4double  Diameter,
G4int  nGrooves,
G4Material Material,
G4VPhysicalVolume MotherPV,
G4ThreeVector  Pos 
)

Definition at line 59 of file UltraFresnelLens.cc.

References BuildLens(), FatalException, G4Exception(), GetSagita(), GrooveWidth, LensDiameter, LensMaterial, LensPosition, LensThickness, and NumberOfGrooves.

+ Here is the call graph for this function:

UltraFresnelLens::~UltraFresnelLens ( )

Definition at line 83 of file UltraFresnelLens.cc.

Member Function Documentation

void UltraFresnelLens::BuildLens ( G4VPhysicalVolume MotherPV)
private

Definition at line 88 of file UltraFresnelLens.cc.

References G4VPhysicalVolume::GetLogicalVolume(), G4LogicalVolume::GetMaterial(), G4VisAttributes::Invisible, kZAxis, LensDiameter, LensMaterial, LensPhysicalVolume, LensPosition, LensThickness, mm, NumberOfGrooves, and G4LogicalVolume::SetVisAttributes().

Referenced by UltraFresnelLens().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double UltraFresnelLens::GetDiameter ( )
inline

Definition at line 64 of file UltraFresnelLens.hh.

References LensDiameter.

G4double UltraFresnelLens::GetGrooveWidth ( )
inline

Definition at line 66 of file UltraFresnelLens.hh.

References GrooveWidth.

Referenced by UltraFresnelLensParameterisation::UltraFresnelLensParameterisation().

+ Here is the caller graph for this function:

G4Material* UltraFresnelLens::GetMaterial ( )
inline

Definition at line 63 of file UltraFresnelLens.hh.

References LensMaterial.

G4int UltraFresnelLens::GetNumberOfGrooves ( )
inline

Definition at line 67 of file UltraFresnelLens.hh.

References NumberOfGrooves.

Referenced by UltraFresnelLensParameterisation::UltraFresnelLensParameterisation().

+ Here is the caller graph for this function:

G4VPhysicalVolume* UltraFresnelLens::GetPhysicalVolume ( )
inline

Definition at line 62 of file UltraFresnelLens.hh.

References LensPhysicalVolume.

Referenced by UltraDetectorConstruction::ConstructUVscope().

+ Here is the caller graph for this function:

G4double UltraFresnelLens::GetSagita ( G4double  radius)

Definition at line 123 of file UltraFresnelLens.cc.

References FatalException, G4Exception(), mm, mm2, and mm3.

Referenced by UltraFresnelLens(), and UltraFresnelLensParameterisation::UltraFresnelLensParameterisation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double UltraFresnelLens::GetThickness ( )
inline

Definition at line 65 of file UltraFresnelLens.hh.

References LensThickness.

Referenced by UltraDetectorConstruction::ConstructUVscope().

+ Here is the caller graph for this function:

Member Data Documentation

G4double UltraFresnelLens::GrooveWidth
private

Definition at line 81 of file UltraFresnelLens.hh.

Referenced by GetGrooveWidth(), and UltraFresnelLens().

G4double UltraFresnelLens::LensDiameter
private

Definition at line 76 of file UltraFresnelLens.hh.

Referenced by BuildLens(), GetDiameter(), and UltraFresnelLens().

G4Material* UltraFresnelLens::LensMaterial
private

Definition at line 78 of file UltraFresnelLens.hh.

Referenced by BuildLens(), GetMaterial(), and UltraFresnelLens().

G4VPhysicalVolume* UltraFresnelLens::LensPhysicalVolume
private

Definition at line 85 of file UltraFresnelLens.hh.

Referenced by BuildLens(), and GetPhysicalVolume().

G4ThreeVector UltraFresnelLens::LensPosition
private

Definition at line 79 of file UltraFresnelLens.hh.

Referenced by BuildLens(), and UltraFresnelLens().

G4double UltraFresnelLens::LensThickness
private

Definition at line 82 of file UltraFresnelLens.hh.

Referenced by BuildLens(), GetThickness(), and UltraFresnelLens().

G4int UltraFresnelLens::NumberOfGrooves
private

Definition at line 77 of file UltraFresnelLens.hh.

Referenced by BuildLens(), GetNumberOfGrooves(), and UltraFresnelLens().


The documentation for this class was generated from the following files: