62 |
|
atomType->setEAM(); |
63 |
|
parseEAMParamFile(ff, atomType, potentialParamFile, atomType->getIdent()); |
64 |
|
} else { |
65 |
< |
|
65 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Can not find AtomType [%s]\n", |
66 |
> |
atomTypeName.c_str()); |
67 |
> |
painCave.isFatal = 1; |
68 |
> |
simError(); |
69 |
|
} |
70 |
|
|
71 |
|
} else { |
72 |
< |
|
72 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Not enough tokens at line %d\n", |
73 |
> |
lineNo); |
74 |
> |
painCave.isFatal = 1; |
75 |
> |
simError(); |
76 |
|
} |
77 |
|
|
72 |
– |
|
78 |
|
} |
79 |
|
|
80 |
|
void EAMAtomTypesSectionParser::parseEAMParamFile(ForceField& ff, AtomType* atomType, |
103 |
|
latticeConstant = tokenizer1.nextTokenAsDouble(); |
104 |
|
lattice = tokenizer1.nextToken(); |
105 |
|
}else { |
106 |
< |
std::cerr << "Not enought tokens" << std::endl; |
106 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Not enough tokens\n"); |
107 |
> |
painCave.isFatal = 1; |
108 |
> |
simError(); |
109 |
|
} |
103 |
– |
} else { |
104 |
– |
|
110 |
|
} |
111 |
|
|
112 |
|
// The third line is nrho, drho, nr, dr and rcut |
123 |
|
eamParam.dr = tokenizer2.nextTokenAsDouble(); |
124 |
|
eamParam.rcut = tokenizer2.nextTokenAsDouble(); |
125 |
|
}else { |
121 |
– |
std::cerr << "Not enought tokens" << std::endl; |
122 |
– |
} |
123 |
– |
} else { |
126 |
|
|
127 |
< |
} |
127 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Not enough tokens\n"); |
128 |
> |
painCave.isFatal = 1; |
129 |
> |
simError(); |
130 |
|
|
131 |
+ |
} |
132 |
+ |
} |
133 |
+ |
|
134 |
|
parseEAMArray(*ppfStream, eamParam.Frhovals, eamParam.nrho); |
135 |
|
parseEAMArray(*ppfStream, eamParam.rvals, eamParam.nr); |
136 |
|
parseEAMArray(*ppfStream, eamParam.rhovals, eamParam.nr); |
161 |
|
array.push_back(tokenizer.nextTokenAsDouble()); |
162 |
|
} |
163 |
|
} else { |
164 |
< |
|
164 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Not enough tokens\n"); |
165 |
> |
painCave.isFatal = 1; |
166 |
> |
simError(); |
167 |
|
} |
168 |
|
++lineCount; |
169 |
|
} |
170 |
|
|
171 |
|
if (lineCount < nlinesToRead) { |
172 |
< |
|
172 |
> |
sprintf(painCave.errMsg, "EAMAtomTypesSectionParser Error: Not enough lines to read\n"); |
173 |
> |
painCave.isFatal = 1; |
174 |
> |
simError(); |
175 |
|
} |
176 |
|
|
177 |
|
} |