mlp
#
Functionality for creating and managing ML potentials.
Functions:
-
supports_charges–Check if a given ML potential model supports charged molecules.
-
validate_model_charge_compatibility–Validate that a charged molecule is only used with compatible ML potentials.
-
load_egret_1–Load the Egret-1 MLPotential from local package resources.
-
get_mlp–Get the MLPotential model based on the specified model name.
Attributes:
-
AvailableModels–Available MLPotential models.
AvailableModels
module-attribute
#
AvailableModels = Literal[
"aceff-2.0",
"mace-off23-small",
"mace-off23-medium",
"mace-off23-large",
"egret-1",
"aimnet2_b973c_d3_ens",
"aimnet2_wb97m_d3_ens",
]
Available MLPotential models.
supports_charges
#
supports_charges(model: AvailableModels) -> bool
Check if a given ML potential model supports charged molecules.
Parameters:
-
model(AvailableModels) –The model name to check.
Returns:
-
bool–True if the model supports charged molecules, False otherwise.
Source code in presto/mlp.py
validate_model_charge_compatibility
#
validate_model_charge_compatibility(
model: AvailableModels, mol: Molecule
) -> None
Validate that a charged molecule is only used with compatible ML potentials.
Parameters:
-
model(AvailableModels) –The ML potential model to use.
-
mol(Molecule) –The molecule to check.
Raises:
-
InvalidSettingsError–If the molecule is charged but the model does not support charges.
Source code in presto/mlp.py
load_egret_1
#
Load the Egret-1 MLPotential from local package resources.
get_mlp
#
get_mlp(model: AvailableModels) -> MLPotential
Get the MLPotential model based on the specified model name.