Skip to content

Double-Ended TS Search

Double-ended TS search workflow - find transition states between reactant and product.

ReactionPathPoint dataclass

ReactionPathPoint(
    distance: float,
    calculation_uuid: str | None,
    calculation: Calculation | None = None,
)

Point along the reaction path.

Parameters:

Name Type Description Default
distance float

Distance along the reaction path.

required
calculation_uuid str | None

UUID of the calculation at this point.

required
calculation Calculation | None

Populated by get_path_calculations(), None otherwise.

None

DoubleEndedTSSearchResult dataclass

DoubleEndedTSSearchResult(
    workflow_data: dict[str, Any],
    workflow_type: str,
    workflow_uuid: str,
    complete: bool = True,
)

Bases: WorkflowResult

Result from a double-ended transition state search workflow.

ts_guess_calculation_uuid property

ts_guess_calculation_uuid: str | None

UUID of the transition state guess calculation.

ts_guess_calculation property

ts_guess_calculation: Calculation | None

The transition state guess Calculation with full molecule data (lazily fetched).

ts_molecule property

ts_molecule: Molecule | None

The transition state molecule.

ts_energy property

ts_energy: float | None

Energy of the transition state (Hartree).

forward_path property

forward_path: list[ReactionPathPoint]

Reaction path points from reactant to TS.

backward_path property

backward_path: list[ReactionPathPoint]

Reaction path points from product to TS.

get_path_calculations

get_path_calculations() -> list[ReactionPathPoint]

Fetch all path point calculations, sorted by distance.

Combines forward (reactant → TS) and backward (product → TS) points, sorted by distance, each with its Calculation populated. Results are cached after the first call.

.. note:: Makes one API call per path point on first access.

Returns:

Type Description
list[ReactionPathPoint]

List of ReactionPathPoints with calculations populated, sorted by distance.

get_path_energies

get_path_energies(relative: bool = False) -> list[float]

Get energies along the reaction path, sorted by distance.

Parameters:

Name Type Description Default
relative bool

If True, return relative energies in kcal/mol (relative to the lowest energy point). If False (default), return absolute energies in Hartree.

False

Returns:

Type Description
list[float]

List of energies along the reaction path.

submit_double_ended_ts_search_workflow

submit_double_ended_ts_search_workflow(
    reactant: StructureInput,
    product: StructureInput,
    calculation_settings: Settings
    | dict[str, Any]
    | None = None,
    search_settings: StringMethodSettings
    | NEBSettings
    | dict[str, Any]
    | None = None,
    optimize_inputs: bool = True,
    optimize_ts: bool = True,
    name: str = "Double-Ended TS Search Workflow",
    folder_uuid: str | None = None,
    folder: Folder | None = None,
    max_credits: int | None = None,
    webhook_url: str | None = None,
    is_draft: bool = False,
) -> Workflow

Submits a double-ended transition state search workflow to the API.

Parameters:

Name Type Description Default
reactant StructureInput

reactant Molecule.

required
product StructureInput

product Molecule.

required
calculation_settings Settings | dict[str, Any] | None

Settings to use for calculations. Defaults to omol25_conserving_s.

None
search_settings StringMethodSettings | NEBSettings | dict[str, Any] | None

Settings for the transition state search; resolves to FSM

None
optimize_inputs bool

Whether to optimize the reactant and product before the search.

True
optimize_ts bool

Whether to optimize the found transition state.

True
name str

name of the workflow.

'Double-Ended TS Search Workflow'
folder_uuid str | None

UUID of the folder to place the workflow in.

None
folder Folder | None

Folder object to store the workflow in.

None
max_credits int | None

Maximum number of credits to use for the workflow.

None
webhook_url str | None

URL that Rowan will POST to when the workflow completes.

None
is_draft bool

If True, submit the workflow as a draft without starting execution.

False

Returns:

Type Description
Workflow

Workflow object representing the submitted workflow.