00001 //---------------------------------------------------------------------------// 00002 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu// 00003 // // 00004 // MAJORANA Simulation // 00005 // // 00006 // This code implementation is the intellectual property of the // 00007 // MAJORANA Collaboration. It is based on Geant4, an intellectual // 00008 // property of the RD44 GEANT4 collaboration. // 00009 // // 00010 // ********************* // 00011 // // 00012 // Neither the authors of this software system, nor their employing // 00013 // institutes, nor the agencies providing financial support for this // 00014 // work make any representation or warranty, express or implied, // 00015 // regarding this software system or assume any liability for its use. // 00016 // By copying, distributing or modifying the Program (or any work based // 00017 // on on the Program) you indicate your acceptance of this statement, // 00018 // and all its terms. // 00019 // // 00020 //bb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nubb0nu// 00021 //---------------------------------------------------------------------------// 00022 // 00023 // $Id: MJGeometryCloverInNaIBarrel.cc,v 1.2 2004/11/09 13:42:39 xliu Exp $ 00024 // 00025 // CLASS IMPLEMENTATION: MJGeometryCloverInNaIBarrel.cc 00026 // 00027 //---------------------------------------------------------------------------// 00033 // 00034 //---------------------------------------------------------------------------// 00044 //---------------------------------------------------------------------------// 00045 // 00046 00047 #include "globals.hh" 00048 #include "G4Box.hh" 00049 #include "G4LogicalVolume.hh" 00050 #include "G4Material.hh" 00051 #include "G4PVPlacement.hh" 00052 #include "G4ThreeVector.hh" 00053 00054 #include "geometry/MJGeometryCloverDetector.hh" 00055 #include "geometry/MJGeometryNaIBarrel.hh" 00056 00057 //---------------------------------------------------------------------------// 00058 00059 #include "geometry/MJGeometryCloverInNaIBarrel.hh" 00060 00061 //---------------------------------------------------------------------------// 00062 00063 MJGeometryCloverInNaIBarrel::MJGeometryCloverInNaIBarrel(G4String serNum): 00064 MJGeometryDetector(serNum), fClover(0), fNaIBarrel(0) 00065 {;} 00066 00067 //---------------------------------------------------------------------------// 00068 00069 MJGeometryCloverInNaIBarrel::~MJGeometryCloverInNaIBarrel() 00070 { 00071 delete fNaIBarrel; 00072 delete fClover; 00073 } 00074 00075 //---------------------------------------------------------------------------// 00076 00077 void MJGeometryCloverInNaIBarrel::ConstructDetector() 00078 { 00079 // Build box to place clover and barrel in. 00080 G4double boxEdge = 1.0 * m; 00081 G4Material *air = G4Material::GetMaterial("Air"); 00082 G4Box *containmentBox = new G4Box("containmentBox",boxEdge,boxEdge,boxEdge); 00083 theDetectorLogical = new G4LogicalVolume( 00084 containmentBox, air, "containmentVolume"); 00085 00086 // Create NaI barrel and put it in containment Volume 00087 fNaIBarrel = new MJGeometryNaIBarrel; 00088 fNaIBarrel->Construct(); 00089 G4PVPlacement *barrelPlacement = new G4PVPlacement(0, 00090 G4ThreeVector(0,0,0), fNaIBarrel->GetLogical(), "barrelLogical", 00091 theDetectorLogical, false, 0); 00092 00093 // Create Clover and place in containment volume. 00094 fClover = new MJGeometryCloverDetector("LANL1"); 00095 fClover->ConstructDetector(); 00096 G4PVPlacement *cloverPlacement = new G4PVPlacement(0, 00097 G4ThreeVector(0,0,0), fClover->GetDetectorLogical(), "cloverLogical", 00098 theDetectorLogical, false, 0); 00099 } 00100 //---------------------------------------------------------------------------// 00101 //---------------------------------------------------------------------------//