Auto3D.config.Auto3DOptions
- class Auto3D.config.Auto3DOptions(path: str | None = None, k: int | bool = False, window: float | bool = False, verbose: bool = False, job_name: str = '', enumerate_tautomer: bool = False, tauto_engine: str = 'rdkit', pKaNorm: bool = True, isomer_engine: str = 'rdkit', enumerate_isomer: bool = True, mode_oe: str = 'classic', mpi_np: int = 4, max_confs: int | None = None, use_gpu: bool = True, gpu_idx: int | list[int] = 0, capacity: int = 42, optimizing_engine: str = 'AIMNET', patience: int = 250, opt_steps: int = 2000, convergence_threshold: float = 0.01, threshold: float = 0.3, memory: int | None = None, batchsize_atoms: int = 1024, allow_tf32: bool = False)
Bases:
objectConfiguration options for Auto3D conformer generation.
This dataclass provides proper type hints, validation, and IDE support for Auto3D configuration.
Example
>>> from Auto3D import Auto3DOptions, main >>> config = Auto3DOptions(path="input.smi", k=5) >>> result = main(config)
- __init__(path: str | None = None, k: int | bool = False, window: float | bool = False, verbose: bool = False, job_name: str = '', enumerate_tautomer: bool = False, tauto_engine: str = 'rdkit', pKaNorm: bool = True, isomer_engine: str = 'rdkit', enumerate_isomer: bool = True, mode_oe: str = 'classic', mpi_np: int = 4, max_confs: int | None = None, use_gpu: bool = True, gpu_idx: int | list[int] = 0, capacity: int = 42, optimizing_engine: str = 'AIMNET', patience: int = 250, opt_steps: int = 2000, convergence_threshold: float = 0.01, threshold: float = 0.3, memory: int | None = None, batchsize_atoms: int = 1024, allow_tf32: bool = False) None
Methods
__init__([path, k, window, verbose, ...])get(key[, default])Dict-like get method for backward compatibility.
items()Return field name-value pairs for backward compatibility.
keys()Return field names for backward compatibility.
Create an OptimizationConfig from these options.
Attributes
Enable TF32 for faster matmul on Ampere+ GPUs (less precise).
Number of atoms per optimization batch per GB.
Number of SMILES handled per 1GB memory.
Optimization converges when max force is below this (eV/Å).
When True, enumerate cis/trans and R/S isomers.
When True, enumerate tautomers for the input.
GPU device index or list of indices.
'rdkit' or 'omega'.
Folder name to save all metadata.
Output top-k structures for each SMILES.
Maximum conformers per SMILES.
RAM size assigned to Auto3D in GB.
'classic', 'macrocycle', 'dense', 'pose', 'rocs', or 'fast_rocs'.
Number of CPU cores for isomer generation.
Maximum optimization steps per structure.
'ANI2x', 'ANI2xt', 'AIMNET', or path to custom NNP.
Normalize ionization state to pH ~7.4 (only with tauto_engine='oechem').
Path to input .smi or .sdf file containing SMILES/molecules.
Drop conformer from optimization if force doesn't decrease for this many steps.
'rdkit' or 'oechem'.
RMSD threshold for duplicate removal (Å).
Use GPU when available.
When True, save all metadata while running.
Output structures within x kcal/mol of lowest energy.
- window: float | bool = False
Output structures within x kcal/mol of lowest energy. Set to float or False.
- mode_oe: str = 'classic'
‘classic’, ‘macrocycle’, ‘dense’, ‘pose’, ‘rocs’, or ‘fast_rocs’.
- Type:
Omega mode
- max_confs: int | None = None
Maximum conformers per SMILES. None uses dynamic number (num_heavy_atoms - 1).
- optimizing_engine: str = 'AIMNET'
‘ANI2x’, ‘ANI2xt’, ‘AIMNET’, or path to custom NNP.
- Type:
Model for optimization
- patience: int = 250
Drop conformer from optimization if force doesn’t decrease for this many steps.
- allow_tf32: bool = False
Enable TF32 for faster matmul on Ampere+ GPUs (less precise). Default False.
- keys()
Return field names for backward compatibility.
- items()
Return field name-value pairs for backward compatibility.
- to_optimization_config() OptimizationConfig
Create an OptimizationConfig from these options.
- Returns:
OptimizationConfig with values from this Auto3DOptions instance.