change format for equilibrium values and update writer and reader code, so it will become compatible with class2 angles/dihedrals/impropers
This commit is contained in:
@ -287,8 +287,8 @@ void generate_yaml_file(const char *outfile, const TestConfig &config)
|
||||
|
||||
// equilibrium angle
|
||||
std::stringstream eqstr;
|
||||
eqstr << lmp->force->angle->equilibrium_angle(1);
|
||||
for (std::size_t i=1; i < config.angle_coeff.size(); ++i) {
|
||||
eqstr << lmp->atom->nangletypes;
|
||||
for (std::size_t i=0; i < lmp->atom->nangletypes; ++i) {
|
||||
eqstr << " " << lmp->force->angle->equilibrium_angle(i+1);
|
||||
}
|
||||
writer.emit("equilibrium", eqstr.str());
|
||||
|
||||
@ -287,8 +287,8 @@ void generate_yaml_file(const char *outfile, const TestConfig &config)
|
||||
|
||||
// equilibrium distance
|
||||
std::stringstream eqstr;
|
||||
eqstr << lmp->force->bond->equilibrium_distance(1);
|
||||
for (std::size_t i=1; i < config.bond_coeff.size(); ++i) {
|
||||
eqstr << lmp->atom->nbondtypes;
|
||||
for (std::size_t i=0; i < lmp->atom->nbondtypes; ++i) {
|
||||
eqstr << " " << lmp->force->bond->equilibrium_distance(i+1);
|
||||
}
|
||||
writer.emit("equilibrium", eqstr.str());
|
||||
|
||||
@ -213,7 +213,9 @@ void TestConfigReader::equilibrium(const yaml_event_t & event) {
|
||||
std::stringstream data((char *)event.data.scalar.value);
|
||||
config.equilibrium.clear();
|
||||
double value;
|
||||
while (1) {
|
||||
std::size_t num;
|
||||
data >> num;
|
||||
for (std::size_t i=0; i < num; ++i) {
|
||||
data >> value;
|
||||
if (data.eof()) break;
|
||||
config.equilibrium.push_back(value);
|
||||
|
||||
Reference in New Issue
Block a user