EON Engine

class pychum.engine.eon.NWChemAtom(symbol: str, x: float, y: float, z: float)[source]

Bases: object

symbol: str
x: float
y: float
z: float
__init__(symbol: str, x: float, y: float, z: float) None
class pychum.engine.eon.NWChemRenderer(config: NWChemSocketConfig)[source]

Bases: object

__init__(config: NWChemSocketConfig)[source]
render(template_name: str)[source]
class pychum.engine.eon.NWChemSocketConfig(atoms: list[pychum.engine.eon._dataclasses.NWChemAtom], settings_path: pathlib.Path, socket_address: str, unix_mode: bool = False, mem_in_gb: int = 2, output_path: pathlib.Path = PosixPath('nwchem_socket.nwi'))[source]

Bases: object

atoms: list[NWChemAtom]
settings_path: Path
socket_address: str
unix_mode: bool = False
mem_in_gb: int = 2
output_path: Path = PosixPath('nwchem_socket.nwi')
__init__(atoms: list[NWChemAtom], settings_path: Path, socket_address: str, unix_mode: bool = False, mem_in_gb: int = 2, output_path: Path = PosixPath('nwchem_socket.nwi')) None

NWChemSocketConfig

class pychum.engine.eon.NWChemSocketConfig(atoms: list[pychum.engine.eon._dataclasses.NWChemAtom], settings_path: pathlib.Path, socket_address: str, unix_mode: bool = False, mem_in_gb: int = 2, output_path: pathlib.Path = PosixPath('nwchem_socket.nwi'))[source]

Bases: object

Example usage:

```python from pychum.engine.eon import NWChemSocketConfig, NWChemAtom

atoms = [

NWChemAtom(symbol=”O”, x=0.0, y=0.0, z=0.0), NWChemAtom(symbol=”H”, x=0.757, y=0.586, z=0.0), NWChemAtom(symbol=”H”, x=-0.757, y=0.586, z=0.0),

]

config = NWChemSocketConfig(

atoms=atoms, settings_path=Path(“nwchem.toml”), socket_address=”127.0.0.1:8888”, unix_mode=False, mem_in_gb=4,

)

atoms: list[NWChemAtom]
settings_path: Path
socket_address: str
unix_mode: bool = False
mem_in_gb: int = 2
output_path: Path = PosixPath('nwchem_socket.nwi')
__init__(atoms: list[NWChemAtom], settings_path: Path, socket_address: str, unix_mode: bool = False, mem_in_gb: int = 2, output_path: Path = PosixPath('nwchem_socket.nwi')) None

## NWChemRenderer

```{eval-rst}
.. autoclass:: pychum.engine.eon.NWChemRenderer
   :members:
   :undoc-members:
   :show-inheritance:

   Example usage:

   ```python
   from pychum.engine.eon import NWChemRenderer

   renderer = NWChemRenderer(config)
   nwchem_input = renderer.render("nwchem_socket.jinja")

## NWChemAtom

```{eval-rst}
.. autoclass:: pychum.engine.eon.NWChemAtom
   :members:
   :undoc-members:

Example TOML Settings

[nwchem]
task = "energy"
theory = "dft"

[dft]
functional = "b3lyp"

[basis]
type = "6-31g*"

[scf]
max_iter = 100