@@ -995,6 +995,16 @@ def parse_cur_job(cur_job):
995995 return ensemble , nsteps , trj_freq , temps , press , pka_e , dt , nbeads
996996
997997
998+ def _get_lammps_job_settings (cur_job , jdata ):
999+ """Resolve per-job LAMMPS settings over workflow-wide defaults."""
1000+ return (
1001+ cur_job .get ("dt" , jdata ["model_devi_dt" ]),
1002+ cur_job .get ("neidelay" , jdata .get ("model_devi_neidelay" )),
1003+ cur_job .get ("taut" , jdata .get ("model_devi_taut" , 0.1 )),
1004+ cur_job .get ("taup" , jdata .get ("model_devi_taup" , 0.5 )),
1005+ )
1006+
1007+
9981008def expand_matrix_values (target_list , cur_idx = 0 ):
9991009 nvar = len (target_list )
10001010 if cur_idx == nvar :
@@ -1667,7 +1677,9 @@ def _make_model_devi_native(iter_index, jdata, mdata, conf_systems):
16671677 if iter_index >= len (model_devi_jobs ):
16681678 return False
16691679 cur_job = model_devi_jobs [iter_index ]
1670- ensemble , nsteps , trj_freq , temps , press , pka_e , dt , nbeads = parse_cur_job (cur_job )
1680+ ensemble , nsteps , trj_freq , temps , press , pka_e , _dt , nbeads = parse_cur_job (
1681+ cur_job
1682+ )
16711683 model_devi_f_avg_relative = jdata .get ("model_devi_f_avg_relative" , False )
16721684 model_devi_merge_traj = jdata .get ("model_devi_merge_traj" , False )
16731685 if (nbeads is not None ) and model_devi_f_avg_relative :
@@ -1682,23 +1694,17 @@ def _make_model_devi_native(iter_index, jdata, mdata, conf_systems):
16821694 raise RuntimeError (
16831695 "trj_freq should be a factor of nsteps for pimd. Please check your input."
16841696 )
1685- if dt is not None :
1686- model_devi_dt = dt
16871697 sys_idx = expand_idx (cur_job ["sys_idx" ])
16881698 if len (sys_idx ) != len (list (set (sys_idx ))):
16891699 raise RuntimeError ("system index should be uniq" )
16901700
16911701 use_ele_temp = jdata .get ("use_ele_temp" , 0 )
1692- model_devi_dt = jdata ["model_devi_dt" ]
1693- model_devi_neidelay = None
1694- if "model_devi_neidelay" in jdata :
1695- model_devi_neidelay = jdata ["model_devi_neidelay" ]
1696- model_devi_taut = 0.1
1697- if "model_devi_taut" in jdata :
1698- model_devi_taut = jdata ["model_devi_taut" ]
1699- model_devi_taup = 0.5
1700- if "model_devi_taup" in jdata :
1701- model_devi_taup = jdata ["model_devi_taup" ]
1702+ (
1703+ model_devi_dt ,
1704+ model_devi_neidelay ,
1705+ model_devi_taut ,
1706+ model_devi_taup ,
1707+ ) = _get_lammps_job_settings (cur_job , jdata )
17021708 mass_map = jdata ["mass_map" ]
17031709 nopbc = jdata .get ("model_devi_nopbc" , False )
17041710
0 commit comments