@@ -147,6 +147,7 @@ static struct cfg *make_cfg(void)
147147 cfg_add_bool (cfg , "hess_central" , false);
148148 cfg_add_double (cfg , "num_step_dist" , 0.001 );
149149 cfg_add_double (cfg , "num_step_angle" , 0.01 );
150+ cfg_add_double (cfg , "pol_damp_value" , 0.6 );
150151
151152 cfg_add_enum (cfg , "ensemble" , ENSEMBLE_TYPE_NVE ,
152153 "nve\n"
@@ -351,6 +352,7 @@ static struct efp *create_efp(const struct cfg *cfg, const struct sys *sys)
351352 .elec_damp = cfg_get_enum (cfg , "elec_damp" ),
352353 .disp_damp = cfg_get_enum (cfg , "disp_damp" ),
353354 .pol_damp = cfg_get_enum (cfg , "pol_damp" ),
355+ .pol_damp_tt_value = cfg_get_double (cfg , "pol_damp_value" ),
354356 .pol_driver = cfg_get_enum (cfg , "pol_driver" ),
355357 .enable_pbc = cfg_get_bool (cfg , "enable_pbc" ),
356358 .enable_elpot = cfg_get_bool (cfg , "enable_elpot" ),
@@ -367,7 +369,7 @@ static struct efp *create_efp(const struct cfg *cfg, const struct sys *sys)
367369 .print = cfg_get_int (cfg , "print" )
368370 };
369371
370- // adjustoing special terms
372+ // adjusting special terms
371373 if (opts .special_terms == 0 ) opts .special_terms = opts .terms ;
372374
373375 enum efp_coord_type coord_type = cfg_get_enum (cfg , "coord" );
@@ -376,14 +378,6 @@ static struct efp *create_efp(const struct cfg *cfg, const struct sys *sys)
376378 if (!efp )
377379 error ("unable to create efp object" );
378380
379- if (cfg_get_bool (cfg , "single_params_file" ))
380- check_fail (efp_add_potential (efp , cfg_get_string (cfg , "efp_params_file" )));
381- else
382- add_potentials (efp , cfg , sys );
383-
384- for (size_t i = 0 ; i < sys -> n_frags ; i ++ )
385- check_fail (efp_add_fragment (efp , sys -> frags [i ].name ));
386-
387381 if (sys -> n_charges > 0 ) {
388382 double q [sys -> n_charges ];
389383 double pos [3 * sys -> n_charges ];
@@ -407,10 +401,19 @@ static struct efp *create_efp(const struct cfg *cfg, const struct sys *sys)
407401 if (cfg_get_bool (cfg , "enable_ff" ))
408402 opts .terms &= ~(EFP_TERM_ELEC | EFP_TERM_POL | EFP_TERM_DISP | EFP_TERM_XR );
409403
404+ check_fail (efp_set_opts (efp , & opts ));
405+
406+ if (cfg_get_bool (cfg , "single_params_file" ))
407+ check_fail (efp_add_potential (efp , cfg_get_string (cfg , "efp_params_file" )));
408+ else
409+ add_potentials (efp , cfg , sys );
410+
411+ for (size_t i = 0 ; i < sys -> n_frags ; i ++ )
412+ check_fail (efp_add_fragment (efp , sys -> frags [i ].name ));
413+
410414 if (opts .enable_pairwise )
411415 check_fail (efp_add_ligand (efp , opts .ligand ));
412416
413- check_fail (efp_set_opts (efp , & opts ));
414417 check_fail (efp_prepare (efp ));
415418 check_fail (efp_set_symmlist (efp ));
416419
0 commit comments