assyst.filters¶
Classes that filter structures according to some criteria.
The code in the other modules that uses them is set up such that simple functions can always be passed as well and that the classes here are just for convenience.
- class assyst.filters.AndFilter(l: Callable[[Atoms], bool] | FilterBase, r: Callable[[Atoms], bool] | FilterBase)[source]¶
Bases:
FilterBaseConjunction of two filters.
- l: Callable[[Atoms], bool] | FilterBase¶
- r: Callable[[Atoms], bool] | FilterBase¶
- class assyst.filters.AspectFilter(maximum_aspect_ratio: float = 6)[source]¶
Bases:
FilterBaseFilters structures with high aspect ratios.
- class assyst.filters.CalculatorFilter(*, missing: Literal['error', 'ignore'] = 'error')[source]¶
Bases:
FilterBaseFilters that require a single point calculator set on the structure.
- class assyst.filters.DistanceFilter(radii: dict[str, float])[source]¶
Bases:
FilterBaseFilter structures that contain too close atoms.
Setting a radius to NaN allows all bonds involving this atom.
- to_tol_matrix(prototype: Literal['metallic', 'atomic', 'molecular', 'vdW'] = 'metallic') Tol_matrix[source]¶
Returns equivalent tolerance matrix for pyxtal.
- Parameters:
prototype (metallic, atomic, molecular or vdW) – passed to Tol_matrix as is and used there to initialize radii of elements not explicitly set in this filter
- class assyst.filters.EnergyFilter(min_energy: float = -inf, max_energy: float = inf, *, missing: Literal['error', 'ignore'] = 'error')[source]¶
Bases:
CalculatorFilterFilters structures by energy per atom.
- class assyst.filters.FilterBase[source]¶
Bases:
ABCBase class for filter objects that implements conjunction and disjunction operators.
- class assyst.filters.ForceFilter(max_force: float = inf, *, missing: Literal['error', 'ignore'] = 'error')[source]¶
Bases:
CalculatorFilterFilters structures by maximum force magnitude.
- class assyst.filters.OrFilter(l: Callable[[Atoms], bool] | FilterBase, r: Callable[[Atoms], bool] | FilterBase)[source]¶
Bases:
FilterBaseDisjunction of two filters.
- l: Callable[[Atoms], bool] | FilterBase¶
- r: Callable[[Atoms], bool] | FilterBase¶