Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

MJGeometryShield.cc

Go to the documentation of this file.
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: MJGeometryShield.cc,v 1.2 2004/11/09 13:42:39 xliu Exp $ 
00024 //      
00025 // CLASS IMPLEMENTATION:  MJGeometryShield.cc
00026 //
00027 //---------------------------------------------------------------------------//
00033 // 
00034 //---------------------------------------------------------------------------//
00046 //---------------------------------------------------------------------------//
00047 //
00048 
00049 //  GEANT4 headers
00050 #include "globals.hh"
00051 #include "G4Box.hh"
00052 #include "G4Material.hh"
00053 #include "G4PVPlacement.hh"
00054 
00055 //  MJ headers
00056 #include "geometry/MJGeometryShield.hh"      //Present MJ Class Headers
00057 #include "geometry/MJGeometryGlobals.hh"
00058 
00059 //---------------------------------------------------------------------------//
00060  
00061 MJGeometryShield::MJGeometryShield()
00062 {
00063         //  Set the visualization attributes for each of the components
00064         G4VisAttributes *shieldVisAtt = new G4VisAttributes(G4VisAttributes::Invisible);
00065         //      shieldVisAtt->SetVisibility( false );
00066         //      shieldVisAtt->SetForceWireframe( true );
00067         
00068         G4VisAttributes *chamberVisAtt = new G4VisAttributes(G4VisAttributes::Invisible);
00069         //      chamberVisAtt->SetVisibility( false );
00070         //      chamberVisAtt->SetForceWireframe( true );
00071         
00072         //  Build the shield and inner chamber
00073         G4double innerX, innerY, innerZ;
00074         G4double shieldWidth;
00075         innerX = innerY = innerZ = shieldWidth = 50*cm;
00076         G4Material *shieldMaterial = G4Material::GetMaterial( "Lead-Mod" );
00077         G4Material *chamberMaterial = G4Material::GetMaterial( "Air" );
00078         
00079         G4Box *shieldSolid = new G4Box( "shieldSolid", (innerX + shieldWidth)/2, (innerY + shieldWidth)/2, (innerZ + shieldWidth)/2 );
00080         theShieldLogical = new G4LogicalVolume( shieldSolid, shieldMaterial, "shieldLogical" );
00081         theShieldLogical->SetVisAttributes( shieldVisAtt );
00082         
00083         G4Box *innerChamberSolid = new G4Box( "innerChamberSolid", innerX/2, innerY/2, innerZ/2 );
00084         G4LogicalVolume *innerChamberLogical = new G4LogicalVolume( innerChamberSolid, chamberMaterial, "innerChamberLogical" );
00085         innerChamberLogical->SetVisAttributes( chamberVisAtt );
00086         innerChamber = new G4PVPlacement( 0, G4ThreeVector(), innerChamberLogical, "innerChamberPhysical", theShieldLogical, false, 0 );
00087 }
00088 
00089 //MJGeometryShield::MJGeometryShield(const MJGeometryShield & other) {}
00090 
00091 MJGeometryShield::~MJGeometryShield() {}

Generated on Mon Nov 29 16:58:51 2004 for Majorana Simulation by  doxygen 1.3.9.1