# {py:mod}`airsspy.jf.ml_runners` ```{py:module} airsspy.jf.ml_runners ``` ```{autodoc2-docstring} airsspy.jf.ml_runners :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`AirssMlSinglePointRunner ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlSinglePointRunner :summary: ``` * - {py:obj}`AirssMlRelaxRunner ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlRelaxRunner :summary: ``` * - {py:obj}`TorchSimRunner ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.TorchSimRunner :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`compose_ml_task_doc ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.compose_ml_task_doc :summary: ``` * - {py:obj}`has_torchsim ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.has_torchsim :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`logger ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.logger :summary: ``` * - {py:obj}`EV_PER_ANG3_TO_GPA ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.EV_PER_ANG3_TO_GPA :summary: ``` * - {py:obj}`StructureInput ` - ```{autodoc2-docstring} airsspy.jf.ml_runners.StructureInput :summary: ``` ```` ### API ````{py:data} logger :canonical: airsspy.jf.ml_runners.logger :value: > 'getLogger(...)' ```{autodoc2-docstring} airsspy.jf.ml_runners.logger ``` ```` ````{py:data} EV_PER_ANG3_TO_GPA :canonical: airsspy.jf.ml_runners.EV_PER_ANG3_TO_GPA :value: > 160.21766208 ```{autodoc2-docstring} airsspy.jf.ml_runners.EV_PER_ANG3_TO_GPA ``` ```` ````{py:data} StructureInput :canonical: airsspy.jf.ml_runners.StructureInput :value: > None ```{autodoc2-docstring} airsspy.jf.ml_runners.StructureInput ``` ```` `````{py:class} AirssMlSinglePointRunner(calculator_spec: str, calculator_kwargs: typing.Optional[dict] = None) :canonical: airsspy.jf.ml_runners.AirssMlSinglePointRunner ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlSinglePointRunner ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlSinglePointRunner.__init__ ``` ````{py:method} clean_failed(struct_name: str) -> None :canonical: airsspy.jf.ml_runners.AirssMlSinglePointRunner.clean_failed ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlSinglePointRunner.clean_failed ``` ```` ````{py:method} run(struct_name: str, structure_input: airsspy.jf.ml_runners.StructureInput) -> int :canonical: airsspy.jf.ml_runners.AirssMlSinglePointRunner.run ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlSinglePointRunner.run ``` ```` ````` `````{py:class} AirssMlRelaxRunner(calculator_spec: str, calculator_kwargs: typing.Optional[dict] = None, optimizer: str = 'FIRE', fmax: float = 0.05, max_steps: int = 500, pressure: float = 0.0) :canonical: airsspy.jf.ml_runners.AirssMlRelaxRunner ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlRelaxRunner ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlRelaxRunner.__init__ ``` ````{py:method} clean_failed(struct_name: str) -> None :canonical: airsspy.jf.ml_runners.AirssMlRelaxRunner.clean_failed ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlRelaxRunner.clean_failed ``` ```` ````{py:method} run(struct_name: str, structure_input: airsspy.jf.ml_runners.StructureInput) -> int :canonical: airsspy.jf.ml_runners.AirssMlRelaxRunner.run ```{autodoc2-docstring} airsspy.jf.ml_runners.AirssMlRelaxRunner.run ``` ```` ````` ````{py:function} compose_ml_task_doc(struct_name: str, calculator_spec: str = '') -> dict :canonical: airsspy.jf.ml_runners.compose_ml_task_doc ```{autodoc2-docstring} airsspy.jf.ml_runners.compose_ml_task_doc ``` ```` ````{py:function} has_torchsim() -> bool :canonical: airsspy.jf.ml_runners.has_torchsim ```{autodoc2-docstring} airsspy.jf.ml_runners.has_torchsim ``` ```` `````{py:class} TorchSimRunner(model_spec: str, *, device: typing.Optional[str] = None) :canonical: airsspy.jf.ml_runners.TorchSimRunner ```{autodoc2-docstring} airsspy.jf.ml_runners.TorchSimRunner ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} airsspy.jf.ml_runners.TorchSimRunner.__init__ ``` ````{py:method} relax_batch(struct_names: list[str], structures: list[airsspy.jf.ml_runners.StructureInput], *, max_steps: int = 300, force_tol: float = 0.05, optimizer: str = 'fire', cell_filter: str = 'frechet', convergence_mode: str = 'force_stress', scalar_pressure: float = 0.0) -> dict[str, int] :canonical: airsspy.jf.ml_runners.TorchSimRunner.relax_batch ```{autodoc2-docstring} airsspy.jf.ml_runners.TorchSimRunner.relax_batch ``` ```` ````{py:method} static_batch(struct_names: list[str], structures: list[airsspy.jf.ml_runners.StructureInput]) -> dict[str, int] :canonical: airsspy.jf.ml_runners.TorchSimRunner.static_batch ```{autodoc2-docstring} airsspy.jf.ml_runners.TorchSimRunner.static_batch ``` ```` `````