Skip to content

Electronic Properties

Electronic properties workflow - calculate electronic properties.

MolecularOrbital dataclass

MolecularOrbital(points: tuple[tuple[float, float, float, float], ...], occupation: int, energy: float)

Molecular orbital with cube data.

Attributes:

Name Type Description
points tuple[tuple[float, float, float, float], ...]

cube data as (x, y, z, value) points (Bohr)

occupation int

occupation number (0, 1, or 2)

energy float

orbital energy (Hartree)

ElectronicPropertiesResult dataclass

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

Bases: WorkflowResult

Result from an electronic-properties workflow.

dipole property

dipole: tuple[float, float, float] | None

Dipole moment vector (Debye).

quadrupole property

quadrupole: tuple[tuple[float, float, float], tuple[float, float, float], tuple[float, float, float]] | None

Quadrupole moment tensor (Debye*A).

mulliken_charges property

mulliken_charges: list[float] | None

Mulliken partial charges on each atom.

lowdin_charges property

lowdin_charges: list[float] | None

Lowdin partial charges on each atom.

wiberg_bond_orders property

wiberg_bond_orders: list[tuple[int, int, float]]

Wiberg bond orders as (atom1, atom2, order) tuples.

mayer_bond_orders property

mayer_bond_orders: list[tuple[int, int, float]]

Mayer bond orders as (atom1, atom2, order) tuples.

density_cube property

density_cube: list[tuple[float, float, float, float]] | None

Electron density cube as list of (x, y, z, value) points.

electrostatic_potential_cube property

electrostatic_potential_cube: list[tuple[float, float, float, float]] | None

Electrostatic potential cube as list of (x, y, z, value) points.

molecular_orbitals property

molecular_orbitals: dict[int, MolecularOrbital]

Molecular orbitals indexed by orbital number.

homo property

homo: MolecularOrbital | None

Highest occupied molecular orbital (HOMO). Energy in Hartree.

lumo property

lumo: MolecularOrbital | None

Lowest unoccupied molecular orbital (LUMO). Energy in Hartree.

homo_lumo_gap property

homo_lumo_gap: float | None

HOMO-LUMO gap (Hartree).

submit_electronic_properties_workflow

submit_electronic_properties_workflow(initial_molecule: StructureInput, method: Method | str = 'b97_3c', basis_set: str | None = None, engine: Engine | str | None = None, compute_density_cube: bool = True, compute_electrostatic_potential_cube: bool = True, compute_num_occupied_orbitals: int = 1, compute_num_virtual_orbitals: int = 1, name: str = 'Electronic Properties 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[ElectronicPropertiesResult]

Submits an electronic-properties workflow to the API.

Parameters:

Name Type Description Default
initial_molecule StructureInput

molecule to calculate electronic properties for

required
method Method | str

method to use for the calculation

'b97_3c'
basis_set str | None

basis set to use (if any)

None
engine Engine | str | None

compute engine, see Engine. Auto-selected from method if not specified

None
compute_density_cube bool

whether to compute the density cube

True
compute_electrostatic_potential_cube bool

whether to compute the electrostatic potential cube

True
compute_num_occupied_orbitals int

number of occupied orbitals to save

1
compute_num_virtual_orbitals int

number of virtual orbitals to save

1
name str

name of the workflow

'Electronic Properties Workflow'
folder_uuid str | None

UUID of the folder to place the workflow in

None
folder Folder | None

destination folder

None
max_credits int | None

maximum credits for the workflow

None
webhook_url str | None

URL that Rowan will POST to when the workflow completes

None
is_draft bool

save as a draft without starting execution

False

Returns:

Type Description
Workflow[ElectronicPropertiesResult]

submitted workflow

Raises:

Type Description
ValueError

method is not supported by the engine

HTTPStatusError

request to the API fails