63   : zMin(minZ), zMax(maxZ),
    73   std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::iterator 
pos;
    96   G4int id = Z*100 + parameterIndex;
    97   std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::const_iterator 
pos;
   100   if (pos!= 
param.end()) {
   104     if(shellIndex < nShells) { 
   110       G4cout << 
"WARNING: G4IonisationParameters::FindParameter "   111              << 
"has no parameters for shell= " << shellIndex 
   116     G4cout << 
"WARNING: G4IonisationParameters::Parameter "   117            << 
"did not find ID = "   127   std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::const_iterator 
pos;
   130   if (pos!= 
excit.end()) {
   137     G4cout << 
"WARNING: G4IonisationParameters::Excitation "   138            << 
"did not find ID = "   155   if (materialTable == 0)
   156      G4Exception(
"G4RDeIonisationParameters::LoadData()", 
"InvalidSetup",
   161   for (
G4int m=0; 
m<nMaterials; 
m++) {
   167     for (
size_t iEl=0; iEl<nElements; iEl++) {
   168       G4Element* element = (*elementVector)[iEl];
   176   char* path = getenv(
"G4LEDATA");
   179       G4String excep(
"G4LEDATA environment variable not set!");
   180       G4Exception(
"G4RDeIonisationParameters::LoadData()", 
"InvalidSetup",
   192   for (
size_t i=0; i<nZ; i++) {
   195     std::ostringstream ost;
   196     ost << pathString << Z << 
".dat";
   200     std::filebuf* lsdp = file.rdbuf();
   202     if (! (lsdp->is_open()) ) {
   204       + 
name + 
G4String(
" not found. The version 1.# of G4LEDATA should be used");
   205       G4Exception(
"G4RDeIonisationParameters::LoadData()", 
"DataNotFound",
   220     std::vector<G4RDVEMDataSet*> p;
   221     for (
size_t k=0; k<
length; k++) 
   225     p.push_back(composite);
   229     std::vector<G4DataVector*> 
a;
   230     for (
size_t j=0; j<
length; j++) 
   238       file >> energy >> sum;
   239       if (energy == -2) 
break;
   243         a[0]->push_back(sum);
   244         for (
size_t j=0; j<length-1; j++) {
   247       a[j + 1]->push_back(qRead);
   253     for (
size_t k=0; k<
length; k++) {
   260       size_t eSize = e.size();
   261       for (
size_t s=0; 
s<eSize; 
s++) {
   262            eVector->push_back(e[
s]);
   266       p[k]->AddComponent(
set);
   270         for (
size_t j2=0; j2<
length; j2++) {
   276     } 
while (energy > -2);
   280     for (
size_t kk=0; kk<
length; kk++) 
   282     G4int id = Z*100 + kk;
   289   std::ifstream file_a(name_a);
   290   std::filebuf* lsdp_a = file_a.rdbuf();
   291   G4String pathString_b(path);
   292   G4String name_b = pathString_b + G4String(
"/ioni/ion-ex-sig.dat");  
   293   std::ifstream file_b(name_b);
   294   std::filebuf* lsdp_b = file_b.rdbuf();
   296   if (! (lsdp_a->is_open()) ) {
   297      G4String excep = G4String(
"Cannot open file ")
   299      G4Exception(
"G4RDeIonisationParameters::LoadData()", 
"CannotOpenFile",
   302   if (! (lsdp_b->is_open()) ) {
   303      G4String excep = G4String(
"Cannot open file ")
   305      G4Exception(
"G4RDeIonisationParameters::LoadData()", 
"CannotOpenFile",
   324     file_a >> ener >> sig;
   325     file_b >> ener1 >> sig1;
   328       G4cout << 
"G4RDeIonisationParameters: problem in excitation data "   330              << 
" ener1= " << ener1
   339     } 
else if (ener == -1) {
   350     size_t eSize = e.size();
   351     for (
size_t s=0; 
s<eSize; 
s++) {
   352            eVector->push_back(e[
s]);
   353            dVector->push_back(d[s]);
   363       e.push_back(ener*
MeV);
   364       d.push_back(sig1*sig*
barn*MeV);
   366   } 
while (ener != -2);
   376   G4cout << 
"===== G4RDeIonisationParameters =====" << 
G4endl;
   380   std::map<G4int,G4RDVEMDataSet*,std::less<G4int> >::const_iterator 
pos;
   382   for (
size_t i=0; i<nZ; i++) {
   385     for (
size_t j=0; j<
length; j++) {
   389       pos = 
param.find(index);
   390       if (pos!= 
param.end()) {
   394         for (
size_t k=0; k<nShells; k++) {
   396           G4cout << 
"===== Z= " << Z << 
" shell= " << k 
   397                  << 
" parameter[" << j << 
"]  ====="    405   G4cout << 
"====================================" << 
G4endl;
 
std::vector< G4Element * > G4ElementVector
 
static G4MaterialTable * GetMaterialTable()
 
std::vector< G4Material * > G4MaterialTable
 
virtual const G4RDVEMDataSet * GetComponent(G4int componentId) const =0
 
G4double Excitation(G4int Z, G4double e) const
 
virtual size_t NumberOfComponents(void) const =0
 
G4double Parameter(G4int Z, G4int shellIndex, G4int parameterIndex, G4double e) const
 
G4GLOB_DLL std::ostream G4cout
 
std::map< G4int, G4RDVEMDataSet *, std::less< G4int > > excit
 
virtual G4double FindValue(G4double x, G4int componentId=0) const =0
 
virtual void PrintData(void) const =0
 
static size_t GetNumberOfMaterials()
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
virtual const G4DataVector & GetEnergies(G4int componentId) const =0
 
std::map< G4int, G4RDVEMDataSet *, std::less< G4int > > param
 
G4bool contains(const G4double &) const
 
size_t GetNumberOfElements() const
 
const G4ElementVector * GetElementVector() const
 
~G4RDeIonisationParameters()
 
static const G4double pos
 
G4RDeIonisationParameters(G4int minZ=1, G4int maxZ=99)