sisl.io.orca.txtSileORCA
- class sisl.io.orca.txtSileORCA(filename, *args, **kwargs)
Bases:
SileORCA
Output from the ORCA property.txt file
Plotting
Plotting functions for the
txtSileORCA
class.plot.geometry
(*[, axes, atoms, ...])Calls
read_geometry
and creates aGeometryPlot
from 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_GTensor
blockread_hyperfine_coupling
([units])Reads hyperfine couplings from the
EPRNMR_ATensor
blockwrite
(*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_geometry
and creates aGeometryPlot
from 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
GeometryPlot
The plot class used to generate the plot.
read_geometry
The 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**kwargs
as arguments.
- read_electrons() tuple[float, float] | None [source]
Read number of electrons (alpha, beta)
- Returns:
out (
numpy.ndarray
orlist
ofnumpy.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_electrons
will 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:
PropertyDict
orlist
ofPropertyDict
– 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_energy
will 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:
Geometry
orlist
ofGeometry
– 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_geometry
will 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_GTensor
block- Returns:
PropertyDict
– Electronic g-tensor
- read_hyperfine_coupling(units: sisl.typing.UnitsVar = 'eV') list[PropertyDict] [source]
Reads hyperfine couplings from the
EPRNMR_ATensor
blockFor 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:
list
ofPropertyDict
– 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
**kwargs
as 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
txtSileORCA
class.