Geant4  10.03.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
XCrystalIntegratedDensityHub Class Reference

#include <XCrystalIntegratedDensityHub.hh>

Public Member Functions

void SetDensityElectron (XVCrystalCharacteristic *)
 
XVCrystalCharacteristicGetDensityElectron ()
 
void SetDensityNuclei (XVCrystalCharacteristic *)
 
XVCrystalCharacteristicGetDensityNuclei ()
 
void SetPotential (XVCrystalCharacteristic *)
 
XVCrystalCharacteristicGetPotential ()
 
void SetXPhysicalLattice (XPhysicalLattice *)
 
XPhysicalLatticeGetXPhysicalLattice ()
 
void SetIntegratedDensityNuclei (XVCrystalIntegratedDensity *, G4int)
 
XVCrystalIntegratedDensityGetIntegratedDensityNuclei (G4int)
 
void SetIntegratedDensityElectron (XVCrystalIntegratedDensity *, G4int)
 
XVCrystalIntegratedDensityGetIntegratedDensityElectron (G4int)
 
void PrintOnFiles (const G4String &)
 
void ReadFromFiles (const G4String &)
 
G4bool HasBeenInitialized (XPhysicalLattice *)
 
G4double GetIntegratedDensityElectron (G4double, XPhysicalLattice *, G4int)
 
G4double GetIntegratedDensityNuclei (G4double, XPhysicalLattice *, G4int)
 
void InitializeTables ()
 
 XCrystalIntegratedDensityHub ()
 
 ~XCrystalIntegratedDensityHub ()
 

Detailed Description

Definition at line 38 of file XCrystalIntegratedDensityHub.hh.

Constructor & Destructor Documentation

XCrystalIntegratedDensityHub::XCrystalIntegratedDensityHub ( )

Definition at line 32 of file XCrystalIntegratedDensityHub.cc.

32  {
33 }
XCrystalIntegratedDensityHub::~XCrystalIntegratedDensityHub ( )

Definition at line 37 of file XCrystalIntegratedDensityHub.cc.

37  {
38 }

Member Function Documentation

XVCrystalCharacteristic * XCrystalIntegratedDensityHub::GetDensityElectron ( )

Definition at line 62 of file XCrystalIntegratedDensityHub.cc.

62  {
63  return fDensityElectron;
64 }
XVCrystalCharacteristic * XCrystalIntegratedDensityHub::GetDensityNuclei ( )

Definition at line 75 of file XCrystalIntegratedDensityHub.cc.

75  {
76  return fDensityNuclei;
77 }
XVCrystalIntegratedDensity * XCrystalIntegratedDensityHub::GetIntegratedDensityElectron ( G4int  vParticleCharge)

Definition at line 150 of file XCrystalIntegratedDensityHub.cc.

150  {
151  if(vParticleCharge < 0.){
152  return fIntDensElectronNegative;
153  }
154  else if(vParticleCharge > 0.){
155  return fIntDensElectronPositive;
156  }
157  else{
158  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0" ;
159  G4cout << G4endl;
160  return NULL;
161  }
162 }
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
G4double XCrystalIntegratedDensityHub::GetIntegratedDensityElectron ( G4double  vPotential,
XPhysicalLattice vLattice,
G4int  vParticleCharge 
)

Definition at line 229 of file XCrystalIntegratedDensityHub.cc.

231  {
232  if(vParticleCharge < 0.){
233  return fIntDensElectronNegative->GetIntegratedDensity(vPotential,
234  vLattice,
235  vParticleCharge);
236  }
237  else if(vParticleCharge > 0.){
238  return fIntDensElectronPositive->GetIntegratedDensity(vPotential,
239  vLattice,
240  vParticleCharge);
241  }
242  else{
243  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0";
244  G4cout << G4endl;
245  return -1;
246  }
247 }
G4double GetIntegratedDensity(G4double, XPhysicalLattice *, G4int)
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61

Here is the call graph for this function:

XVCrystalIntegratedDensity * XCrystalIntegratedDensityHub::GetIntegratedDensityNuclei ( G4int  vParticleCharge)

Definition at line 115 of file XCrystalIntegratedDensityHub.cc.

115  {
116  if(vParticleCharge < 0.){
117  return fIntDensNucleiNegative;
118  }
119  else if(vParticleCharge > 0.){
120  return fIntDensNucleiPositive;
121  }
122  else{
123  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0";
124  G4cout << G4endl;
125  return NULL;
126  }
127 }
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
G4double XCrystalIntegratedDensityHub::GetIntegratedDensityNuclei ( G4double  vPotential,
XPhysicalLattice vLattice,
G4int  vParticleCharge 
)

Definition at line 206 of file XCrystalIntegratedDensityHub.cc.

208  {
209  if(vParticleCharge < 0.){
210  return fIntDensNucleiNegative->GetIntegratedDensity(vPotential,
211  vLattice,
212  vParticleCharge);
213  }
214  else if(vParticleCharge > 0.){
215  return fIntDensNucleiPositive->GetIntegratedDensity(vPotential,
216  vLattice,
217  vParticleCharge);
218  }
219  else{
220  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0";
221  G4cout << G4endl;
222  return -1;
223  }
224 }
G4double GetIntegratedDensity(G4double, XPhysicalLattice *, G4int)
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61

Here is the call graph for this function:

XVCrystalCharacteristic * XCrystalIntegratedDensityHub::GetPotential ( )

Definition at line 49 of file XCrystalIntegratedDensityHub.cc.

49  {
50  return fPotential;
51 }
XPhysicalLattice * XCrystalIntegratedDensityHub::GetXPhysicalLattice ( )

Definition at line 91 of file XCrystalIntegratedDensityHub.cc.

91  {
92  return fLattice;
93 }

Here is the caller graph for this function:

G4bool XCrystalIntegratedDensityHub::HasBeenInitialized ( XPhysicalLattice vLattice)

Definition at line 166 of file XCrystalIntegratedDensityHub.cc.

167  {
168  //now it checks only of the table is initialized,
169  //it does not check if the particular crystal is initialized.
170  //To be changed in the future!
171  if(vLattice != GetXPhysicalLattice()) return false;
172  else return true;
173 }

Here is the call graph for this function:

void XCrystalIntegratedDensityHub::InitializeTables ( )

Definition at line 177 of file XCrystalIntegratedDensityHub.cc.

177  {
178  fIntDensElectronNegative->SetPotential(fPotential);
179  fIntDensElectronNegative->SetDensity(fDensityElectron);
180  fIntDensElectronNegative->SetXPhysicalLattice(fLattice);
181  fIntDensElectronNegative->SetParticleCharge(-1);
182  fIntDensElectronNegative->InitializeTable();
183 
184  fIntDensElectronPositive->SetPotential(fPotential);
185  fIntDensElectronPositive->SetDensity(fDensityElectron);
186  fIntDensElectronPositive->SetXPhysicalLattice(fLattice);
187  fIntDensElectronPositive->SetParticleCharge(+1);
188  fIntDensElectronPositive->InitializeTable();
189 
190  fIntDensNucleiNegative->SetPotential(fPotential);
191  fIntDensNucleiNegative->SetDensity(fDensityNuclei);
192  fIntDensNucleiNegative->SetXPhysicalLattice(fLattice);
193  fIntDensNucleiNegative->SetParticleCharge(-1);
194  fIntDensNucleiNegative->InitializeTable();
195 
196  fIntDensNucleiPositive->SetPotential(fPotential);
197  fIntDensNucleiPositive->SetDensity(fDensityNuclei);
198  fIntDensNucleiPositive->SetXPhysicalLattice(fLattice);
199  fIntDensNucleiPositive->SetParticleCharge(+1);
200  fIntDensNucleiPositive->InitializeTable();
201 }
void SetXPhysicalLattice(XPhysicalLattice *)
void SetDensity(XVCrystalCharacteristic *)
void SetPotential(XVCrystalCharacteristic *)

Here is the call graph for this function:

void XCrystalIntegratedDensityHub::PrintOnFiles ( const G4String vFileName)

Definition at line 251 of file XCrystalIntegratedDensityHub.cc.

251  {
252  std::string filename;
253  fIntDensElectronNegative->PrintOnFile(filename=vFileName + "_neg_eld.txt");
254  fIntDensElectronPositive->PrintOnFile(filename=vFileName + "_pos_eld.txt");
255 
256  fIntDensNucleiNegative->PrintOnFile(filename=vFileName + "_neg_nud.txt");
257  fIntDensNucleiPositive->PrintOnFile(filename=vFileName + "_pos_nud.txt");
258 }

Here is the call graph for this function:

void XCrystalIntegratedDensityHub::ReadFromFiles ( const G4String vFileName)

Definition at line 262 of file XCrystalIntegratedDensityHub.cc.

262  {
263  std::string filename;
264  fIntDensElectronNegative->ReadFromFile(filename=vFileName + "_neg_eld.txt");
265  fIntDensElectronPositive->ReadFromFile(filename=vFileName + "_pos_eld.txt");
266 
267  fIntDensNucleiNegative->ReadFromFile(filename=vFileName + "_neg_nud.txt");
268  fIntDensNucleiPositive->ReadFromFile(filename=vFileName + "_pos_nud.txt");
269 }

Here is the call graph for this function:

void XCrystalIntegratedDensityHub::SetDensityElectron ( XVCrystalCharacteristic vDensity)

Definition at line 55 of file XCrystalIntegratedDensityHub.cc.

56  {
57  fDensityElectron = vDensity;
58 }

Here is the caller graph for this function:

void XCrystalIntegratedDensityHub::SetDensityNuclei ( XVCrystalCharacteristic vDensity)

Definition at line 68 of file XCrystalIntegratedDensityHub.cc.

69  {
70  fDensityNuclei = vDensity;
71 }

Here is the caller graph for this function:

void XCrystalIntegratedDensityHub::SetIntegratedDensityElectron ( XVCrystalIntegratedDensity vDensity,
G4int  vParticleCharge 
)

Definition at line 131 of file XCrystalIntegratedDensityHub.cc.

133  {
134  if(vParticleCharge < 0){
135  fIntDensElectronNegative = vDensity;
136  }
137  else if(vParticleCharge > 0){
138  fIntDensElectronPositive = vDensity;
139  }
140  else{
141  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0";
142  G4cout << G4endl;
143  }
144 }
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61

Here is the caller graph for this function:

void XCrystalIntegratedDensityHub::SetIntegratedDensityNuclei ( XVCrystalIntegratedDensity vDensity,
G4int  vParticleCharge 
)

Definition at line 97 of file XCrystalIntegratedDensityHub.cc.

99  {
100  if(vParticleCharge < 0){
101  fIntDensNucleiNegative = vDensity;
102  }
103  else if(vParticleCharge > 0){
104  fIntDensNucleiPositive = vDensity;
105  }
106  else{
107  G4cout << "XCrystalIntegratedDensityHub:: ERROR - Charge == 0";
108  G4cout << G4endl;
109  }
110 }
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61

Here is the caller graph for this function:

void XCrystalIntegratedDensityHub::SetPotential ( XVCrystalCharacteristic vPotential)

Definition at line 42 of file XCrystalIntegratedDensityHub.cc.

43  {
44  fPotential = vPotential;
45 }

Here is the caller graph for this function:

void XCrystalIntegratedDensityHub::SetXPhysicalLattice ( XPhysicalLattice vLattice)

Definition at line 81 of file XCrystalIntegratedDensityHub.cc.

82  {
83  fLattice = vLattice;
84  fDensityElectron->InitializePhysicalLattice(fLattice);
85  fDensityNuclei->InitializePhysicalLattice(fLattice);
86  fPotential->InitializePhysicalLattice(fLattice);
87 }
void InitializePhysicalLattice(XPhysicalLattice *)

Here is the call graph for this function:


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