rush.mol¶
Provides data structures and helpers for molecular systems and structures:
Classes for Rush Topology, Residues, Chains, and TRC types.
Element types and bonds.
Fragment type to represent fragmented systems.
Quick Links¶
- class rush.mol.AtomRef(value)[source]¶
Bases:
objectReference to an atom by index.
- Parameters:
value (int)
- class rush.mol.FragmentRef(value)[source]¶
Bases:
objectReference to a fragment by index.
- Parameters:
value (int)
- class rush.mol.ResidueRef(value)[source]¶
Bases:
objectReference to a residue by index.
- Parameters:
value (int)
- class rush.mol.ChainRef(value)[source]¶
Bases:
objectReference to a chain by index.
- Parameters:
value (int)
- class rush.mol.FormalCharge(charge)[source]¶
Bases:
objectFormal charge of an atom.
- Parameters:
charge (int)
- charge: int¶
- class rush.mol.PartialCharge(charge)[source]¶
Bases:
objectPartial charge of an atom.
- Parameters:
charge (float)
- charge: float¶
- class rush.mol.Fragment(atoms=None)[source]¶
Bases:
objectFragment containing a list of atoms.
- Parameters:
atoms (list[AtomRef] | list[int] | None)
- class rush.mol.Topology(schema_version=SchemaVersion.V2, symbols=<factory>, geometry=<factory>, labels=None, formal_charges=None, partial_charges=None, connectivity=None, velocities=None, fragments=None, fragment_formal_charges=None, fragment_partial_charges=None)[source]¶
Bases:
objectTopology contains all atom information.
- Parameters:
schema_version (SchemaVersion)
symbols (list[Element])
geometry (list[float])
labels (list[str] | None)
formal_charges (list[FormalCharge] | None)
partial_charges (list[PartialCharge] | None)
connectivity (list[Bond] | None)
velocities (list[float] | None)
fragments (list[Fragment] | None)
fragment_formal_charges (list[FormalCharge] | None)
fragment_partial_charges (list[PartialCharge] | None)
- geometry: list[float]¶
- labels: list[str] | None = None¶
- formal_charges: list[FormalCharge] | None = None¶
- partial_charges: list[PartialCharge] | None = None¶
- velocities: list[float] | None = None¶
- fragment_formal_charges: list[FormalCharge] | None = None¶
- fragment_partial_charges: list[PartialCharge] | None = None¶
- distance_to_point(atom, point)[source]¶
Calculate distance from atom to a point.
- Parameters:
atom (AtomRef)
point (tuple[float, float, float])
- Return type:
float
- get_atoms_near_point(point, threshold, atom_indices=None)[source]¶
Get atom indices within threshold distance of a point.
- Parameters:
point (tuple[float, float, float])
threshold (float)
atom_indices (list[int] | None)
- Return type:
list[int]
- get_fragments_near_fragment(frag_idx, threshold, atom_indices=None)[source]¶
Get fragment indices within threshold distance of another fragment.
- Parameters:
frag_idx (int)
threshold (float)
atom_indices (list[int] | None)
- Return type:
list[FragmentRef]
- class rush.mol.AminoAcidSeq(*values)[source]¶
Bases:
EnumAmino acid sequence names.
- class rush.mol.Residue(atoms=None)[source]¶
Bases:
objectA residue containing a list of atoms.
- Parameters:
atoms (list[AtomRef] | list[int] | None)
- class rush.mol.Residues(residues=<factory>, seqs=<factory>, seq_ns=<factory>, insertion_codes=<factory>, labeled=None, labels=None)[source]¶
Bases:
objectCollection of residues with metadata.
- Parameters:
residues (list[Residue])
seqs (list[str])
seq_ns (list[int])
insertion_codes (list[str])
labeled (list[ResidueRef] | None)
labels (list[list[str]] | None)
- seqs: list[str]¶
- seq_ns: list[int]¶
- insertion_codes: list[str]¶
- labeled: list[ResidueRef] | None = None¶
- labels: list[list[str]] | None = None¶
- is_amino_acid(index)[source]¶
Check if residue at index is an amino acid.
- Parameters:
index (int)
- Return type:
bool
- extend(other)[source]¶
Extend this residues collection with another.
- Parameters:
other (Self)
- Return type:
None
- new_residues_from_subset(residue_refs)[source]¶
Create new residues collection from a subset of residue references.
- Parameters:
residue_refs (list[ResidueRef])
- Return type:
- class rush.mol.Chain(residues=None)[source]¶
Bases:
objectA chain containing a list of residues.
- Parameters:
residues (list[ResidueRef] | list[int] | None)
- contains(residue)[source]¶
- Parameters:
residue (ResidueRef)
- Return type:
bool
- class rush.mol.Chains(chains=<factory>, alpha_helices=None, beta_sheets=None, labeled=None, labels=None)[source]¶
Bases:
objectCollection of chains with secondary structure information.
- Parameters:
chains (list[Chain])
alpha_helices (list[ResidueRef] | None)
beta_sheets (list[ResidueRef] | None)
labeled (list[ChainRef] | None)
labels (list[list[str]] | None)
- alpha_helices: list[ResidueRef] | None = None¶
- beta_sheets: list[ResidueRef] | None = None¶
- labels: list[list[str]] | None = None¶
- extend(other)[source]¶
Extend this chains collection with another.
- Parameters:
other (Self)
- Return type:
None
- new_chains_from_residue_subset(residue_refs)[source]¶
Create new chains collection from a subset of residue references.
- Parameters:
residue_refs (list[ResidueRef])
- Return type:
- class rush.mol.TRC(topology=<factory>, residues=<factory>, chains=<factory>)[source]¶
Bases:
objectCombined Topology, Residues, and Chains structure. This is the main structure for representing molecular systems on the Rush platform.
- new_trc_from_residue_subset(residue_refs)[source]¶
Create new TRC from a subset of residue references.
- Parameters:
residue_refs (list[ResidueRef])
- Return type:
- class rush.mol.ResidueId(chain_id, sequence_number, insertion_code, residue_name)[source]¶
Bases:
objectUnique identifier for a residue.
- Parameters:
chain_id (str)
sequence_number (int)
insertion_code (str)
residue_name (str)
- chain_id: str¶
- sequence_number: int¶
- insertion_code: str¶
- residue_name: str¶