From 9c85454b1c2d4f8253447691ed23f79e074d1642 Mon Sep 17 00:00:00 2001 From: Sam Waseda Date: Wed, 6 May 2026 13:34:00 +0200 Subject: [PATCH 1/5] Add transPath to input --- sphinx_parser/input.py | 28 ++++++++++++++++++++++++++++ sphinx_parser/src/input_data.yml | 14 ++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/sphinx_parser/input.py b/sphinx_parser/input.py index 24a5368..4a35956 100644 --- a/sphinx_parser/input.py +++ b/sphinx_parser/input.py @@ -2365,6 +2365,7 @@ def _sphinx__main__ricTS( scheme: Optional[int] = None, driftFilter: Optional[bool] = None, bornOppenheimer: Optional[dict] = None, + transPath: Optional[dict] = None, wrap_string: bool = True, ): """ @@ -2383,6 +2384,7 @@ def _sphinx__main__ricTS( scheme (int): Hesse update scheme (0=Murtagh-Sargent, 1=Powell symmetric Broyden, 2=Borrell, 3=Farkas-Schlegel, see [11], Eqs. 6-10). Default: 1. (Optional) driftFilter (bool): Drift filter. (Optional) bornOppenheimer (dict): The bornOppenheimer group defines the electronic loop within a geometry optimization. It contains one or more of the electronic loop groups. If more than one minimizer is used, the complete electronic loop sequence is executed at each ionic step. (Optional) + transPath (dict): The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). (Optional) wrap_string (bool): Whether to wrap string values in apostrophes. """ return fill_values( @@ -2398,6 +2400,7 @@ def _sphinx__main__ricTS( scheme=scheme, driftFilter=driftFilter, bornOppenheimer=bornOppenheimer, + transPath=transPath, wrap_string=wrap_string, ) @@ -2611,6 +2614,31 @@ def _sphinx__main__ricTS__bornOppenheimer__scfDiag__preconditioner( ) +@_func_in_func(sphinx.main.ricTS) +@units +def _sphinx__main__ricTS__transPath( + dir_: list, + atomId: Optional[int] = None, + atomIds: Optional[list] = None, + wrap_string: bool = True, +): + """ + The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). + + Args: + dir_ (list): List of x,y,z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). + atomId (int): Atom id (starting from 1) for which to set the transition direction. (Optional) + atomIds (list): List of atom ids (starting from 1) for which to set the transition direction. (Optional) + wrap_string (bool): Whether to wrap string values in apostrophes. + """ + return fill_values( + dir_=dir_, + atomId=atomId, + atomIds=atomIds, + wrap_string=wrap_string, + ) + + @_func_in_func(sphinx.main) @units def _sphinx__main__evalForces( diff --git a/sphinx_parser/src/input_data.yml b/sphinx_parser/src/input_data.yml index 20a1232..595622f 100644 --- a/sphinx_parser/src/input_data.yml +++ b/sphinx_parser/src/input_data.yml @@ -1033,6 +1033,20 @@ sphinx: description: Drift filter bornOppenheimer: alias: sphinx.main.QN.bornOppenheimer + transPath: + description: The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). + atomId: + data_type: int + required: false + description: Atom id (starting from 1) for which to set the transition direction. + atomIds: + data_type: list + required: false + description: List of atom ids (starting from 1) for which to set the transition direction. + dir: + data_type: list + required: true + description: List of x,y,z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). evalForces: description: The evalForces group is used to calculate forces and write them to a file in sx-format. This is useful for single-point calculations without a structure optimization. It should be used after an electronic loop. file: From 99cb6255c28eb457a04cd9e6c64e1d7ca78a69f6 Mon Sep 17 00:00:00 2001 From: Sam Dareska <37879103+samwaseda@users.noreply.github.com> Date: Sat, 9 May 2026 20:24:02 +0200 Subject: [PATCH 2/5] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- sphinx_parser/src/input_data.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sphinx_parser/src/input_data.yml b/sphinx_parser/src/input_data.yml index 595622f..033f1ed 100644 --- a/sphinx_parser/src/input_data.yml +++ b/sphinx_parser/src/input_data.yml @@ -1034,7 +1034,7 @@ sphinx: bornOppenheimer: alias: sphinx.main.QN.bornOppenheimer transPath: - description: The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). + description: The transPath group defines initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x, y, z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). atomId: data_type: int required: false From dfaba9a05919411fc0db9472f9de0b722a311dfc Mon Sep 17 00:00:00 2001 From: Sam Dareska <37879103+samwaseda@users.noreply.github.com> Date: Sat, 9 May 2026 20:24:37 +0200 Subject: [PATCH 3/5] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- sphinx_parser/input.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sphinx_parser/input.py b/sphinx_parser/input.py index 4a35956..e09955b 100644 --- a/sphinx_parser/input.py +++ b/sphinx_parser/input.py @@ -2384,7 +2384,7 @@ def _sphinx__main__ricTS( scheme (int): Hesse update scheme (0=Murtagh-Sargent, 1=Powell symmetric Broyden, 2=Borrell, 3=Farkas-Schlegel, see [11], Eqs. 6-10). Default: 1. (Optional) driftFilter (bool): Drift filter. (Optional) bornOppenheimer (dict): The bornOppenheimer group defines the electronic loop within a geometry optimization. It contains one or more of the electronic loop groups. If more than one minimizer is used, the complete electronic loop sequence is executed at each ionic step. (Optional) - transPath (dict): The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). (Optional) + transPath (dict): The transPath group defines the initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x, y, z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). (Optional) wrap_string (bool): Whether to wrap string values in apostrophes. """ return fill_values( From 64d41c273c2cfedf9678443939afc6afb41f6cad Mon Sep 17 00:00:00 2001 From: Sam Dareska <37879103+samwaseda@users.noreply.github.com> Date: Sat, 9 May 2026 20:24:52 +0200 Subject: [PATCH 4/5] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- sphinx_parser/input.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sphinx_parser/input.py b/sphinx_parser/input.py index e09955b..b3bb3ff 100644 --- a/sphinx_parser/input.py +++ b/sphinx_parser/input.py @@ -2623,7 +2623,7 @@ def _sphinx__main__ricTS__transPath( wrap_string: bool = True, ): """ - The transPath group denes initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x,y,zdisplacements for each atom (3 values for atomId or 3 values for each index in atomIds). + The transPath group defines initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x, y, z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). Args: dir_ (list): List of x,y,z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). From 134cdd71fd9ab2581e4aa45d2e6a4abafcec7f75 Mon Sep 17 00:00:00 2001 From: Sam Waseda Date: Sat, 9 May 2026 20:37:11 +0200 Subject: [PATCH 5/5] Correct input --- sphinx_parser/input.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sphinx_parser/input.py b/sphinx_parser/input.py index b3bb3ff..ed81aea 100644 --- a/sphinx_parser/input.py +++ b/sphinx_parser/input.py @@ -2384,7 +2384,7 @@ def _sphinx__main__ricTS( scheme (int): Hesse update scheme (0=Murtagh-Sargent, 1=Powell symmetric Broyden, 2=Borrell, 3=Farkas-Schlegel, see [11], Eqs. 6-10). Default: 1. (Optional) driftFilter (bool): Drift filter. (Optional) bornOppenheimer (dict): The bornOppenheimer group defines the electronic loop within a geometry optimization. It contains one or more of the electronic loop groups. If more than one minimizer is used, the complete electronic loop sequence is executed at each ionic step. (Optional) - transPath (dict): The transPath group defines the initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x, y, z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). (Optional) + transPath (dict): The transPath group defines initial guess for the atomic displacement pattern along the negative curvature (transition direction). Either atomId or atomIds must be set. dir contains the x, y, z displacements for each atom (3 values for atomId or 3 values for each index in atomIds). (Optional) wrap_string (bool): Whether to wrap string values in apostrophes. """ return fill_values(