Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4V3DNucleus Class Referenceabstract

#include <G4V3DNucleus.hh>

Inheritance diagram for G4V3DNucleus:

Public Member Functions

 G4V3DNucleus ()
 
virtual ~G4V3DNucleus ()
 
virtual void Init (G4int theA, G4int theZ)=0
 
virtual G4bool StartLoop ()=0
 
virtual G4NucleonGetNextNucleon ()=0
 
virtual const std::vector
< G4Nucleon > & 
GetNucleons ()=0
 
virtual G4int GetMassNumber ()=0
 
virtual G4double GetMass ()=0
 
virtual G4int GetCharge ()=0
 
virtual G4double GetNuclearRadius ()=0
 
virtual G4double GetNuclearRadius (const G4double maxRelativeDensity)=0
 
virtual G4double GetOuterRadius ()=0
 
virtual G4double CoulombBarrier ()=0
 
virtual void DoLorentzBoost (const G4LorentzVector &theBoost)=0
 
virtual void DoLorentzBoost (const G4ThreeVector &theBeta)=0
 
virtual void DoLorentzContraction (const G4LorentzVector &theBoost)=0
 
virtual void DoLorentzContraction (const G4ThreeVector &theBeta)=0
 
virtual void DoTranslation (const G4ThreeVector &theShift)=0
 
virtual const G4VNuclearDensityGetNuclearDensity () const =0
 
virtual void SortNucleonsIncZ ()=0
 
virtual void SortNucleonsDecZ ()=0
 
std::pair< G4double, G4doubleChooseImpactXandY (G4double maxImpact)
 
std::pair< G4double, G4doubleRefetchImpactXandY ()
 

Detailed Description

Definition at line 41 of file G4V3DNucleus.hh.

Constructor & Destructor Documentation

G4V3DNucleus::G4V3DNucleus ( )

Definition at line 32 of file G4V3DNucleus.cc.

33 {
34 }
G4V3DNucleus::~G4V3DNucleus ( )
virtual

Definition at line 41 of file G4V3DNucleus.cc.

42 {
43 }

Member Function Documentation

std::pair< G4double, G4double > G4V3DNucleus::ChooseImpactXandY ( G4double  maxImpact)
inline

Definition at line 87 of file G4V3DNucleus.hh.

88 {
89  G4double x,y;
90  do
91  {
92  x = 2*G4UniformRand() - 1;
93  y = 2*G4UniformRand() - 1;
94  }
95  while(x*x + y*y > 1); /* Loop checking, 30-Oct-2015, G.Folger */
96 
97  G4double impactX = x*(maxImpact);
98  G4double impactY = y*(maxImpact);
99  theImpactParameter.first = impactX;
100  theImpactParameter.second = impactY;
101  return theImpactParameter;
102 }
#define G4UniformRand()
Definition: Randomize.hh:97
double G4double
Definition: G4Types.hh:76

Here is the caller graph for this function:

virtual G4double G4V3DNucleus::CoulombBarrier ( )
pure virtual

Implemented in G4Fancy3DNucleus.

virtual void G4V3DNucleus::DoLorentzBoost ( const G4LorentzVector theBoost)
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual void G4V3DNucleus::DoLorentzBoost ( const G4ThreeVector theBeta)
pure virtual

Implemented in G4Fancy3DNucleus.

virtual void G4V3DNucleus::DoLorentzContraction ( const G4LorentzVector theBoost)
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual void G4V3DNucleus::DoLorentzContraction ( const G4ThreeVector theBeta)
pure virtual

Implemented in G4Fancy3DNucleus.

virtual void G4V3DNucleus::DoTranslation ( const G4ThreeVector theShift)
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4int G4V3DNucleus::GetCharge ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4double G4V3DNucleus::GetMass ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4int G4V3DNucleus::GetMassNumber ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4Nucleon* G4V3DNucleus::GetNextNucleon ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual const G4VNuclearDensity* G4V3DNucleus::GetNuclearDensity ( ) const
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4double G4V3DNucleus::GetNuclearRadius ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4double G4V3DNucleus::GetNuclearRadius ( const G4double  maxRelativeDensity)
pure virtual

Implemented in G4Fancy3DNucleus.

virtual const std::vector<G4Nucleon>& G4V3DNucleus::GetNucleons ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4double G4V3DNucleus::GetOuterRadius ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual void G4V3DNucleus::Init ( G4int  theA,
G4int  theZ 
)
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

std::pair<G4double, G4double> G4V3DNucleus::RefetchImpactXandY ( )
inline

Definition at line 77 of file G4V3DNucleus.hh.

77 {return theImpactParameter;}
virtual void G4V3DNucleus::SortNucleonsDecZ ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual void G4V3DNucleus::SortNucleonsIncZ ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:

virtual G4bool G4V3DNucleus::StartLoop ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Here is the caller graph for this function:


The documentation for this class was generated from the following files: