G4PSPassageCellFluxForCylinder3D Class Reference

#include <G4PSPassageCellFluxForCylinder3D.hh>

Inheritance diagram for G4PSPassageCellFluxForCylinder3D:

G4PSPassageCellFlux3D G4PSPassageCellFlux G4VPrimitiveScorer

Public Member Functions

 G4PSPassageCellFluxForCylinder3D (G4String name, G4int ni=1, G4int nj=1, G4int nk=1, G4int depi=2, G4int depj=1, G4int depk=0)
 G4PSPassageCellFluxForCylinder3D (G4String name, const G4String &unit, G4int ni=1, G4int nj=1, G4int nk=1, G4int depi=2, G4int depj=1, G4int depk=0)
virtual ~G4PSPassageCellFluxForCylinder3D ()
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 51 of file G4PSPassageCellFluxForCylinder3D.hh.


Constructor & Destructor Documentation

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

Definition at line 48 of file G4PSPassageCellFluxForCylinder3D.cc.

00051   :G4PSPassageCellFlux3D(name,ni,nj,nk,di,dj,dk)
00052 {
00053   nSegment[0] = nSegment[1] = nSegment[2] = 0;
00054 }

G4PSPassageCellFluxForCylinder3D::G4PSPassageCellFluxForCylinder3D ( 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 56 of file G4PSPassageCellFluxForCylinder3D.cc.

00059   :G4PSPassageCellFlux3D(name,unit,ni,nj,nk,di,dj,dk)
00060 {
00061   nSegment[0] = nSegment[1] = nSegment[2] = 0;
00062 }

G4PSPassageCellFluxForCylinder3D::~G4PSPassageCellFluxForCylinder3D (  )  [virtual]

Definition at line 64 of file G4PSPassageCellFluxForCylinder3D.cc.

00065 {;}


Member Function Documentation

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

Reimplemented from G4PSPassageCellFlux.

Definition at line 77 of file G4PSPassageCellFluxForCylinder3D.cc.

References G4INCL::Math::pi.

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

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

Definition at line 67 of file G4PSPassageCellFluxForCylinder3D.cc.

00067                                                                               {
00068   cylinderSize.setX(dz);    //Z Phi R
00069   cylinderSize.setY(twopi); //Z Phi R
00070   cylinderSize.setZ(dr);    //Z Phi R
00071 }

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

Definition at line 72 of file G4PSPassageCellFluxForCylinder3D.cc.

00072                                                                        {
00073   nSegment[0] = nSeg[0];  // Z
00074   nSegment[1] = nSeg[1];  // Phi
00075   nSegment[2] = nSeg[2];  // R
00076 }


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