52 : zMin(minZ), zMax(maxZ)
54 LoadBiggsP(
"/doppler/p-biggs");
56 for (
G4int Z=zMin; Z<zMax+1; Z++)
58 LoadProfile(
"/doppler/profile",Z);
67 for (
auto& pos : profileMap)
80 if (Z>= zMin && Z <= zMax) n = nShells[Z-1];
88 if (Z < zMin || Z > zMax)
91 auto pos = profileMap.find(Z);
109 for (
G4int Z=zMin; Z<zMax; Z++)
118void G4DopplerProfile::LoadBiggsP(
const G4String& fileName)
120 std::ostringstream ost;
121 ost << fileName <<
".dat";
134 std::ifstream file(dirFile);
135 std::filebuf* lsdp = file.rdbuf();
137 if (! (lsdp->is_open()) )
154 if (biggsP.size() != nBiggs)
161void G4DopplerProfile::LoadProfile(
const G4String& fileName,
G4int Z)
163 std::ostringstream ost;
164 ost << fileName <<
"-" << Z <<
".dat";
170 G4String excep(
"G4LEDATA environment variable not set");
178 std::ifstream file(dirFile);
179 std::filebuf* lsdp = file.rdbuf();
181 if (! (lsdp->is_open()) )
204 for (
size_t i=0; i<nBiggs; i++)
208 biggs->push_back(biggsP[i]);
220 nShells.push_back(nShell);
222 profileMap[Z] = dataSetForZ;
const char * G4FindDataDir(const char *)
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
const G4VEMDataSet * Profiles(G4int Z) const
size_t NumberOfProfiles(G4int Z) const
G4DopplerProfile(G4int minZ=1, G4int maxZ=100)
const G4VEMDataSet * Profile(G4int Z, G4int ShellIndex) const
G4double RandomSelectMomentum(G4int Z, G4int shellIndex) const
virtual G4VDataSetAlgorithm * Clone() const =0
virtual const G4VEMDataSet * GetComponent(G4int componentId) const =0
virtual G4double RandomSelect(G4int componentId=0) const =0
virtual void AddComponent(G4VEMDataSet *dataSet)=0
virtual void PrintData(void) const =0
const char * name(G4int ptype)