Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
[![Codecov](https://img.shields.io/codecov/c/github/ntampellini/prism_pruner)](https://codecov.io/gh/ntampellini/prism_pruner)
[![PyPI - Version](https://img.shields.io/pypi/v/prism_pruner)](https://pypi.org/project/prism-pruner/)

PRISM (PRuning Interface for Similar Molecules) is the modular similarity pruning code originally from [FIRECODE](https://github.com/ntampellini/FIRECODE/tree/main), in a polished standalone package. It filters out duplicate structures from conformational ensembles, leaving behind non-redundant states.
PRISM (Pruning Interface for Similar Molecules) is the modular similarity pruning code originally from [FIRECODE](https://github.com/ntampellini/FIRECODE/tree/main), in a polished standalone package. It filters out duplicate structures from conformational ensembles, leaving behind non-redundant states.

The code implements a cached, iterative, divide-and conquer approach on increasingly large subsets of the ensemble and removes duplicates as assessed by one of three metrics:
The code implements a cached, iterative, divide-and-conquer approach on increasingly large subsets of the ensemble and removes duplicates as assessed by one of three metrics:
- Relative deviation of the moments of inertia on the principal axes
- Heavy-atom RMSD and maximum deviation
- Rotamer-corrected heavy-atom RMSD and maximum deviation
Expand Down
2 changes: 1 addition & 1 deletion prism_pruner/__init__.py
Original file line number Diff line number Diff line change
@@ -1 +1 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""
4 changes: 2 additions & 2 deletions prism_pruner/graph_manipulations.py
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ def get_sp_n(index: int, graph: Graph) -> int | None:
This is just an assimilation to the carbon geometry in relation to sp^n:
- sp¹ is linear
- sp² is planar
- sp³ is tetraedral
- sp³ is tetrahedral
This is mainly used to understand if a torsion is to be rotated or not.
"""
atom = graph.nodes[index]["atoms"]
Expand Down Expand Up @@ -139,7 +139,7 @@ def is_phenyl(coords: Array2D_float) -> bool:

Note: quinones evaluate to True

:params coords: six coordinates of C/N atoms
:param coords: six coordinates of C/N atoms
:return: bool indicating if the six atoms look like part of a phenyl/naphtyl/pyridine
system, coordinates for the center of that ring
"""
Expand Down
4 changes: 2 additions & 2 deletions prism_pruner/pruner.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""

from dataclasses import dataclass, field
from time import perf_counter
Expand Down Expand Up @@ -206,7 +206,7 @@ def _main_compute_subrow(
Ignores structures that are False (0) in in_mask and does not perform
the comparison if the energy difference between the structures is less
than self.max_dE. Saves dissimilar structural pairs (i.e. that evaluate to
False (0)) by adding them to self.cache, avoiding redundant calcaulations.
False (0)) by adding them to self.cache, avoiding redundant calculations.
"""
i1 = first_abs_index

Expand Down
2 changes: 1 addition & 1 deletion prism_pruner/rmsd.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""

import numpy as np

Expand Down
4 changes: 2 additions & 2 deletions prism_pruner/torsion_module.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""

from copy import deepcopy
from dataclasses import dataclass
Expand Down Expand Up @@ -436,7 +436,7 @@ def rotationally_corrected_rmsd_and_max(
best_rmsd = locally_corrected_rmsd
torsion_corrections[i] = angle

# it is faster to undo the rotation rather than working with a copy of coordss
# it is faster to undo the rotation rather than working with a copy of coords
coord = rotate_dihedral(coord, torsion, -angle, indices_to_be_moved=[torsion[3]])

# now rotate that angle to the desired orientation before going to the next angle
Expand Down
2 changes: 1 addition & 1 deletion prism_pruner/typing.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""

from typing import Annotated, Any, Union

Expand Down
2 changes: 1 addition & 1 deletion prism_pruner/utils.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
"""PRISM - PRuning Interface for Similar Molecules."""
"""PRISM - Pruning Interface for Similar Molecules."""

from typing import Any, Sequence

Expand Down