pub struct AtomCollection { /* private fields */ }
Expand description
Atom Collection
The core data structure of ferritin-core.
it strives to be simple, high performance, and extensible using traits.
Implementations§
source§impl AtomCollection
impl AtomCollection
pub fn new( size: usize, coords: Vec<[f32; 3]>, res_ids: Vec<i32>, res_names: Vec<String>, is_hetero: Vec<bool>, elements: Vec<Element>, atom_names: Vec<String>, chain_ids: Vec<String>, bonds: Option<Vec<Bond>>, ) -> Self
pub fn calculate_displacement(&self)
pub fn calculate_distance(&self, _atoms: AtomCollection)
pub fn connect_via_residue_names(&mut self)
pub fn connect_via_distance(&self) -> Vec<Bond>
pub fn get_size(&self) -> usize
pub fn get_atom_name(&self, idx: usize) -> &String
pub fn get_bonds(&self) -> Option<&Vec<Bond>>
pub fn get_chain_id(&self, idx: usize) -> &String
pub fn get_coord(&self, idx: usize) -> &[f32; 3]
pub fn get_coords(&self) -> &Vec<[f32; 3]>
pub fn get_element(&self, idx: usize) -> &Element
pub fn get_elements(&self) -> &Vec<Element>
pub fn get_is_hetero(&self, idx: usize) -> bool
pub fn get_resnames(&self) -> &Vec<String>
pub fn get_res_id(&self, idx: usize) -> &i32
pub fn get_resids(&self) -> &Vec<i32>
pub fn get_res_name(&self, idx: usize) -> &String
pub fn iter_coords_and_elements( &self, ) -> impl Iterator<Item = (&[f32; 3], &Element)>
sourcepub fn iter_residues_all(&self) -> ResidueIter<'_>
pub fn iter_residues_all(&self) -> ResidueIter<'_>
Iter_Residues Will Iterate Through the AtomCollection one Residue at a time.
This is the base for any other residue filtration code.
pub fn iter_residues_aminoacid(&self) -> impl Iterator<Item = ResidueAtoms<'_>>
pub fn select(&self) -> AtomSelector<'_>
pub fn select_by_chain(&self, chain_id: &str) -> Selection
pub fn select_by_residue(&self, res_name: &str) -> Selection
pub fn view(&self, selection: Selection) -> AtomView<'_>
Trait Implementations§
source§impl From<&PDB> for AtomCollection
impl From<&PDB> for AtomCollection
source§impl<'a> FromIterator<ResidueAtoms<'a>> for AtomCollection
impl<'a> FromIterator<ResidueAtoms<'a>> for AtomCollection
source§fn from_iter<T: IntoIterator<Item = ResidueAtoms<'a>>>(iter: T) -> Self
fn from_iter<T: IntoIterator<Item = ResidueAtoms<'a>>>(iter: T) -> Self
Creates a value from an iterator. Read more
source§impl StructureFeatures for AtomCollection
impl StructureFeatures for AtomCollection
type Error = ShapeError
source§fn featurize(&self) -> Result<ProteinFeatures, Self::Error>
fn featurize(&self) -> Result<ProteinFeatures, Self::Error>
Convert structure into complete feature set
source§fn encode_amino_acids(&self) -> Result<Array2<f32>, Self::Error>
fn encode_amino_acids(&self) -> Result<Array2<f32>, Self::Error>
Convert amino acid sequence to numeric representation
source§fn to_numeric_backbone_atoms(&self) -> Result<Array4<f32>, Self::Error>
fn to_numeric_backbone_atoms(&self) -> Result<Array4<f32>, Self::Error>
Extract backbone atom coordinates (N, CA, C, O)
source§fn to_numeric_atom37(&self) -> Result<Array4<f32>, Self::Error>
fn to_numeric_atom37(&self) -> Result<Array4<f32>, Self::Error>
Extract all atom coordinates in standard ordering
source§fn to_numeric_ligand_atoms(
&self,
) -> Result<(Array2<f32>, Array1<f32>, Array2<f32>), Self::Error>
fn to_numeric_ligand_atoms( &self, ) -> Result<(Array2<f32>, Array1<f32>, Array2<f32>), Self::Error>
Extract ligand atom coordinates and properties
source§fn get_res_index(&self) -> Array1<u32>
fn get_res_index(&self) -> Array1<u32>
Get residue indices
Auto Trait Implementations§
impl Freeze for AtomCollection
impl RefUnwindSafe for AtomCollection
impl Send for AtomCollection
impl Sync for AtomCollection
impl Unpin for AtomCollection
impl UnwindSafe for AtomCollection
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more