diff --git a/atomisticparsers/gromacs/parser.py b/atomisticparsers/gromacs/parser.py index a159205..9aebda6 100644 --- a/atomisticparsers/gromacs/parser.py +++ b/atomisticparsers/gromacs/parser.py @@ -233,7 +233,7 @@ def str_to_step_info(val_in): ), Quantity( 'input_parameters', - r'Input Parameters:\s*([\s\S]+?)\n\n', + r'Input Parameters:\s*\n([\s\S]+?)\n\n', str_operation=str_to_input_parameters, ), Quantity('maximum_force', r'Norm of force\s*([\s\S]+?)\n\n', flatten=False), @@ -655,7 +655,7 @@ def get_force_field_parameters(self, gromacs_version: str = None) -> List[Dict]: tpr_setting.F_VSITE3FD, tpr_setting.F_VSITE3FAD, ]: - parameters.append(data.unpack_real()) # vsite.a + parameters.append(data.unpack_reafilel()) # vsite.a elif i in [ tpr_setting.F_VSITE3OUT, @@ -1559,10 +1559,18 @@ def parse_workflow(self): ) sec_fe = self.archive.workflow2.results.free_energy_calculations[0] sec_fe.method_ref = sec_fe_parameters - sec_fe.value_total_energy_magnitude = columns[:, 0] - sec_fe.value_total_energy_derivative_magnitude = columns[:, 1] - sec_fe.value_total_energy_differences_magnitude = columns[:, 2:-1] - sec_fe.value_PV_energy_magnitude = columns[:, -1] + sec_fe.value_total_energy_magnitude = ( + columns[:, 0] * self._gro_energy_units + ) + sec_fe.value_total_energy_derivative_magnitude = ( + columns[:, 1] * self._gro_energy_units + ) + sec_fe.value_total_energy_differences_magnitude = ( + columns[:, 2:-1] * self._gro_energy_units + ) + sec_fe.value_PV_energy_magnitude = ( + columns[:, -1] * self._gro_energy_units + ) def standardize_input_parameters(self, input_dict: dict): """_summary_