pymatgen.io.lobster.future.outputs package
Module for reading Lobster output files. For more information on LOBSTER see www.cohp.de.
If you use this module, please cite:
J. George, G. Petretto, A. Naik, M. Esters, A. J. Jackson, R. Nelson, R. Dronskowski, G.-M. Rignanese, G. Hautier, “Automated Bonding Analysis with Crystal Orbital Hamilton Populations”, ChemPlusChem 2022, e202200123, DOI: 10.1002/cplu.202200123.
- class BWDF(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for BWDF.lobster/BWDFCOHP.lobster files.
- Parameters:
filename (PathLike) – The BWDF file from LOBSTER, typically “BWDF.lobster” or “BWDFCOHP.lobster”.
- classmethod from_dict(d: dict[str, Any]) Self[source]
Deserialize object from dictionary produced by as_dict.
- Parameters:
d (dict[str, Any]) – Dictionary representation of the object.
- Returns:
Deserialized BWDF object.
- Return type:
Self
- class BWDFCOHP(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
BWDFParser for BWDFCOHP.lobster files.
- Returns:
None
- Parameters:
filename (PathLike) – The BWDF file from LOBSTER, typically “BWDF.lobster” or “BWDFCOHP.lobster”.
- class BandOverlaps(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for bandOverlaps.lobster files.
Parses band overlap information produced by LOBSTER and stores it in a structured dictionary keyed by spin. See the
LobsterBandOverlapstype for details.- band_overlaps[source]
“k_points”, “max_deviations”, and “matrices” holding the corresponding data. - “k_points” (list[list[float]]): List of k-point coordinates. - “max_deviations” (list[float]): List of maximal deviations for each k-point. - “matrices” (list[np.ndarray]): List of overlap matrices for each k-point.
each holding data for each spin channel.
- Type:
dict[Spin, dict]
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod from_dict(d: dict[str, Any]) Self[source]
Reconstruct a BandOverlaps instance from a dictionary.
- Parameters:
d (dict[str, Any]) – Dictionary representation of a BandOverlaps instance.
- Returns:
Reconstructed instance.
- Return type:
- classmethod get_default_filename() str[source]
Get the default filename for the BandOverlaps class.
- Returns:
Default filename.
- Return type:
str
- has_good_quality_check_occupied_bands(number_occ_bands_spin_up: int, number_occ_bands_spin_down: int | None = None, spin_polarized: bool = False, limit_deviation: float = 0.1) bool[source]
Check if deviation from the ideal overlap for occupied bands is acceptable.
- Parameters:
number_occ_bands_spin_up (int) – Number of occupied bands for spin up.
number_occ_bands_spin_down (int | None) – Number of occupied bands for spin down. Required if spin_polarized is True.
spin_polarized (bool) – Whether the calculation is spin-polarized.
limit_deviation (float) – Acceptable absolute tolerance for deviations.
- Raises:
ValueError – If number_occ_bands_spin_down is not specified for spin-polarized calculations.
- Returns:
True if all occupied-band submatrices are close to identity within the tolerance.
- Return type:
bool
- has_good_quality_max_deviation(limit_max_deviation: float = 0.1) bool[source]
Check if the maxDeviation values are within a given limit.
- Parameters:
limit_max_deviation (float) – Upper limit for acceptable max_deviation.
- Returns:
True if all recorded max_deviation values are <= limit_max_deviation.
- Return type:
bool
- parse_file(spin_numbers: list[int]) None[source]
Read all lines of the file and populate self.band_overlaps.
- Parameters:
spin_numbers (list[int]) – Two integers indicating the spin numbering used in the file (e.g., [0, 1] for legacy or [1, 2] for newer versions).
- Raises:
ValueError – If no data is found for a key in the bandOverlaps file.
- parse_file_v3_2_legacy() None[source]
Parse bandOverlaps.lobster file for LOBSTER versions ≤3.2.
Uses legacy spin numbering [0, 1] for parsing.
- class CHARGE(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for CHARGE.lobster and CHARGE.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for CHARGE files.
- Returns:
Default filename for the CHARGE file, depending on LCFO mode.
- Return type:
str
- class CHARGE_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
CHARGEParser for CHARGE.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COBICAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COBICAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COBICAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COBICARReader for COBICAR.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COHPCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COHPCAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COHPCAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COHPCARReader for COHPCAR.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COOPCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COOPCAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COXXCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for COXXCAR-style files (COOPCAR, COHPCAR, COBICAR).
Parses LOBSTER’s COXXCAR outputs and organizes bond and orbital-resolved interaction data.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- property energies: NDArray[np.floating][source]
Return the energy grid.
- Returns:
Energies (first column of self.data).
- Return type:
NDArray[np.floating]
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) NDArray[np.floating][source]
Return the data columns matching the provided interaction properties.
- Parameters:
indices (list[int] | None) – Interaction indices to filter.
centers (list[str] | None) – Atom centers to filter.
cells (list[list[int]] | None) – Unit cell indices to filter.
orbitals (list[str] | None) – Orbitals to filter.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to include.
data_type (Literal["coxx", "icoxx"] | None) – Restrict column type.
- Returns:
Array with shape (n_energies, n_selected_columns).
- Return type:
np.ndarray
- get_data_indices_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) list[int][source]
Return data-column indices matching the provided interaction properties.
- Parameters:
indices (list[int] | None) – Interaction indices to filter.
centers (list[str] | None) – Atom centers to filter.
cells (list[list[int]] | None) – Unit cell indices to filter.
orbitals (list[str] | None) – Orbitals to filter.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to include.
data_type (Literal["coxx", "icoxx"] | None) – Restrict column type.
- Returns:
Sorted list of data column indices that match the filters.
- Return type:
list[int]
- interaction_indices_to_data_indices_mapping(interaction_indices: int | list[int], spins: Literal[1, -1] | list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) list[int][source]
Map interaction indices to column indices in self.data.
- Parameters:
- Returns:
Sorted list of integer column indices into self.data.
- Return type:
list[int]
- Raises:
ValueError – If an invalid Spin is requested.
- interactions_regex: ClassVar[str] = '(?i)([a-z]+\\d*(?:\\_\\d+)?)(?:\\[(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)\\])?(?:\\[([^]\\s]*)\\])?(?:\\(([^)]*)\\))?'[source]
- parse_bonds() None[source]
Parse the bonds/interactions header block.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
- parse_data() None[source]
Parse the numerical data block into self.data and validate shape.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
- Raises:
ValueError – If the parsed data array shape does not match the expected shape.
- parse_header() None[source]
Parse the file header and set metadata attributes.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
- class DOSCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileRepresents LOBSTER’s projected DOS and local projected DOS.
This class parses and stores data from the DOSCAR file generated by LOBSTER, which contains information about the total and projected density of states (DOS) for a quantum-chemical calculation performed with VASP.
- pdos[source]
Projected DOS data. Access as pdos[atomindex][‘orbitalstring’][Spin.up/Spin.down].
- Type:
list[dict[str, dict[Spin, np.ndarray]]]
- energies[source]
Energies at which the DOS was calculated (in eV, relative to Efermi).
- Type:
np.ndarray
- itdensities[source]
Integrated total density arrays for each spin channel.
- Type:
dict[Spin, np.ndarray]
Initialize a DOSCAR object.
- Parameters:
filename (PathLike | None) – Path to the DOSCAR file, typically “DOSCAR.lobster”.
process_immediately (bool) – Whether to process the file immediately upon initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
- Raises:
ValueError – If neither structure_file nor structure is provided.
- property energies: NDArray[floating][source]
Energies at which the DOS was calculated (in eV, relative to efermi).
- classmethod get_default_filename() str[source]
Get the default filename for the DOSCAR.
- Returns:
Default filename string. “DOSCAR.lobster” for regular DOSCAR, “DOSCAR.LCFO.lobster” for LCFO analysis.
- Return type:
str
- property is_spin_polarized: bool[source]
Whether the system is spin polarized.
- Returns:
True if the system is spin polarized, False otherwise.
- Return type:
bool
- process() None[source]
Process the DOSCAR file and extract DOS data.
Parses the DOSCAR file to extract total DOS, projected DOS, energies, and integrated densities. Sets the appropriate attributes based on whether the calculation is spin-polarized.
- Raises:
ValueError – If the DOSCAR file format is invalid or spin polarization cannot be determined.
- class DOSCAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
DOSCARRepresents LOBSTER’s projected DOS and local projected DOS for LCFO analysis.
This class handles DOSCAR files generated from LCFO analysis, which have a different format than regular DOSCAR files.
Initialize a DOSCAR object.
- Parameters:
filename (PathLike | None) – Path to the DOSCAR file, typically “DOSCAR.lobster”.
process_immediately (bool) – Whether to process the file immediately upon initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
- Raises:
ValueError – If neither structure_file nor structure is provided.
- class Fatband(filename: PathLike, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for a single FATBAND_*.lobster file.
- Parses a single FATBAND file and stores:
center (str): Central atom/species label parsed from filename. orbital (str): Orbital descriptor parsed from filename. nbands (int): Number of bands in the FATBAND file. fatband (LobsterFatband): Parsed fatband data dictionary. Please see
LobsterFatbandfor details.
The parsed data is available in the fatband attribute after parse_file().
Initialize a Fatband parser.
- Parameters:
filename (PathLike) – Path to the FATBAND file to parse.
process_immediately (bool) – If True, parse the file during initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- Raises:
ValueError – If the orbital name cannot be parsed from the filename.
- classmethod from_dict(d: dict[str, Any]) Self[source]
Reconstruct a Fatband instance from a dictionary.
- Parameters:
d (dict[str, Any]) – Dictionary representation of a Fatband instance.
- Returns:
Reconstructed instance.
- Return type:
- class Fatbands(directory: PathLike = '.', structure: IStructure | None = None, kpoints_file: PathLike = 'KPOINTS', vasprun_file: PathLike = 'vasprun.xml', process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
MSONableReader for multiple FATBAND_*.lobster files in a directory.
Collects FATBAND files, reads VASP outputs for the Fermi level and kpoints, and aggregates per-file parsed data.
Initialize the Fatbands reader.
- Parameters:
directory (PathLike) – Path to directory containing FATBAND files.
structure (IStructure | None) – Structure object. If None, POSCAR.lobster is read from directory.
kpoints_file (PathLike) – Name of the KPOINTS file to be read in the directory.
vasprun_file (PathLike) – Name of the vasprun.xml file to be read in the directory.
process_immediately (bool) – If True, process FATBAND files immediately after initialization.
lobster_version (str | None) – Optional LOBSTER version string. If None, the default LOBSTER_VERSION is used.
- Raises:
FileNotFoundError – If required files are missing in the directory.
ValueError – If no FATBAND files are found or KPOINTS file lacks weights.
- as_dict() dict[str, Any][source]
Serializes the LobsterFile object to a dictionary. Spin keys in dictionaries are converted to strings for JSON compatibility.
- Returns:
Dictionary with keys “@module”, “@class”, “@version”, and all attributes of the object.
- Return type:
dict[str, Any]
- fatbands: list[LobsterFatband][source]
- property has_spin: bool[source]
Indicates whether the file could contain spin-polarized data.
- Returns:
True if this file type supports spin, False otherwise.
- Return type:
bool
- class GROSSPOP(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for GROSSPOP.lobster and GROSSPOP.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for GROSSPOP files.
- Returns:
Default filename for the GROSSPOP file, depending on LCFO mode.
- Return type:
str
- class GROSSPOP_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
GROSSPOPParser for GROSSPOP.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOBILIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOBILIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOBILIST_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOBILISTReader for ICOBILIST.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOHPLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOHPLIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOHPLIST_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOHPLISTReader for ICOHPLIST.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOOPLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOOPLIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOXXLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for ICOXX data files (ICOHPLIST, ICOOPLIST, ICOBILIST).
Parses interaction data from ICOXXLIST files, including spin-resolved values.
- interactions[source]
List of parsed interactions.
- Type:
list[LobsterInteractionData]
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None) NDArray[np.floating][source]
Get the data for bonds matching specified properties.
- Parameters:
indices (list[int] | None) – Indices of bonds to retrieve.
centers (list[str] | None) – Centers of bonds to retrieve.
cells (list[list[int]] | None) – Cells of bonds to retrieve.
orbitals (list[str] | None) – Orbitals of bonds to retrieve.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to retrieve.
- Returns:
Array of data for specified bonds.
- Return type:
NDArray[np.floating]
- interactions_regex: ClassVar[str] = '(?i)\\s*(\\d+)\\s+(\\S+\\s+\\S+)\\s+(\\d+\\.\\d+)\\s+(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)?\\s+(\\-?\\d+\\.\\d+)(?:\\s+(\\-?\\d+\\.\\d+))?'[source]
- parse_file() None[source]
Parse ICOXXLIST file using modern format (versions ≥5.1).
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
- parse_file_legacy() None[source]
Parse ICOXXLIST file using legacy format (versions ≤5.1).
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
- class LobsterMatrices(filename: PathLike | None = None, matrix_type: str | None = None, efermi: float | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for LOBSTER matrix files.
Initialize LOBSTER matrices parser.
- Parameters:
filename – Path to the matrix file
matrix_type – Type of matrix. If None, inferred from filename
efermi – Fermi level in eV (required for Hamilton matrices)
process_immediately – Whether to parse the file immediately
- as_dict() dict[str, Any][source]
Serialize object to a dictionary.
- Returns:
Dictionary representation of the object.
- Return type:
dict[str, Any]
- classmethod get_default_filename() str[source]
Get the default filename for the LobsterMatrices class.
- Returns:
Default filename.
- Return type:
str
- get_matrix_type() str[source]
Infer matrix type from filename.
- Returns:
Matrix type.
- Return type:
str
- get_onsite_values(center: str | None = None, orbital: str | None = None) dict | float | floating[source]
Get onsite values for specific centers/orbitals.
- Parameters:
center (str | None) – Specific center or None for all.
orbital (str | None) – Specific orbital or None for all.
- Returns:
Dict of values or single value if both specified.
- Return type:
dict | float | floating
- class LobsterOut(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for lobsterout file from LOBSTER.
This class reads the lobsterout file and extracts information about basis functions, spillings, warnings, timing, and file presence. It supports parsing for different LOBSTER versions and provides attributes to access the parsed data.
- has_madelung[source]
Whether SitePotentials.lobster and MadelungEnergies.lobster are present.
- Type:
bool
- is_restart_from_projection[source]
Whether calculation was restarted from a projection file.
- Type:
bool
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for LobsterOut.
- Returns:
The default filename.
- Return type:
str
- static get_lobster_version(lines: list[str]) str[source]
Get the LOBSTER version from the lobsterout lines.
- Parameters:
lines (list[str]) – Lines of the lobsterout file.
- Returns:
The LOBSTER version.
- Return type:
str
- Raises:
RuntimeError – If the version line is not found.
- class MadelungEnergies(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for MadelungEnergies.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for MadelungEnergies.
- Returns:
Default filename.
- Return type:
str
- class NcICOBILIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for NcICOBILIST.lobster files.
Parses non-conventional ICOBI interaction data.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None) NDArray[np.floating][source]
Get the data for bonds matching specified properties.
- Parameters:
indices (list[int] | None) – Indices of bonds to retrieve.
centers (list[str] | None) – Centers of bonds to retrieve.
cells (list[list[int]] | None) – Cells of bonds to retrieve.
orbitals (list[str] | None) – Orbitals of bonds to retrieve.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to retrieve.
- Returns:
Array of data for specified bonds.
- Return type:
NDArray[np.floating]
- interactions_regex: ClassVar[str] = '(?i)([a-z]+\\d*(?:\\_\\d+)?)(?:\\[(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)\\])?(?:\\[([^]\\s]*)\\])?(?:\\(([^)]*)\\))?'[source]
- parse_file() None[source]
Parse the NcICOBILIST file.
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
- class POLARIZATION(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for POLARIZATION.lobster file.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class SitePotentials(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for SitePotentials.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for SitePotentials.
- Returns:
Default filename.
- Return type:
str
- class Wavefunction(filename: PathLike, structure: Structure, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for wave function files from LOBSTER.
Reads wave function files and creates VolumetricData objects.
Initialize the Wavefunction parser.
- Parameters:
filename (PathLike) – The wavecar file from LOBSTER.
structure (Structure) – The Structure object.
process_immediately (bool) – Whether to parse the file immediately. Defaults to True.
- get_volumetricdata_density() VolumetricData[source]
Get VolumetricData object for the density part of the wave function.
- Returns:
Density volumetric data.
- Return type:
- get_volumetricdata_imaginary() VolumetricData[source]
Get VolumetricData object for the imaginary part of the wave function.
- Returns:
Imaginary part volumetric data.
- Return type:
- get_volumetricdata_real() VolumetricData[source]
Get VolumetricData object for the real part of the wave function.
- Returns:
Real part volumetric data.
- Return type:
- parse_file() None[source]
Parse wave function file.
Reads the wave function file and extracts grid, points, real and imaginary parts, and distances.
- Raises:
ValueError – If the number of real or imaginary parts does not match the expected grid size.
- set_volumetric_data(grid: tuple[int, int, int], structure: Structure) None[source]
Create VolumetricData instances for real, imaginary, and density parts.
- Parameters:
grid (tuple[int, int, int]) – Grid on which wavefunction was calculated.
structure (Structure) – Structure object.
- Raises:
ValueError – If the wavefunction file does not contain all relevant points.
- write_file(filename: PathLike = 'WAVECAR.vasp', part: Literal['real', 'imaginary', 'density'] = 'real') None[source]
Save the wave function in a file readable by VESTA.
- Parameters:
filename (PathLike) – Output file name. Defaults to “WAVECAR.vasp”.
part (Literal["real", "imaginary", "density"]) – Which part to save. Defaults to “real”.
- Raises:
ValueError – If the specified part is not “real”, “imaginary”, or “density”.
Submodules
pymatgen.io.lobster.future.outputs.bands module
- class BandOverlaps(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for bandOverlaps.lobster files.
Parses band overlap information produced by LOBSTER and stores it in a structured dictionary keyed by spin. See the
LobsterBandOverlapstype for details.- band_overlaps[source]
“k_points”, “max_deviations”, and “matrices” holding the corresponding data. - “k_points” (list[list[float]]): List of k-point coordinates. - “max_deviations” (list[float]): List of maximal deviations for each k-point. - “matrices” (list[np.ndarray]): List of overlap matrices for each k-point.
each holding data for each spin channel.
- Type:
dict[Spin, dict]
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod from_dict(d: dict[str, Any]) Self[source]
Reconstruct a BandOverlaps instance from a dictionary.
- Parameters:
d (dict[str, Any]) – Dictionary representation of a BandOverlaps instance.
- Returns:
Reconstructed instance.
- Return type:
- classmethod get_default_filename() str[source]
Get the default filename for the BandOverlaps class.
- Returns:
Default filename.
- Return type:
str
- has_good_quality_check_occupied_bands(number_occ_bands_spin_up: int, number_occ_bands_spin_down: int | None = None, spin_polarized: bool = False, limit_deviation: float = 0.1) bool[source]
Check if deviation from the ideal overlap for occupied bands is acceptable.
- Parameters:
number_occ_bands_spin_up (int) – Number of occupied bands for spin up.
number_occ_bands_spin_down (int | None) – Number of occupied bands for spin down. Required if spin_polarized is True.
spin_polarized (bool) – Whether the calculation is spin-polarized.
limit_deviation (float) – Acceptable absolute tolerance for deviations.
- Raises:
ValueError – If number_occ_bands_spin_down is not specified for spin-polarized calculations.
- Returns:
True if all occupied-band submatrices are close to identity within the tolerance.
- Return type:
bool
- has_good_quality_max_deviation(limit_max_deviation: float = 0.1) bool[source]
Check if the maxDeviation values are within a given limit.
- Parameters:
limit_max_deviation (float) – Upper limit for acceptable max_deviation.
- Returns:
True if all recorded max_deviation values are <= limit_max_deviation.
- Return type:
bool
- parse_file(spin_numbers: list[int]) None[source]
Read all lines of the file and populate self.band_overlaps.
- Parameters:
spin_numbers (list[int]) – Two integers indicating the spin numbering used in the file (e.g., [0, 1] for legacy or [1, 2] for newer versions).
- Raises:
ValueError – If no data is found for a key in the bandOverlaps file.
- parse_file_v3_2_legacy() None[source]
Parse bandOverlaps.lobster file for LOBSTER versions ≤3.2.
Uses legacy spin numbering [0, 1] for parsing.
- class Fatband(filename: PathLike, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for a single FATBAND_*.lobster file.
- Parses a single FATBAND file and stores:
center (str): Central atom/species label parsed from filename. orbital (str): Orbital descriptor parsed from filename. nbands (int): Number of bands in the FATBAND file. fatband (LobsterFatband): Parsed fatband data dictionary. Please see
LobsterFatbandfor details.
The parsed data is available in the fatband attribute after parse_file().
Initialize a Fatband parser.
- Parameters:
filename (PathLike) – Path to the FATBAND file to parse.
process_immediately (bool) – If True, parse the file during initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- Raises:
ValueError – If the orbital name cannot be parsed from the filename.
- classmethod from_dict(d: dict[str, Any]) Self[source]
Reconstruct a Fatband instance from a dictionary.
- Parameters:
d (dict[str, Any]) – Dictionary representation of a Fatband instance.
- Returns:
Reconstructed instance.
- Return type:
- class Fatbands(directory: PathLike = '.', structure: IStructure | None = None, kpoints_file: PathLike = 'KPOINTS', vasprun_file: PathLike = 'vasprun.xml', process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
MSONableReader for multiple FATBAND_*.lobster files in a directory.
Collects FATBAND files, reads VASP outputs for the Fermi level and kpoints, and aggregates per-file parsed data.
Initialize the Fatbands reader.
- Parameters:
directory (PathLike) – Path to directory containing FATBAND files.
structure (IStructure | None) – Structure object. If None, POSCAR.lobster is read from directory.
kpoints_file (PathLike) – Name of the KPOINTS file to be read in the directory.
vasprun_file (PathLike) – Name of the vasprun.xml file to be read in the directory.
process_immediately (bool) – If True, process FATBAND files immediately after initialization.
lobster_version (str | None) – Optional LOBSTER version string. If None, the default LOBSTER_VERSION is used.
- Raises:
FileNotFoundError – If required files are missing in the directory.
ValueError – If no FATBAND files are found or KPOINTS file lacks weights.
- as_dict() dict[str, Any][source]
Serializes the LobsterFile object to a dictionary. Spin keys in dictionaries are converted to strings for JSON compatibility.
- Returns:
Dictionary with keys “@module”, “@class”, “@version”, and all attributes of the object.
- Return type:
dict[str, Any]
- fatbands: list[LobsterFatband][source]
- property has_spin: bool[source]
Indicates whether the file could contain spin-polarized data.
- Returns:
True if this file type supports spin, False otherwise.
- Return type:
bool
pymatgen.io.lobster.future.outputs.coxxcar module
- class COBICAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COBICAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COBICAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COBICARReader for COBICAR.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COHPCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COHPCAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COHPCAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COHPCARReader for COHPCAR.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COOPCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
COXXCARReader for COOPCAR.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class COXXCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for COXXCAR-style files (COOPCAR, COHPCAR, COBICAR).
Parses LOBSTER’s COXXCAR outputs and organizes bond and orbital-resolved interaction data.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- property energies: NDArray[np.floating][source]
Return the energy grid.
- Returns:
Energies (first column of self.data).
- Return type:
NDArray[np.floating]
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) NDArray[np.floating][source]
Return the data columns matching the provided interaction properties.
- Parameters:
indices (list[int] | None) – Interaction indices to filter.
centers (list[str] | None) – Atom centers to filter.
cells (list[list[int]] | None) – Unit cell indices to filter.
orbitals (list[str] | None) – Orbitals to filter.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to include.
data_type (Literal["coxx", "icoxx"] | None) – Restrict column type.
- Returns:
Array with shape (n_energies, n_selected_columns).
- Return type:
np.ndarray
- get_data_indices_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) list[int][source]
Return data-column indices matching the provided interaction properties.
- Parameters:
indices (list[int] | None) – Interaction indices to filter.
centers (list[str] | None) – Atom centers to filter.
cells (list[list[int]] | None) – Unit cell indices to filter.
orbitals (list[str] | None) – Orbitals to filter.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to include.
data_type (Literal["coxx", "icoxx"] | None) – Restrict column type.
- Returns:
Sorted list of data column indices that match the filters.
- Return type:
list[int]
- interaction_indices_to_data_indices_mapping(interaction_indices: int | list[int], spins: Literal[1, -1] | list[Literal[1, -1]] | None = None, data_type: Literal['coxx', 'icoxx'] | None = None) list[int][source]
Map interaction indices to column indices in self.data.
- Parameters:
- Returns:
Sorted list of integer column indices into self.data.
- Return type:
list[int]
- Raises:
ValueError – If an invalid Spin is requested.
- interactions_regex: ClassVar[str] = '(?i)([a-z]+\\d*(?:\\_\\d+)?)(?:\\[(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)\\])?(?:\\[([^]\\s]*)\\])?(?:\\(([^)]*)\\))?'[source]
- parse_bonds() None[source]
Parse the bonds/interactions header block.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
- parse_data() None[source]
Parse the numerical data block into self.data and validate shape.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
- Raises:
ValueError – If the parsed data array shape does not match the expected shape.
- parse_header() None[source]
Parse the file header and set metadata attributes.
- Parameters:
lines (list[str]) – Lines of the COXXCAR file.
pymatgen.io.lobster.future.outputs.doscar module
- class DOSCAR(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileRepresents LOBSTER’s projected DOS and local projected DOS.
This class parses and stores data from the DOSCAR file generated by LOBSTER, which contains information about the total and projected density of states (DOS) for a quantum-chemical calculation performed with VASP.
- pdos[source]
Projected DOS data. Access as pdos[atomindex][‘orbitalstring’][Spin.up/Spin.down].
- Type:
list[dict[str, dict[Spin, np.ndarray]]]
- energies[source]
Energies at which the DOS was calculated (in eV, relative to Efermi).
- Type:
np.ndarray
- itdensities[source]
Integrated total density arrays for each spin channel.
- Type:
dict[Spin, np.ndarray]
Initialize a DOSCAR object.
- Parameters:
filename (PathLike | None) – Path to the DOSCAR file, typically “DOSCAR.lobster”.
process_immediately (bool) – Whether to process the file immediately upon initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
- Raises:
ValueError – If neither structure_file nor structure is provided.
- property energies: NDArray[floating][source]
Energies at which the DOS was calculated (in eV, relative to efermi).
- classmethod get_default_filename() str[source]
Get the default filename for the DOSCAR.
- Returns:
Default filename string. “DOSCAR.lobster” for regular DOSCAR, “DOSCAR.LCFO.lobster” for LCFO analysis.
- Return type:
str
- property is_spin_polarized: bool[source]
Whether the system is spin polarized.
- Returns:
True if the system is spin polarized, False otherwise.
- Return type:
bool
- process() None[source]
Process the DOSCAR file and extract DOS data.
Parses the DOSCAR file to extract total DOS, projected DOS, energies, and integrated densities. Sets the appropriate attributes based on whether the calculation is spin-polarized.
- Raises:
ValueError – If the DOSCAR file format is invalid or spin polarization cannot be determined.
- class DOSCAR_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
DOSCARRepresents LOBSTER’s projected DOS and local projected DOS for LCFO analysis.
This class handles DOSCAR files generated from LCFO analysis, which have a different format than regular DOSCAR files.
Initialize a DOSCAR object.
- Parameters:
filename (PathLike | None) – Path to the DOSCAR file, typically “DOSCAR.lobster”.
process_immediately (bool) – Whether to process the file immediately upon initialization.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
- Raises:
ValueError – If neither structure_file nor structure is provided.
pymatgen.io.lobster.future.outputs.icoxxlist module
- class ICOBILIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOBILIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOBILIST_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOBILISTReader for ICOBILIST.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOHPLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOHPLIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOHPLIST_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOHPLISTReader for ICOHPLIST.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOOPLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
ICOXXLISTReader for ICOOPLIST.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class ICOXXLIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for ICOXX data files (ICOHPLIST, ICOOPLIST, ICOBILIST).
Parses interaction data from ICOXXLIST files, including spin-resolved values.
- interactions[source]
List of parsed interactions.
- Type:
list[LobsterInteractionData]
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None) NDArray[np.floating][source]
Get the data for bonds matching specified properties.
- Parameters:
indices (list[int] | None) – Indices of bonds to retrieve.
centers (list[str] | None) – Centers of bonds to retrieve.
cells (list[list[int]] | None) – Cells of bonds to retrieve.
orbitals (list[str] | None) – Orbitals of bonds to retrieve.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to retrieve.
- Returns:
Array of data for specified bonds.
- Return type:
NDArray[np.floating]
- interactions_regex: ClassVar[str] = '(?i)\\s*(\\d+)\\s+(\\S+\\s+\\S+)\\s+(\\d+\\.\\d+)\\s+(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)?\\s+(\\-?\\d+\\.\\d+)(?:\\s+(\\-?\\d+\\.\\d+))?'[source]
- parse_file() None[source]
Parse ICOXXLIST file using modern format (versions ≥5.1).
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
- parse_file_legacy() None[source]
Parse ICOXXLIST file using legacy format (versions ≤5.1).
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
- class NcICOBILIST(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterInteractionsHolderReader for NcICOBILIST.lobster files.
Parses non-conventional ICOBI interaction data.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- get_data_by_properties(indices: list[int] | None = None, centers: list[str] | None = None, cells: list[list[int]] | None = None, orbitals: list[str] | None = None, length: tuple[float, float] | None = None, spins: list[Literal[1, -1]] | None = None) NDArray[np.floating][source]
Get the data for bonds matching specified properties.
- Parameters:
indices (list[int] | None) – Indices of bonds to retrieve.
centers (list[str] | None) – Centers of bonds to retrieve.
cells (list[list[int]] | None) – Cells of bonds to retrieve.
orbitals (list[str] | None) – Orbitals of bonds to retrieve.
length (tuple[float, float] | None) – Length range to filter.
spins (list[Spin] | None) – Spins to retrieve.
- Returns:
Array of data for specified bonds.
- Return type:
NDArray[np.floating]
- interactions_regex: ClassVar[str] = '(?i)([a-z]+\\d*(?:\\_\\d+)?)(?:\\[(\\-?\\d+\\s+\\-?\\d+\\s+\\-?\\d+)\\])?(?:\\[([^]\\s]*)\\])?(?:\\(([^)]*)\\))?'[source]
- parse_file() None[source]
Parse the NcICOBILIST file.
Extracts interaction data, including spin-resolved values, and populates the interactions, spins, and data attributes.
- Raises:
ValueError – If the file contains invalid spin values or cannot parse interaction lines.
pymatgen.io.lobster.future.outputs.lobsterout module
- class LobsterOut(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for lobsterout file from LOBSTER.
This class reads the lobsterout file and extracts information about basis functions, spillings, warnings, timing, and file presence. It supports parsing for different LOBSTER versions and provides attributes to access the parsed data.
- has_madelung[source]
Whether SitePotentials.lobster and MadelungEnergies.lobster are present.
- Type:
bool
- is_restart_from_projection[source]
Whether calculation was restarted from a projection file.
- Type:
bool
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for LobsterOut.
- Returns:
The default filename.
- Return type:
str
- static get_lobster_version(lines: list[str]) str[source]
Get the LOBSTER version from the lobsterout lines.
- Parameters:
lines (list[str]) – Lines of the lobsterout file.
- Returns:
The LOBSTER version.
- Return type:
str
- Raises:
RuntimeError – If the version line is not found.
pymatgen.io.lobster.future.outputs.misc module
- class BWDF(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for BWDF.lobster/BWDFCOHP.lobster files.
- Parameters:
filename (PathLike) – The BWDF file from LOBSTER, typically “BWDF.lobster” or “BWDFCOHP.lobster”.
- classmethod from_dict(d: dict[str, Any]) Self[source]
Deserialize object from dictionary produced by as_dict.
- Parameters:
d (dict[str, Any]) – Dictionary representation of the object.
- Returns:
Deserialized BWDF object.
- Return type:
Self
- class BWDFCOHP(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
BWDFParser for BWDFCOHP.lobster files.
- Returns:
None
- Parameters:
filename (PathLike) – The BWDF file from LOBSTER, typically “BWDF.lobster” or “BWDFCOHP.lobster”.
- class LobsterMatrices(filename: PathLike | None = None, matrix_type: str | None = None, efermi: float | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for LOBSTER matrix files.
Initialize LOBSTER matrices parser.
- Parameters:
filename – Path to the matrix file
matrix_type – Type of matrix. If None, inferred from filename
efermi – Fermi level in eV (required for Hamilton matrices)
process_immediately – Whether to parse the file immediately
- as_dict() dict[str, Any][source]
Serialize object to a dictionary.
- Returns:
Dictionary representation of the object.
- Return type:
dict[str, Any]
- classmethod get_default_filename() str[source]
Get the default filename for the LobsterMatrices class.
- Returns:
Default filename.
- Return type:
str
- get_matrix_type() str[source]
Infer matrix type from filename.
- Returns:
Matrix type.
- Return type:
str
- get_onsite_values(center: str | None = None, orbital: str | None = None) dict | float | floating[source]
Get onsite values for specific centers/orbitals.
- Parameters:
center (str | None) – Specific center or None for all.
orbital (str | None) – Specific orbital or None for all.
- Returns:
Dict of values or single value if both specified.
- Return type:
dict | float | floating
- class MadelungEnergies(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for MadelungEnergies.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for MadelungEnergies.
- Returns:
Default filename.
- Return type:
str
- class POLARIZATION(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for POLARIZATION.lobster file.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class SitePotentials(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for SitePotentials.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for SitePotentials.
- Returns:
Default filename.
- Return type:
str
- class Wavefunction(filename: PathLike, structure: Structure, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for wave function files from LOBSTER.
Reads wave function files and creates VolumetricData objects.
Initialize the Wavefunction parser.
- Parameters:
filename (PathLike) – The wavecar file from LOBSTER.
structure (Structure) – The Structure object.
process_immediately (bool) – Whether to parse the file immediately. Defaults to True.
- get_volumetricdata_density() VolumetricData[source]
Get VolumetricData object for the density part of the wave function.
- Returns:
Density volumetric data.
- Return type:
- get_volumetricdata_imaginary() VolumetricData[source]
Get VolumetricData object for the imaginary part of the wave function.
- Returns:
Imaginary part volumetric data.
- Return type:
- get_volumetricdata_real() VolumetricData[source]
Get VolumetricData object for the real part of the wave function.
- Returns:
Real part volumetric data.
- Return type:
- parse_file() None[source]
Parse wave function file.
Reads the wave function file and extracts grid, points, real and imaginary parts, and distances.
- Raises:
ValueError – If the number of real or imaginary parts does not match the expected grid size.
- set_volumetric_data(grid: tuple[int, int, int], structure: Structure) None[source]
Create VolumetricData instances for real, imaginary, and density parts.
- Parameters:
grid (tuple[int, int, int]) – Grid on which wavefunction was calculated.
structure (Structure) – Structure object.
- Raises:
ValueError – If the wavefunction file does not contain all relevant points.
- write_file(filename: PathLike = 'WAVECAR.vasp', part: Literal['real', 'imaginary', 'density'] = 'real') None[source]
Save the wave function in a file readable by VESTA.
- Parameters:
filename (PathLike) – Output file name. Defaults to “WAVECAR.vasp”.
part (Literal["real", "imaginary", "density"]) – Which part to save. Defaults to “real”.
- Raises:
ValueError – If the specified part is not “real”, “imaginary”, or “density”.
pymatgen.io.lobster.future.outputs.populations module
Classes for parsing LOBSTER population analysis output files.
Provides classes to read and parse population analysis files generated by LOBSTER, such as CHARGE.lobster, CHARGE.LCFO.lobster, GROSSPOP.lobster, and GROSSPOP.LCFO.lobster. Extracts Mulliken and Loewdin charges and gross populations for further analysis.
- class CHARGE(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for CHARGE.lobster and CHARGE.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for CHARGE files.
- Returns:
Default filename for the CHARGE file, depending on LCFO mode.
- Return type:
str
- class CHARGE_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
CHARGEParser for CHARGE.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- class GROSSPOP(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
LobsterFileParser for GROSSPOP.lobster and GROSSPOP.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)
- classmethod get_default_filename() str[source]
Get the default filename for GROSSPOP files.
- Returns:
Default filename for the GROSSPOP file, depending on LCFO mode.
- Return type:
str
- class GROSSPOP_LCFO(filename: PathLike | None = None, process_immediately: bool = True, lobster_version: str | None = None)[source]
Bases:
GROSSPOPParser for GROSSPOP.LCFO.lobster files.
Initialize a LobsterFile instance.
- Parameters:
filename (PathLike | None) – Path to the file. If None, uses the default filename.
process_immediately (bool) – Whether to process the file immediately upon initialization. Defaults to True.
lobster_version (str | None) – LOBSTER version string to use for parsing. If None, attempts to detect
default. (from file or falls back to)