schrodinger.application.jaguar.html_report.data module¶
Data structures used by jinja macros in Jaguar report templating
- class schrodinger.application.jaguar.html_report.data.ReactionProfileState(label: str, rel_energy_kcal: float | None = None, mol_svg: str | None = None, critical_point_type: CriticalPointType = CriticalPointType.MINIMUM, disconnected_forward: bool = False, link_mol_svg: str | None = None)¶
Bases:
objectA single state (critical point) on a reaction energy profile.
- Parameters:
label – Display label for this state.
rel_energy_kcal – Energy relative to the first state, in kcal/mol.
mol_svg – SVG string for the 2D structure image, or None.
critical_point_type – The type of this critical point.
TSandAPPROX_TSboth receive transition-state styling;APPROX_TSadditionally gets a distinct dashed bar and lighter color.disconnected_forward – Whether the connection between this state and the next is disconnected (no reaction path found).
link_mol_svg – SVG string to render centered on the connector line after this state (between this state and the next), or None.
- label: str¶
- rel_energy_kcal: float | None = None¶
- mol_svg: str | None = None¶
- critical_point_type: CriticalPointType = 'minimum'¶
- disconnected_forward: bool = False¶
- link_mol_svg: str | None = None¶
- __init__(label: str, rel_energy_kcal: float | None = None, mol_svg: str | None = None, critical_point_type: CriticalPointType = CriticalPointType.MINIMUM, disconnected_forward: bool = False, link_mol_svg: str | None = None) None¶
- class schrodinger.application.jaguar.html_report.data.TableData(data: list[dict], header_map: dict[str, str] = <factory>, format_map: dict[str, str] = <factory>, align_map: dict[str, str] = <factory>, title: str | None = None, row_classes: list[str] = <factory>)¶
Bases:
object- data: list[dict]¶
- header_map: dict[str, str]¶
- format_map: dict[str, str]¶
- align_map: dict[str, str]¶
- title: str | None = None¶
- row_classes: list[str]¶
- __init__(data: list[dict], header_map: dict[str, str] = <factory>, format_map: dict[str, str] = <factory>, align_map: dict[str, str] = <factory>, title: str | None = None, row_classes: list[str] = <factory>) None¶
- class schrodinger.application.jaguar.html_report.data.ReactionProfileAxisConfig(axis_min: float, axis_max: float, interval: float, ticks: tuple[float, ...] = ())¶
Bases:
objectPre-computed Y-axis configuration for a reaction energy profile chart.
- Parameters:
axis_min – Lower bound of the axis range (kcal/mol).
axis_max – Upper bound of the axis range (kcal/mol).
interval – Tick spacing (kcal/mol).
ticks – Tick values within the axis range.
- axis_min: float¶
- axis_max: float¶
- interval: float¶
- ticks: tuple[float, ...] = ()¶
- property axis_range: float¶
- __init__(axis_min: float, axis_max: float, interval: float, ticks: tuple[float, ...] = ()) None¶
- schrodinger.application.jaguar.html_report.data.compute_axis_ticks(energies: list[float], target_ticks: int = 5) ReactionProfileAxisConfig¶
Compute Y-axis range and tick positions for a reaction profile chart.
- Parameters:
energies – List of energy values (kcal/mol) to cover.
target_ticks – Target number of ticks.
- Returns:
Axis configuration with range and tick positions.
- class schrodinger.application.jaguar.html_report.data.EmbeddedFile(filename: str, content: str, *, human_readable: bool)¶
Bases:
objectA file embedded in an HTML report for inline viewing and download.
- Parameters:
filename – Display name for the file (e.g. “AutoTS.in”).
content – Full text content of the file.
human_readable – Whether the file content is intended for human reading. When False, the viewer hides content behind a toggle.
- filename: str¶
- content: str¶
- human_readable: bool¶
- classmethod from_path(filepath: str | pathlib.Path, *, human_readable: bool) EmbeddedFile | None¶
Create an EmbeddedFile by decoding a text file to Unicode. UTF-8 is attempted first because it is deterministic and is the expected format for suite-generated text. If UTF-8 decoding fails, chardet is used as a best-effort fallback for legacy encodings. Only high-confidence guesses are accepted; otherwise the file is skipped as unsupported.
Compressed Maestro files are decompressed to uncompressed Maestro text in memory to avoid appearing as an HTML smuggling payload to virus scanners. Other non-text files are currently unsupported. See inline comments for implementation considerations.
- Parameters:
filepath – Path to the file to read.
human_readable – Whether the file is intended for human reading.
- Returns:
An EmbeddedFile with the basename as filename, or None if the file cannot be decoded as text.
- __init__(filename: str, content: str, *, human_readable: bool) None¶
- class schrodinger.application.jaguar.html_report.data.EnergyProfileTablePair(states: tuple[ReactionProfileState, ...], axis_config: ReactionProfileAxisConfig, table_rows: tuple[dict, ...], label: str)¶
Bases:
objectPaired reaction-profile diagram and energy table for one energy type.
- Parameters:
states – Reaction profile states for the diagram.
axis_config – Y-axis configuration for the diagram.
table_rows – Table data with label, rel, and abs energy values.
label – Human-readable label for this energy type.
- states: tuple[ReactionProfileState, ...]¶
- axis_config: ReactionProfileAxisConfig¶
- table_rows: tuple[dict, ...]¶
- label: str¶
- __init__(states: tuple[ReactionProfileState, ...], axis_config: ReactionProfileAxisConfig, table_rows: tuple[dict, ...], label: str) None¶
- class schrodinger.application.jaguar.html_report.data.EnergyProfileData(combos: dict[str, EnergyProfileTablePair], energy_types: tuple[dict[str, str], ...], default_type: str, has_free_energy: bool)¶
Bases:
objectComplete energy profile data for the report template.
- Parameters:
combos – Energy type key to profile/table pair.
energy_types – Ordered list of
{key, label}dicts for the energy type dropdown.default_type – Key of the initially-selected energy type.
has_free_energy – Whether free energy data is available.
- combos: dict[str, EnergyProfileTablePair]¶
- energy_types: tuple[dict[str, str], ...]¶
- default_type: str¶
- has_free_energy: bool¶
- __init__(combos: dict[str, EnergyProfileTablePair], energy_types: tuple[dict[str, str], ...], default_type: str, has_free_energy: bool) None¶