sisl.io.orca.txtSileORCA
- class sisl.io.orca.txtSileORCA(filename, *args, **kwargs)
Bases:
SileORCAOutput from the ORCA property.txt file
Plotting
Plotting functions for the
txtSileORCAclass.plot.geometry(*[, axes, atoms, ...])Calls
read_geometryand creates aGeometryPlotfrom its output.Methods
base_directory([relative_to])Retrieve the base directory of the file, relative to the path relative_to
close()dir_file([filename, filename_base])File of the current Sile
read(*args, **kwargs)Generic read method which should be overloaded in child-classes
Read number of electrons (alpha, beta)
read_energy([units])Reads the energy blocks
Reads the geometry from ORCA property.txt file
Reads electronic g-tensor data from the
EPRNMR_GTensorblockread_hyperfine_coupling([units])Reads hyperfine couplings from the
EPRNMR_ATensorblockwrite(*args, **kwargs)Generic write method which should be overloaded in child-classes
Attributes
File of the current Sile
File of the current Sile
Number of atoms
Number of orbitals (basis functions)
- base_directory(relative_to='.')
Retrieve the base directory of the file, relative to the path relative_to
- close()
- dir_file(filename=None, filename_base='')
File of the current Sile
- plot.geometry(*, axes: Axes = ['x', 'y', 'z'], atoms: AtomsIndex = None, atoms_style: Sequence[AtomsStyleSpec] = [], atoms_scale: float = 1.0, atoms_colorscale: Colorscale | None = None, drawing_mode: Literal['scatter', 'balls', None] = None, bind_bonds_to_ats: bool = True, points_per_bond: int = 20, bonds_style: StyleSpec = {}, bonds_scale: float = 1.0, bonds_colorscale: Colorscale | None = None, show_atoms: bool = True, show_bonds: bool = True, show_cell: Literal['box', 'axes', False] = 'box', cell_style: StyleSpec = {}, nsc: tuple[int, int, int] = (1, 1, 1), atoms_ndim_scale: tuple[float, float, float] = (16, 16, 1), bonds_ndim_scale: tuple[float, float, float] = (1, 1, 10), dataaxis_1d: np.ndarray | Callable | None = None, arrows: Sequence[AtomArrowSpec] = (), backend='plotly') GeometryPlot
Calls
read_geometryand creates aGeometryPlotfrom its output.- Parameters:
axes – The axes to project the geometry to.
atoms – The atoms to plot. If None, all atoms are plotted.
atoms_style – List of style specifications for the atoms. See the showcase notebooks for examples.
atoms_scale – Scaling factor for the size of all atoms.
atoms_colorscale – Colorscale to use for the atoms in case the color attribute is an array of values. If None, the default colorscale is used for each backend.
drawing_mode – The method used to draw the atoms.
bind_bonds_to_ats – Whether to display only bonds between atoms that are being displayed.
points_per_bond – When the points are drawn using points instead of lines (e.g. in some frameworks to draw multicolor bonds), the number of points used per bond.
bonds_style – Style specification for the bonds. See the showcase notebooks for examples.
bonds_scale – Scaling factor for the width of all bonds.
bonds_colorscale – Colorscale to use for the bonds in case the color attribute is an array of values. If None, the default colorscale is used for each backend.
show_atoms – Whether to display the atoms.
show_bonds – Whether to display the bonds.
show_cell – Mode to display the cell. If False, the cell is not displayed.
cell_style – Style specification for the cell. See the showcase notebooks for examples.
nsc – Number of unit cells to display in each direction.
atoms_ndim_scale – Scaling factor for the size of the atoms for different dimensionalities (1D, 2D, 3D).
bonds_ndim_scale – Scaling factor for the width of the bonds for different dimensionalities (1D, 2D, 3D).
dataaxis_1d – Only meaningful for 1D plots. The data to plot on the Y axis.
arrows – List of arrow specifications to display. See the showcase notebooks for examples.
backend – The backend to use to generate the figure.
See also
GeometryPlotThe plot class used to generate the plot.
read_geometryThe method called to get the data.
- read(*args, **kwargs)
Generic read method which should be overloaded in child-classes
- Parameters:
kwargs – keyword arguments will try and search for the attribute
read_<>and call it with the remaining**kwargsas arguments.
- read_electrons() tuple[float, float] | None[source]
Read number of electrons (alpha, beta)
- Returns:
out (
numpy.ndarrayorlistofnumpy.ndarray) – alpha and beta electrons
Notes
This method defaults to return the first item(s).
This method enables slicing for handling multiple values (see
[...|default]).This is an optional handler enabling returning multiple elements if
read_electrons[...|0]allows this.>>> single = obj.read_electrons() # returns the default entry of read_electrons[...|0]
To retrieve the first two elements that
read_electronswill return>>> first_two = obj.read_electrons[:2]()
Retrieving the last two is done equivalently:
>>> last_two = obj.read_electrons[-2:]()
While one can store the sliced function
tmp = obj.read_electrons[:]one will loose the slice after each call.
- read_energy(units: sisl.typing.UnitsVar = 'eV') PropertyDict[source]
Reads the energy blocks
- Parameters:
units – selects units in the returned data
Notes
Energies written by ORCA have units of Ha.
- Returns:
PropertyDictorlistofPropertyDict– all data from the “DFT_Energy” and “VdW_Correction” blocks
Notes
This method defaults to return the first item(s).
This method enables slicing for handling multiple values (see
[...|default]).This is an optional handler enabling returning multiple elements if
read_energy[...|0]allows this.>>> single = obj.read_energy() # returns the default entry of read_energy[...|0]
To retrieve the first two elements that
read_energywill return>>> first_two = obj.read_energy[:2]()
Retrieving the last two is done equivalently:
>>> last_two = obj.read_energy[-2:]()
While one can store the sliced function
tmp = obj.read_energy[:]one will loose the slice after each call.
- read_geometry() Geometry[source]
Reads the geometry from ORCA property.txt file
- Returns:
GeometryorlistofGeometry– the geometries contained
Notes
This method defaults to return the first item(s).
This method enables slicing for handling multiple values (see
[...|default]).This is an optional handler enabling returning multiple elements if
read_geometry[...|0]allows this.>>> single = obj.read_geometry() # returns the default entry of read_geometry[...|0]
To retrieve the first two elements that
read_geometrywill return>>> first_two = obj.read_geometry[:2]()
Retrieving the last two is done equivalently:
>>> last_two = obj.read_geometry[-2:]()
While one can store the sliced function
tmp = obj.read_geometry[:]one will loose the slice after each call.
- read_gtensor() PropertyDict[source]
Reads electronic g-tensor data from the
EPRNMR_GTensorblock- Returns:
PropertyDict– Electronic g-tensor
- read_hyperfine_coupling(units: sisl.typing.UnitsVar = 'eV') list[PropertyDict][source]
Reads hyperfine couplings from the
EPRNMR_ATensorblockFor a nucleus \(k\), the hyperfine interaction is usually written in terms of the symmetric \(3\times 3\) hyperfine tensor \(\mathbf A^{(k)}\) such that
\[H_{\mathrm{hfi}} = \mathbf{S} \cdot \mathbf A^{(k)} \mathbf{I}^{(k)}\]where \(\mathbf{S}\) and \(\mathbf{I}^{(k)}\) represent the electron and nuclear spin operators, respectively.
For a study of hyperfine coupling in nanographenes using ORCA see [12].
- Parameters:
units – selects units in the returned data
Notes
Hyperfine tensors written by ORCA have units of MHz.
Currently the fields of each PropertyDict contains:
ia: atomic indexspecies: species for atomisotope: the atomic isotopespin: spin multiplicityprefactor: prefactor defined in outputtensor: the \(\mathbf A^{(k)}\) tensorvectors: eigenvectorseigenvalues: eigenvaluesiso: Fermi contact
- Returns:
listofPropertyDict– Hyperfine coupling data
- write(*args, **kwargs)
Generic write method which should be overloaded in child-classes
- Parameters:
**kwargs – keyword arguments will try and search for the attribute write_ and call it with the remaining
**kwargsas arguments.
- property base_file
File of the current Sile
- property file
File of the current Sile
- property na
Number of atoms
- property no
Number of orbitals (basis functions)
- plot
Plotting functions for the
txtSileORCAclass.