mp_api.client.routes.molecules.orbitals.MoleculesOrbitalsRester¶
- class mp_api.client.routes.molecules.orbitals.MoleculesOrbitalsRester(api_key: str | None = None, endpoint: str | None = None, include_user_agent: bool = True, session: requests.Session | None = None, s3_client: Any | None = None, debug: bool = False, monty_decode: bool = True, use_document_model: bool = True, timeout: int = 20, headers: dict | None = None, mute_progress_bars: bool = False)[source]¶
Bases:
BaseRester
[OrbitalDoc
]Initialize the REST API helper class.
- Parameters:
api_key – A String API key for accessing the MaterialsProject REST interface. Please obtain your API key at https://www.materialsproject.org/dashboard. If this is None, the code will check if there is a “PMG_MAPI_KEY” setting. If so, it will use that environment variable. This makes easier for heavy users to simply add this environment variable to their setups and MPRester can then be called without any arguments.
endpoint – Url of endpoint to access the MaterialsProject REST interface. Defaults to the standard Materials Project REST address at “https://api.materialsproject.org”, but can be changed to other urls implementing a similar interface.
include_user_agent – If True, will include a user agent with the HTTP request including information on pymatgen and system version making the API request. This helps MP support pymatgen users, and is similar to what most web browsers send with each page request. Set to False to disable the user agent.
session – requests Session object with which to connect to the API, for advanced usage only.
s3_client – boto3 S3 client object with which to connect to the object stores.ct to the object stores.ct to the object stores.
debug – if True, print the URL for every request
monty_decode – Decode the data using monty into python objects
use_document_model – If False, skip the creating the document model and return data as a dictionary. This can be simpler to work with but bypasses data validation and will not give auto-complete for available fields.
timeout – Time in seconds to wait until a request timeout error is thrown
headers – Custom headers for localhost connections.
mute_progress_bars – Whether to disable progress bars.
- __init__(api_key: str | None = None, endpoint: str | None = None, include_user_agent: bool = True, session: requests.Session | None = None, s3_client: Any | None = None, debug: bool = False, monty_decode: bool = True, use_document_model: bool = True, timeout: int = 20, headers: dict | None = None, mute_progress_bars: bool = False)¶
Initialize the REST API helper class.
- Parameters:
api_key – A String API key for accessing the MaterialsProject REST interface. Please obtain your API key at https://www.materialsproject.org/dashboard. If this is None, the code will check if there is a “PMG_MAPI_KEY” setting. If so, it will use that environment variable. This makes easier for heavy users to simply add this environment variable to their setups and MPRester can then be called without any arguments.
endpoint – Url of endpoint to access the MaterialsProject REST interface. Defaults to the standard Materials Project REST address at “https://api.materialsproject.org”, but can be changed to other urls implementing a similar interface.
include_user_agent – If True, will include a user agent with the HTTP request including information on pymatgen and system version making the API request. This helps MP support pymatgen users, and is similar to what most web browsers send with each page request. Set to False to disable the user agent.
session – requests Session object with which to connect to the API, for advanced usage only.
s3_client – boto3 S3 client object with which to connect to the object stores.ct to the object stores.ct to the object stores.
debug – if True, print the URL for every request
monty_decode – Decode the data using monty into python objects
use_document_model – If False, skip the creating the document model and return data as a dictionary. This can be simpler to work with but bypasses data validation and will not give auto-complete for available fields.
timeout – Time in seconds to wait until a request timeout error is thrown
headers – Custom headers for localhost connections.
mute_progress_bars – Whether to disable progress bars.
Methods
__init__
([api_key, endpoint, ...])Initialize the REST API helper class.
count
([criteria])Return a count of total documents.
get_data_by_id
(document_id[, fields])search
([molecule_ids, property_ids, charge, ...])Query molecules redox docs using a variety of search criteria.
Attributes
available_fields
primary_key
s3_client
session
suffix
supports_versions
- document_model¶
alias of
OrbitalDoc
- search(molecule_ids: MPculeID | list[MPculeID] | None = None, property_ids: str | list[str] | None = None, charge: int | None = None, spin_multiplicity: int | None = None, level_of_theory: str | None = None, solvent: str | None = None, lot_solvent: str | None = None, formula: str | list[str] | None = None, elements: list[str] | None = None, exclude_elements: list[str] | None = None, chemsys: str | list[str] | None = None, electron_type_population: str | None = None, core_electrons: tuple[float, float] | None = None, valence_electrons: tuple[float, float] | None = None, rydberg_electrons: tuple[float, float] | None = None, total_electrons: tuple[float, float] | None = None, electron_type_lp: str | None = None, lp_type: str | None = None, s_character: tuple[float, float] | None = None, p_character: tuple[float, float] | None = None, d_character: tuple[float, float] | None = None, f_character: tuple[float, float] | None = None, lp_occupancy: tuple[float, float] | None = None, electron_type_bond: str | None = None, bond_type: str | None = None, s_character_atom1: tuple[float, float] | None = None, s_character_atom2: tuple[float, float] | None = None, p_character_atom1: tuple[float, float] | None = None, p_character_atom2: tuple[float, float] | None = None, d_character_atom1: tuple[float, float] | None = None, d_character_atom2: tuple[float, float] | None = None, f_character_atom1: tuple[float, float] | None = None, f_character_atom2: tuple[float, float] | None = None, polarization_atom1: tuple[float, float] | None = None, polarization_atom2: tuple[float, float] | None = None, bond_occupancy: tuple[float, float] | None = None, electron_type_interaction: str | None = None, donor_type: str | None = None, acceptor_type: str | None = None, perturbation_energy: tuple[float, float] | None = None, energy_difference: tuple[float, float] | None = None, fock_element: tuple[float, float] | None = None, num_chunks: int | None = None, chunk_size: int = 1000, all_fields: bool = True, fields: list[str] | None = None)[source]¶
Query molecules redox docs using a variety of search criteria.
- Parameters:
molecule_ids (MPculeID, List[MPculeID]) – List of Materials Project Molecule IDs (MPculeIDs) to return data for.
property_ids (str, List[str]) – List of property IDs to return data for.
charge (Tuple[int, int]) – Minimum and maximum charge for the molecule.
spin_multiplicity (Tuple[int, int]) – Minimum and maximum spin for the molecule.
level_of_theory (str) – Desired level of theory (e.g. “wB97X-V/def2-TZVPPD/SMD”)
solvent (str) – Desired solvent (e.g. “SOLVENT=WATER”)
lot_solvent (str) – Desired combination of level of theory and solvent (e.g. “wB97X-V/def2-TZVPPD/SMD(SOLVENT=THF)”)
correction_level_of_theory (str) – Desired correction level of theory (e.g. “wB97X-V/def2-TZVPPD/SMD”)
correction_solvent (str) – Desired correction solvent (e.g. “SOLVENT=WATER”)
correction_lot_solvent (str) – Desired correction combination of level of theory and solvent (e.g. “wB97X-V/def2-TZVPPD/SMD(SOLVENT=THF)”)
combined_lot_solvent (str) – Desired combination of level of theory and solvent including both main thermo calculation and single-point energy correction (e.g. “wB97X-D/def2-SVPD/VACUUM//wB97X-V/def2-TZVPPD/SMD(SOLVENT=THF)”)
formula (str, List[str]) – An alphabetical formula or list of formulas (e.g. “C2 Li2 O4”, [“C2 H4”, “C2 H6”]).
elements (List[str]) – A list of elements.
exclude_elements (List(str)) – List of elements to exclude.
chemsys (str, List[str]) – A chemical system, list of chemical systems (e.g., Li-C-O, [C-O-H-N, Li-N]).
electron_type_population (str) – Should alpha (‘alpha’), beta (‘beta’), or all electrons (None) be considered in a query of natural electron populations?
core_electrons (Tuple[float, float]) – Minimum and maximum number of core electrons in an atom in this molecule.
valence_electrons (Tuple[float, float]) – Minimum and maximum number of valence electrons in an atom in this molecule.
rydberg_electrons (Tuple[float, float]) – Minimum and maximum number of rydberg electrons in an atom in this molecule.
total_electrons – (Tuple[float, float]): Minimum and maximum number of total electrons in an atom in this molecule.
electron_type_lp (str) – Should alpha (‘alpha’), beta (‘beta’), or all electrons (None) be considered in a query of lone pairs?
lp_type (str) – Type of orbital - “LP” for “lone pair” or “LV” for “lone vacant”
s_character (Tuple[float, float]) – Min and max percentage of the lone pair constituted by s atomic orbitals.
p_character (Tuple[float, float]) – Min and max percentage of the lone pair constituted by p atomic orbitals.
d_character (Tuple[float, float]) – Min and max percentage of the lone pair constituted by d atomic orbitals.
f_character (Tuple[float, float]) – Min and max percentage of the lone pair constituted by f atomic orbitals.
lp_occupancy (Tuple[float, float]) – Min and max number of electrons in the lone pair.
electron_type_bond (str) – Should alpha (‘alpha’), beta (‘beta’), or all electrons (None) be considered in a query of bonds?
bond_type (str) – Type of orbital, e.g. “BD” for bonding or “BD*” for antibonding
s_character_atom1 (Tuple[float, float]) – Min and max percentage of the bond constituted by s atomic orbitals on the first atom.
s_character_atom2 (Tuple[float, float]) – Min and max percentage of the bond constituted by s atomic orbitals on the second atom.
p_character_atom1 (Tuple[float, float]) – Min and max percentage of the bond constituted by p atomic orbitals on the first atom.
p_character_atom2 (Tuple[float, float]) – Min and max percentage of the bond constituted by p atomic orbitals on the second atom.
d_character_atom1 (Tuple[float, float]) – Min and max percentage of the bond constituted by d atomic orbitals on the first atom.
d_character_atom2 (Tuple[float, float]) – Min and max percentage of the bond constituted by d atomic orbitals on the second atom.
f_character_atom1 (Tuple[float, float]) – Min and max percentage of the bond constituted by f atomic orbitals on the first atom.
f_character_atom2 (Tuple[float, float]) – Min and max percentage of the bond constituted by f atomic orbitals on the second atom.
polarization_atom1 (Tuple[float, float]) – Min and max fraction of electrons in the bond donated by the first atom.
polarization_atom2 (Tuple[float, float]) – Min and max fraction of electrons in the bond donated by the second atom.
bond_occupancy (Tuple[float, float]) – Min and max number of electrons in the bond.
electron_type_interaction (str) – Should alpha (‘alpha’), beta (‘beta’), or all electrons (None) be considered in a query of orbital interactions?
donor_type (str) – Type of donor orbital, e.g. ‘BD’ for bonding or ‘RY*’ for anti-Rydberg
acceptor_type (str) – Type of acceptor orbital, e.g. ‘BD’ for bonding or ‘RY*’ for anti-Rydberg
perturbation_energy (Tuple[float, float]) – Min and max perturbation energy of the interaction
energy_difference (Tuple[float, float]) – Min and max energy difference between interacting orbitals
fock_element (Tuple[float, float]) – Min and max interaction Fock matrix element
num_chunks (int) – Maximum number of chunks of data to yield. None will yield all possible.
chunk_size (int) – Number of data entries per chunk.
all_fields (bool) – Whether to return all fields in the document. Defaults to True.
fields (List[str]) – List of fields in MoleculeDoc to return data for. Default is “molecule_id”, “property_id”, “solvent”, “method”, “last_updated” if all_fields is False.
- Returns:
([RedoxDoc]) List of molecule redox documents