Geant4  10.02.p03
BrachyDetectorConstructionLeipzig Class Reference

#include <BrachyDetectorConstructionLeipzig.hh>

Collaboration diagram for BrachyDetectorConstructionLeipzig:

Public Member Functions

 BrachyDetectorConstructionLeipzig ()
 
 ~BrachyDetectorConstructionLeipzig ()
 
void ConstructLeipzig (G4VPhysicalVolume *)
 
void CleanLeipzigApplicator ()
 

Private Attributes

BrachyMaterialpMaterial
 
G4Tubscapsule
 
G4SpherecapsuleTip
 
G4TubsiridiumCore
 
G4Tubsapplicator1
 
G4Tubsapplicator2
 
G4LogicalVolumecapsuleLog
 
G4LogicalVolumecapsuleTipLog
 
G4LogicalVolumeiridiumCoreLog
 
G4LogicalVolumeapplicator1Log
 
G4LogicalVolumeapplicator2Log
 
G4VPhysicalVolumecapsulePhys
 
G4VPhysicalVolumecapsuleTipPhys
 
G4VPhysicalVolumeiridiumCorePhys
 
G4VPhysicalVolumeapplicator1Phys
 
G4VPhysicalVolumeapplicator2Phys
 
G4VisAttributessimpleCapsuleVisAtt
 
G4VisAttributessimpleCapsuleTipVisAtt
 
G4VisAttributesapplicatorVisAtt
 

Detailed Description

Definition at line 53 of file BrachyDetectorConstructionLeipzig.hh.

Constructor & Destructor Documentation

◆ BrachyDetectorConstructionLeipzig()

BrachyDetectorConstructionLeipzig::BrachyDetectorConstructionLeipzig ( )

Definition at line 65 of file BrachyDetectorConstructionLeipzig.cc.

65  :
70 {
71  pMaterial = new BrachyMaterial();
72 }

◆ ~BrachyDetectorConstructionLeipzig()

BrachyDetectorConstructionLeipzig::~BrachyDetectorConstructionLeipzig ( )

Definition at line 74 of file BrachyDetectorConstructionLeipzig.cc.

75 {
76  delete pMaterial;
77 }

Member Function Documentation

◆ CleanLeipzigApplicator()

void BrachyDetectorConstructionLeipzig::CleanLeipzigApplicator ( )

Definition at line 135 of file BrachyDetectorConstructionLeipzig.cc.

136 {
140 delete applicator2Phys; applicator2Phys = 0;
141 delete applicator1Phys; applicator1Phys = 0;
142 delete iridiumCorePhys; iridiumCorePhys = 0;
143 delete capsuleTipPhys; capsuleTipPhys = 0;
144 delete capsulePhys; capsulePhys = 0;
145 delete applicator2Log; applicator2Log = 0;
146 delete applicator1Log; applicator1Log = 0;
147 delete iridiumCoreLog; iridiumCoreLog = 0;
148 delete capsuleTipLog; capsuleTipLog = 0;
149 delete capsuleLog; capsuleLog = 0;
150 }

◆ ConstructLeipzig()

void BrachyDetectorConstructionLeipzig::ConstructLeipzig ( G4VPhysicalVolume mother)

Definition at line 79 of file BrachyDetectorConstructionLeipzig.cc.

80 {
81  G4Colour red (1.0, 0.0, 0.0) ;
82  G4Colour lblue (0.0, 0.0, .75);
83 
84  G4Material* capsuleMat = pMaterial -> GetMat("Stainless steel");
85  G4Material* iridium = pMaterial -> GetMat("Iridium");
86  G4Material* tungsten = pMaterial -> GetMat("Tungsten");
87 
88  //Iridium source ...
89 
90  capsule = new G4Tubs("Capsule",0,0.55*mm,3.725*mm,0.*deg,360.*deg);
91  capsuleLog = new G4LogicalVolume(capsule,capsuleMat,"CapsuleLog");
92  capsulePhys = new G4PVPlacement(0, G4ThreeVector(0,0,-1.975*mm),"CapsulePhys",
93  capsuleLog,mother, //mother volume: phantom
94  false,0, true);
95 
96  // Capsule tip
97  capsuleTip = new G4Sphere("CapsuleTip",0.*mm,0.55*mm,0.*deg,360.*deg,0.*deg,90.*deg);
98  capsuleTipLog = new G4LogicalVolume(capsuleTip,capsuleMat,"CapsuleTipLog");
99  capsuleTipPhys = new G4PVPlacement(0,G4ThreeVector(0.,0.,1.75*mm),"CapsuleTipPhys",
100  capsuleTipLog,mother,false,0, true);
101  // Iridium core
102  iridiumCore = new G4Tubs("IrCore",0,0.30*mm,1.75*mm,0.*deg,360.*deg);
103  iridiumCoreLog = new G4LogicalVolume(iridiumCore, iridium, "IridiumCoreLog");
104  iridiumCorePhys = new G4PVPlacement(0,G4ThreeVector(0.,0.,1.975*mm),"IridiumCorePhys",
105  iridiumCoreLog,capsulePhys,false,0, true);
106 
107  //Leipzig Applicator is modelled with two different volumes
108  applicator1 = new G4Tubs("Appl1",5*mm,10.5*mm,12*mm,0.*deg,360.*deg);
109  applicator1Log = new G4LogicalVolume(applicator1,tungsten,"Appl1Log");
110  applicator1Phys = new G4PVPlacement(0,G4ThreeVector(0,0,4.0*mm),"Appl1Phys",applicator1Log,
111  mother,false,0, true);
112 
113  applicator2 = new G4Tubs("Appl2",0.55*mm,5.*mm,3.125*mm,0.*deg,360.*deg);
114  applicator2Log = new G4LogicalVolume(applicator2,tungsten,"Appl2");
115  applicator2Phys = new G4PVPlacement(0,G4ThreeVector(0,0,-4.875*mm),
116  "Appl2Phys",applicator2Log,mother,false,0, true);
117 
119  simpleCapsuleVisAtt -> SetVisibility(true);
120  simpleCapsuleVisAtt -> SetForceWireframe(true);
121  capsuleLog -> SetVisAttributes(simpleCapsuleVisAtt);
122 
124  simpleCapsuleTipVisAtt -> SetVisibility(true);
125  simpleCapsuleTipVisAtt -> SetForceSolid(true);
126  capsuleTipLog -> SetVisAttributes(simpleCapsuleTipVisAtt);
127  iridiumCoreLog -> SetVisAttributes(simpleCapsuleTipVisAtt);
128 
129  applicatorVisAtt = new G4VisAttributes(lblue);
130  applicatorVisAtt -> SetVisibility(true);
131  applicatorVisAtt -> SetForceWireframe(true);
132  applicator1Log -> SetVisAttributes(applicatorVisAtt);
133  applicator2Log -> SetVisAttributes(applicatorVisAtt);
134 }
Definition: test07.cc:36
CLHEP::Hep3Vector G4ThreeVector
Definition: G4Tubs.hh:85
static const double deg
Definition: G4SIunits.hh:151
static const double mm
Definition: G4SIunits.hh:114

Member Data Documentation

◆ applicator1

G4Tubs* BrachyDetectorConstructionLeipzig::applicator1
private

Definition at line 68 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicator1Log

G4LogicalVolume* BrachyDetectorConstructionLeipzig::applicator1Log
private

Definition at line 74 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicator1Phys

G4VPhysicalVolume* BrachyDetectorConstructionLeipzig::applicator1Phys
private

Definition at line 80 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicator2

G4Tubs* BrachyDetectorConstructionLeipzig::applicator2
private

Definition at line 69 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicator2Log

G4LogicalVolume* BrachyDetectorConstructionLeipzig::applicator2Log
private

Definition at line 75 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicator2Phys

G4VPhysicalVolume* BrachyDetectorConstructionLeipzig::applicator2Phys
private

Definition at line 81 of file BrachyDetectorConstructionLeipzig.hh.

◆ applicatorVisAtt

G4VisAttributes* BrachyDetectorConstructionLeipzig::applicatorVisAtt
private

Definition at line 85 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsule

G4Tubs* BrachyDetectorConstructionLeipzig::capsule
private

Definition at line 65 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsuleLog

G4LogicalVolume* BrachyDetectorConstructionLeipzig::capsuleLog
private

Definition at line 71 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsulePhys

G4VPhysicalVolume* BrachyDetectorConstructionLeipzig::capsulePhys
private

Definition at line 77 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsuleTip

G4Sphere* BrachyDetectorConstructionLeipzig::capsuleTip
private

Definition at line 66 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsuleTipLog

G4LogicalVolume* BrachyDetectorConstructionLeipzig::capsuleTipLog
private

Definition at line 72 of file BrachyDetectorConstructionLeipzig.hh.

◆ capsuleTipPhys

G4VPhysicalVolume* BrachyDetectorConstructionLeipzig::capsuleTipPhys
private

Definition at line 78 of file BrachyDetectorConstructionLeipzig.hh.

◆ iridiumCore

G4Tubs* BrachyDetectorConstructionLeipzig::iridiumCore
private

Definition at line 67 of file BrachyDetectorConstructionLeipzig.hh.

◆ iridiumCoreLog

G4LogicalVolume* BrachyDetectorConstructionLeipzig::iridiumCoreLog
private

Definition at line 73 of file BrachyDetectorConstructionLeipzig.hh.

◆ iridiumCorePhys

G4VPhysicalVolume* BrachyDetectorConstructionLeipzig::iridiumCorePhys
private

Definition at line 79 of file BrachyDetectorConstructionLeipzig.hh.

◆ pMaterial

BrachyMaterial* BrachyDetectorConstructionLeipzig::pMaterial
private

Definition at line 63 of file BrachyDetectorConstructionLeipzig.hh.

◆ simpleCapsuleTipVisAtt

G4VisAttributes* BrachyDetectorConstructionLeipzig::simpleCapsuleTipVisAtt
private

Definition at line 84 of file BrachyDetectorConstructionLeipzig.hh.

◆ simpleCapsuleVisAtt

G4VisAttributes* BrachyDetectorConstructionLeipzig::simpleCapsuleVisAtt
private

Definition at line 83 of file BrachyDetectorConstructionLeipzig.hh.


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