Import Geant4 8.2.0 source tree
This commit is contained in:
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02DetectorConstruction.hh,v 1.2 2006/06/29 17:44:41 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: RE02DetectorConstruction.hh,v 1.3 2006/11/18 01:37:23 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02DetectorConstruction_h
|
||||
@@ -61,11 +61,19 @@ public:
|
||||
void SetNumberOfSegmentsInPhantom(G4int nx, G4int ny, G4int nz)
|
||||
{ fNx=nx; fNy=ny; fNz=nz; }
|
||||
void GetNumberOfSegmentsInPhantom(G4int& nx, G4int& ny, G4int& nz)
|
||||
const{ nx = fNx; ny = fNy; nz = fNz; }
|
||||
const{ nx=fNx; ny = fNy; nz = fNz; }
|
||||
// Insert Lead plate in water or simple homogeneous water phantom
|
||||
void SetLeadSegment(G4bool flag=TRUE){ fInsertLead = flag; }
|
||||
G4bool IsLeadSegment(){ return fInsertLead; }
|
||||
|
||||
private:
|
||||
// Data members
|
||||
G4ThreeVector fphantomSize; // Size of Water Phantom
|
||||
G4int fNx,fNy,fNz; // Number of segmentation of water phantom.
|
||||
G4bool fInsertLead; // Flag for inserting lead plate in water phantom
|
||||
|
||||
|
||||
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02EventAction.hh,v 1.2 2006/06/29 17:44:45 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: RE02EventAction.hh,v 1.3 2006/11/18 01:37:23 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02EventAction_h
|
||||
|
||||
@@ -0,0 +1,149 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02NestedPhantomParameterisation.hh,v 1.2 2006/12/13 15:42:45 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
// class G4VNestedParameterisation
|
||||
//
|
||||
// Class description:
|
||||
//
|
||||
// Base class for parameterisations that use information from the parent
|
||||
// volume to compute the material of a copy/instance of this volume.
|
||||
// This is in addition to using the current replication number.
|
||||
//
|
||||
// Notes:
|
||||
// - Such a volume can be nested inside a placement volume or a parameterised
|
||||
// volume.
|
||||
// - The user can modify the solid type, size or transformation using only
|
||||
// the replication number of this parameterised volume.
|
||||
// He/she is NOT allowed to change these attributes using information of
|
||||
// parent volumes - otherwise incorrect results will occur.
|
||||
// Also note that the usual restrictions apply:
|
||||
// - the mother volume, in which these copies are placed, must always be
|
||||
// of the same dimensions
|
||||
|
||||
// History:
|
||||
// 24.02.05 - J.Apostolakis - First created version.
|
||||
// --------------------------------------------------------------------
|
||||
#ifndef RE02NESTEDPARAMETERISATION_HH
|
||||
#define RE02NESTEDPARAMETERISATION_HH
|
||||
|
||||
#include "G4Types.hh"
|
||||
#include "G4VNestedParameterisation.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
#include <vector>
|
||||
|
||||
class G4VPhysicalVolume;
|
||||
class G4VTouchable;
|
||||
class G4VSolid;
|
||||
class G4Material;
|
||||
|
||||
// CSG Entities which may be parameterised/replicated
|
||||
//
|
||||
class G4Box;
|
||||
class G4Tubs;
|
||||
class G4Trd;
|
||||
class G4Trap;
|
||||
class G4Cons;
|
||||
class G4Sphere;
|
||||
class G4Orb;
|
||||
class G4Torus;
|
||||
class G4Para;
|
||||
class G4Polycone;
|
||||
class G4Polyhedra;
|
||||
class G4Hype;
|
||||
|
||||
class RE02NestedPhantomParameterisation: public G4VNestedParameterisation
|
||||
{
|
||||
public: // with description
|
||||
|
||||
RE02NestedPhantomParameterisation(const G4ThreeVector& voxelSize,
|
||||
G4int nz,
|
||||
std::vector<G4Material*>& mat);
|
||||
virtual ~RE02NestedPhantomParameterisation();
|
||||
|
||||
// Methods required in derived classes
|
||||
// -----------------------------------
|
||||
virtual G4Material* ComputeMaterial(G4VPhysicalVolume *currentVol,
|
||||
const G4int repNo,
|
||||
const G4VTouchable *parentTouch=0
|
||||
);
|
||||
// Required method, as it is the reason for this class.
|
||||
// Must cope with parentTouch=0 for navigator's SetupHierarchy
|
||||
|
||||
virtual G4int GetNumberOfMaterials() const;
|
||||
virtual G4Material* GetMaterial(G4int idx) const;
|
||||
// Needed to define materials for instances of Nested Parameterisation
|
||||
// Current convention: each call should return the materials
|
||||
// of all instances with the same mother/ancestor volume.
|
||||
|
||||
virtual void ComputeTransformation(const G4int no,
|
||||
G4VPhysicalVolume *currentPV) const;
|
||||
|
||||
// Methods optional in derived classes
|
||||
// -----------------------------------
|
||||
|
||||
// Additional standard Parameterisation methods,
|
||||
// which can be optionally defined, in case solid is used.
|
||||
|
||||
virtual void ComputeDimensions(G4Box &,
|
||||
const G4int,
|
||||
const G4VPhysicalVolume *) const;
|
||||
|
||||
private: // Dummy declarations to get rid of warnings ...
|
||||
void ComputeDimensions (G4Trd&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Trap&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Cons&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Sphere&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Orb&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Torus&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Para&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Hype&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Tubs&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Polycone&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
void ComputeDimensions (G4Polyhedra&,const G4int,const G4VPhysicalVolume*)
|
||||
const {}
|
||||
|
||||
private:
|
||||
G4double fdX,fdY,fdZ;
|
||||
G4int fNz;
|
||||
//
|
||||
std::vector<G4double> fpZ;
|
||||
std::vector<G4Material*> fmat;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,65 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSCellFlux.hh,v 1.2 2006/12/13 15:42:47 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSCellFlux_h
|
||||
#define RE02PSCellFlux_h 1
|
||||
|
||||
#include "G4PSCellFlux.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (Description)
|
||||
// This is a primitive scorer class for scoring cell flux.
|
||||
// The Cell Flux is defined by a sum of track length divided
|
||||
// by the geometry volume, where all of the tracks in the geometry
|
||||
// are taken into account. e.g. the unit of Cell Flux is mm/mm3.
|
||||
//
|
||||
//
|
||||
// If you want to score only tracks passing through the geometry volume,
|
||||
// please use G4PSPassageCellFlux.
|
||||
//
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura.
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSCellFlux : public G4PSCellFlux
|
||||
{
|
||||
public: // with description
|
||||
RE02PSCellFlux(G4String name,G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSCellFlux();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSEnergyDeposit.hh,v 1.2 2006/12/13 15:42:50 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSEnergyDeposit_h
|
||||
#define RE02PSEnergyDeposit_h 1
|
||||
|
||||
#include "G4PSEnergyDeposit.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Description:
|
||||
// This is a primitive scorer class for scoring energy deposit.
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSEnergyDeposit : public G4PSEnergyDeposit
|
||||
{
|
||||
public: // with description
|
||||
RE02PSEnergyDeposit(G4String name,G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSEnergyDeposit();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSFlatSurfaceCurrent.hh,v 1.2 2006/12/13 15:42:52 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSFlatSurfaceCurrent_h
|
||||
#define RE02PSFlatSurfaceCurrent_h 1
|
||||
|
||||
#include "G4PSFlatSurfaceCurrent.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (Description)
|
||||
// This is a primitive scorer class for scoring Surface Current.
|
||||
// Current version assumes only for G4Box shape, and the surface
|
||||
// is defined at the -Z plane of the box.
|
||||
// The current is given in the unit of area.
|
||||
// e.g. (Number of tracks)/mm2.
|
||||
//
|
||||
// Surface is defined at the -Z surface.
|
||||
// Direction -Z +Z
|
||||
// 0 IN || OUT ->|<- | fCurrent_InOut
|
||||
// 1 IN ->| | fCurrent_In
|
||||
// 2 OUT |<- | fCurrent_Out
|
||||
//
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura.
|
||||
// 17-Nov-2005 T.Aso, Bug fix for area definition.
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSFlatSurfaceCurrent : public G4PSFlatSurfaceCurrent
|
||||
{
|
||||
public: // with description
|
||||
RE02PSFlatSurfaceCurrent(G4String name, G4int direction,
|
||||
G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSFlatSurfaceCurrent();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSFlatSurfaceFlux.hh,v 1.2 2006/12/13 15:42:54 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSFlatSurfaceFlux_h
|
||||
#define RE02PSFlatSurfaceFlux_h 1
|
||||
|
||||
#include "G4PSFlatSurfaceFlux.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (Description)
|
||||
// This is a primitive scorer class for scoring Surface Flux.
|
||||
// Current version assumes only for G4Box shape, and the surface
|
||||
// is defined at the -Z plane of the box.
|
||||
// The surface flux is given in the unit of area.
|
||||
// e.g. sum of 1/cos(T)/mm2, where T is a incident angle of the
|
||||
// track on the surface.
|
||||
//
|
||||
//
|
||||
// Surface is defined at the -Z surface.
|
||||
// Direction -Z +Z
|
||||
// 0 IN || OUT ->|<- | fFlux_InOut
|
||||
// 1 IN ->| | fFlux_In
|
||||
// 2 OUT |<- | fFlux_Out
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura.
|
||||
//
|
||||
// 18-Nov-2005 T.Aso, To use always positive value for anglefactor.
|
||||
// Bug fix. Area definition.
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSFlatSurfaceFlux : public G4PSFlatSurfaceFlux
|
||||
{
|
||||
public: // with description
|
||||
RE02PSFlatSurfaceFlux(G4String name, G4int direction, G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSFlatSurfaceFlux();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSNofStep.hh,v 1.2 2006/12/13 15:42:57 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSNofStep_h
|
||||
#define RE02PSNofStep_h 1
|
||||
|
||||
#include "G4PSNofStep.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (Description)
|
||||
// This is a primitive scorer class for scoring Number of Steps in the cell.
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura.
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSNofStep : public G4PSNofStep
|
||||
{
|
||||
public: // with description
|
||||
RE02PSNofStep(G4String name,G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSNofStep();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PSPassageCellFlux.hh,v 1.2 2006/12/13 15:43:00 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PSPassageCellFlux_h
|
||||
#define RE02PSPassageCellFlux_h 1
|
||||
|
||||
#include "G4PSPassageCellFlux.hh"
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// (Description)
|
||||
// This is a primitive scorer class for scoring cell flux.
|
||||
// The Cell Flux is defined by a track length divided by a geometry
|
||||
// volume, where only tracks passing through the geometry are taken
|
||||
// into account. e.g. the unit of Cell Flux is mm/mm3.
|
||||
//
|
||||
// If you want to score all tracks in the geometry volume,
|
||||
// please use G4PSCellFlux.
|
||||
//
|
||||
// Created: 2005-11-14 Tsukasa ASO, Akinori Kimura.
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
class RE02PSPassageCellFlux : public G4PSPassageCellFlux
|
||||
{
|
||||
public: // with description
|
||||
RE02PSPassageCellFlux(G4String name,G4int nx,G4int ny, G4int nz);
|
||||
virtual ~RE02PSPassageCellFlux();
|
||||
|
||||
protected: // with description
|
||||
virtual G4int GetIndex(G4Step*);
|
||||
|
||||
private:
|
||||
G4int fNx, fNy, fNz;
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
//
|
||||
// ********************************************************************
|
||||
// * License and Disclaimer *
|
||||
// * *
|
||||
// * The Geant4 software is copyright of the Copyright Holders of *
|
||||
// * the Geant4 Collaboration. It is provided under the terms and *
|
||||
// * conditions of the Geant4 Software License, included in the file *
|
||||
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
||||
// * include a list of copyright holders. *
|
||||
// * *
|
||||
// * Neither the authors of this software system, nor their employing *
|
||||
// * institutes,nor the agencies providing financial support for this *
|
||||
// * work make any representation or warranty, express or implied, *
|
||||
// * regarding this software system or assume any liability for its *
|
||||
// * use. Please see the license in the file LICENSE and URL above *
|
||||
// * for the full disclaimer and the limitation of liability. *
|
||||
// * *
|
||||
// * This code implementation is the result of the scientific and *
|
||||
// * technical work of the GEANT4 collaboration. *
|
||||
// * By using, copying, modifying or distributing the software (or *
|
||||
// * any work based on the software) you agree to acknowledge its *
|
||||
// * use in resulting scientific publications, and indicate your *
|
||||
// * acceptance of all terms of the Geant4 Software license. *
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PhantomParameterisation.hh,v 1.2 2006/06/29 17:44:58 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
//
|
||||
|
||||
#ifndef RE02PhantomParameterisation_h
|
||||
#define RE02PhantomParameterisation_h 1
|
||||
|
||||
#include "globals.hh"
|
||||
#include "G4VPVParameterisation.hh"
|
||||
#include "G4ThreeVector.hh"
|
||||
#include <vector>
|
||||
|
||||
class G4VPhysicalVolume;
|
||||
class G4LogicalVolume;
|
||||
class G4Material;
|
||||
class G4VisAttributes;
|
||||
class G4Box;
|
||||
|
||||
class G4Trd;
|
||||
class G4Trap;
|
||||
class G4Cons;
|
||||
class G4Orb;
|
||||
class G4Sphere;
|
||||
class G4Torus;
|
||||
class G4Para;
|
||||
class G4Hype;
|
||||
class G4Tubs;
|
||||
class G4Polycone;
|
||||
class G4Polyhedra;
|
||||
|
||||
//
|
||||
class RE02PhantomParameterisation : public G4VPVParameterisation
|
||||
{
|
||||
public:
|
||||
|
||||
RE02PhantomParameterisation(const G4ThreeVector& motherSize,
|
||||
const G4int nx, const G4int ny, const G4int nz);
|
||||
|
||||
virtual ~RE02PhantomParameterisation();
|
||||
|
||||
void ComputeTransformation(const G4int copyNo,
|
||||
G4VPhysicalVolume* physVol)const;
|
||||
|
||||
private: // Dummy declarations to get rid of warnings ...
|
||||
void ComputeDimensions(G4Box&, const G4int,const G4VPhysicalVolume* ) const{};
|
||||
void ComputeDimensions(G4Trd&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Trap&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Cons&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Sphere&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Orb&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Torus&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Para&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Hype&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Tubs&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Polycone&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
void ComputeDimensions(G4Polyhedra&,const G4int,const G4VPhysicalVolume*) const {}
|
||||
|
||||
private:
|
||||
G4ThreeVector fDxyzMother;
|
||||
G4ThreeVector fDxyz;
|
||||
G4int fNx, fNy, fNz;
|
||||
std::vector<G4ThreeVector> fPositions;
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02PrimaryGeneratorAction.hh,v 1.2 2006/06/29 17:45:04 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: RE02PrimaryGeneratorAction.hh,v 1.3 2006/11/18 01:37:23 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02PrimaryGeneratorAction_h
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02Run.hh,v 1.2 2006/06/29 17:45:06 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: RE02Run.hh,v 1.3 2006/11/18 01:37:23 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
//---------------------------------------------------------------------
|
||||
// (Purpose)
|
||||
|
||||
@@ -24,8 +24,8 @@
|
||||
// ********************************************************************
|
||||
//
|
||||
//
|
||||
// $Id: RE02RunAction.hh,v 1.2 2006/06/29 17:45:08 gunter Exp $
|
||||
// GEANT4 tag $Name: geant4-08-01 $
|
||||
// $Id: RE02RunAction.hh,v 1.3 2006/11/18 01:37:23 asaim Exp $
|
||||
// GEANT4 tag $Name: geant4-08-02 $
|
||||
//
|
||||
|
||||
#ifndef RE02RunAction_h
|
||||
@@ -40,7 +40,9 @@ class G4Run;
|
||||
//=======================================================================
|
||||
// RE02RunAction
|
||||
//
|
||||
// Generate Run object and Dumping Run summary.
|
||||
//
|
||||
// T.Aso Created. 2007.Nov.
|
||||
//
|
||||
//=======================================================================
|
||||
//
|
||||
@@ -61,7 +63,7 @@ public:
|
||||
// Utility method for converting segment number of
|
||||
// water phantom to copyNo of HitsMap.
|
||||
G4int CopyNo(G4int ix, G4int iy, G4int iz)
|
||||
{ return (ix*(fNy*fNz)+iy*fNz+iz); }
|
||||
{ return (iy*(fNx*fNy)+ix*fNz+iz); }
|
||||
|
||||
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user