G4PSDoseDepositForCylinder3D Class Reference

#include <G4PSDoseDepositForCylinder3D.hh>

Inheritance diagram for G4PSDoseDepositForCylinder3D:

G4PSDoseDeposit3D G4PSDoseDeposit G4VPrimitiveScorer

Public Member Functions

 G4PSDoseDepositForCylinder3D (G4String name, G4int ni=1, G4int nj=1, G4int nk=1, G4int depi=2, G4int depj=1, G4int depk=0)
 G4PSDoseDepositForCylinder3D (G4String name, const G4String &unit, G4int ni=1, G4int nj=1, G4int nk=1, G4int depi=2, G4int depj=1, G4int depk=0)
virtual ~G4PSDoseDepositForCylinder3D ()
void SetCylinderSize (G4double dr, G4double dz)
void SetNumberOfSegments (G4int nSeg[3])

Protected Member Functions

virtual G4double ComputeVolume (G4Step *, G4int idx)

Detailed Description

Definition at line 46 of file G4PSDoseDepositForCylinder3D.hh.


Constructor & Destructor Documentation

G4PSDoseDepositForCylinder3D::G4PSDoseDepositForCylinder3D ( G4String  name,
G4int  ni = 1,
G4int  nj = 1,
G4int  nk = 1,
G4int  depi = 2,
G4int  depj = 1,
G4int  depk = 0 
)

Definition at line 44 of file G4PSDoseDepositForCylinder3D.cc.

00047   :G4PSDoseDeposit3D(name,ni,nj,nk,di,dj,dk)
00048 {
00049   nSegment[0] = nSegment[1] = nSegment[2] = 0;
00050 }

G4PSDoseDepositForCylinder3D::G4PSDoseDepositForCylinder3D ( G4String  name,
const G4String unit,
G4int  ni = 1,
G4int  nj = 1,
G4int  nk = 1,
G4int  depi = 2,
G4int  depj = 1,
G4int  depk = 0 
)

Definition at line 52 of file G4PSDoseDepositForCylinder3D.cc.

00056   :G4PSDoseDeposit3D(name,unit,ni,nj,nk,di,dj,dk)
00057 {
00058   nSegment[0] = nSegment[1] = nSegment[2] = 0;
00059 }

G4PSDoseDepositForCylinder3D::~G4PSDoseDepositForCylinder3D (  )  [virtual]

Definition at line 61 of file G4PSDoseDepositForCylinder3D.cc.

00062 {;}


Member Function Documentation

G4double G4PSDoseDepositForCylinder3D::ComputeVolume ( G4Step ,
G4int  idx 
) [protected, virtual]

Reimplemented from G4PSDoseDeposit.

Definition at line 74 of file G4PSDoseDepositForCylinder3D.cc.

References G4INCL::Math::pi.

00074                                                                       {
00075   G4double r0 = (cylinderSize[2]/nSegment[2])*(idx);
00076   G4double r1 = (cylinderSize[2]/nSegment[2])*(idx+1);
00077   G4double dRArea = (r1*r1-r0*r0)*pi;
00078 
00079   // cylinderSize is given in Half Size
00080   G4double fullz      = cylinderSize[0]/nSegment[0]*2.;  
00081   G4double phiRatio  = 1./nSegment[1];
00082   G4double v = dRArea*fullz*phiRatio;
00083 
00084   return v;
00085 }

void G4PSDoseDepositForCylinder3D::SetCylinderSize ( G4double  dr,
G4double  dz 
)

Definition at line 64 of file G4PSDoseDepositForCylinder3D.cc.

00064                                                                           {
00065   cylinderSize.setX(dz);    //Z Phi R
00066   cylinderSize.setY(twopi); //Z Phi R
00067   cylinderSize.setZ(dr);    //Z Phi R
00068 }

void G4PSDoseDepositForCylinder3D::SetNumberOfSegments ( G4int  nSeg[3]  ) 

Definition at line 69 of file G4PSDoseDepositForCylinder3D.cc.

00069                                                                    {
00070   nSegment[0] = nSeg[0];  // Z
00071   nSegment[1] = nSeg[1];  // Phi
00072   nSegment[2] = nSeg[2];  // R
00073 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:53:02 2013 for Geant4 by  doxygen 1.4.7