197 int num_bonds = bonds_.size();
198 int num_angles = angles_.size();
199 int num_dihedrals = dihedrals_.size();
200 int num_impropers = impropers_.size();
201 int num_cmaps = cmaps_.size();
209 for(
int i = 0; i < num_bonds; ++i){
216 func_type = bonds_[i]->GetFuncType();
222 for(
int i = 0; i < num_angles; ++i){
229 func_type = angles_[i]->GetFuncType();
235 for(
int i = 0; i < num_dihedrals; ++i){
242 func_type = dihedrals_[i]->GetFuncType();
245 ds & *(dihedrals_[i]);
248 for(
int i = 0; i < num_impropers; ++i){
255 func_type = impropers_[i]->GetFuncType();
258 ds & *(impropers_[i]);
261 for(
int i = 0; i < num_cmaps; ++i){
268 func_type = cmaps_[i]->GetFuncType();
274 int num_replace_atoms = replace_old_atom_name_.size();
275 ds & num_replace_atoms;
278 replace_old_atom_name_ = std::vector<String>(num_replace_atoms);
279 replace_new_atom_name_ = std::vector<String>(num_replace_atoms);
280 replace_new_atom_type_ = std::vector<String>(num_replace_atoms);
281 replace_new_charge_ = std::vector<Real>(num_replace_atoms);
284 for(
int i = 0; i < num_replace_atoms; ++i){
285 ds & replace_old_atom_name_[i];
286 ds & replace_new_atom_name_[i];
287 ds & replace_new_atom_type_[i];
288 ds & replace_new_charge_[i];
291 int num_add_atoms = add_add_number_.size();
295 add_add_number_ = std::vector<int>(num_add_atoms);
296 add_methods_ = std::vector<int>(num_add_atoms);
297 add_atom_names_ = std::vector<std::vector<String> >(num_add_atoms);
298 add_anchor_atom_names_ = std::vector<std::vector<String> >(num_add_atoms);
299 add_atom_types_ = std::vector<String>(num_add_atoms);
300 add_charges_ = std::vector<Real>(num_add_atoms);
303 for(
int i = 0; i < num_add_atoms; ++i){
304 ds & add_add_number_[i];
305 ds & add_methods_[i];
306 ds & add_atom_types_[i];
307 ds & add_charges_[i];
308 int num_add_atom_names = add_atom_names_[i].size();
309 int num_add_anchor_atom_names = add_anchor_atom_names_[i].size();
310 ds & num_add_atom_names;
311 ds & num_add_anchor_atom_names;
313 add_atom_names_[i] = std::vector<String>(num_add_atom_names);
314 add_anchor_atom_names_[i] = std::vector<String>(num_add_anchor_atom_names);
316 for(
int j = 0; j < num_add_atom_names; ++j){
317 ds & add_atom_names_[i][j];
319 for(
int j = 0; j < num_add_anchor_atom_names; ++j){
320 ds & add_anchor_atom_names_[i][j];
324 int num_delete_atoms = delete_atom_names_.size();
325 ds & num_delete_atoms;
327 delete_atom_names_ = std::vector<String>(num_delete_atoms);
329 for(
int i = 0; i < num_delete_atoms; ++i){
330 ds & delete_atom_names_[i];