diff --git a/sphinx_parser/input.py b/sphinx_parser/input.py index 24a5368..ed81aea 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 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( @@ -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 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). + 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..033f1ed 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 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 + 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: