pub struct Symmetry { /* private fields */ }
Expand description
A Space group of a crystal
Implementations§
source§impl Symmetry
impl Symmetry
sourcepub fn new(symbol: impl AsRef<str>) -> Option<Self>
pub fn new(symbol: impl AsRef<str>) -> Option<Self>
Create a new Symmetry
based on a fully qualified Herman Mauguin or Hall symbol
sourcepub fn from_index(index: usize) -> Option<Self>
pub fn from_index(index: usize) -> Option<Self>
Create a new Symmetry
based on the index of a symbol in Int. Crys. Handbook Vol A 2016
sourcepub fn herman_mauguin_symbol(&self) -> &str
pub fn herman_mauguin_symbol(&self) -> &str
Get the fully qualified Herman Mauguin symbol for the space group
sourcepub fn hall_symbol(&self) -> &str
pub fn hall_symbol(&self) -> &str
Get the fully qualified Hall symbol for the space group
sourcepub fn z(&self) -> usize
pub fn z(&self) -> usize
Get the Z value, the number of polymeric sub units in a unit cell, for this space group
sourcepub const fn index(&self) -> usize
pub const fn index(&self) -> usize
Get the index of this space group in Int. Crys. Handbook Vol A 2016
sourcepub fn transformations(&self) -> Vec<TransformationMatrix>
pub fn transformations(&self) -> Vec<TransformationMatrix>
Get the transformations for this space group needed to fill the unit cell. The first transformation is always an identity transformation. The translation is fractional to the unit cell size.
sourcepub fn transformations_absolute(
&self,
unit_cell: &UnitCell
) -> Vec<TransformationMatrix>
pub fn transformations_absolute( &self, unit_cell: &UnitCell ) -> Vec<TransformationMatrix>
Get the transformations for this space group needed to fill the unit cell. The first transformation is always an identity transformation. The translation is in Å.
Trait Implementations§
source§impl<'de> Deserialize<'de> for Symmetry
impl<'de> Deserialize<'de> for Symmetry
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
source§impl Ord for Symmetry
impl Ord for Symmetry
source§impl PartialEq<Symmetry> for Symmetry
impl PartialEq<Symmetry> for Symmetry
source§impl PartialOrd<Symmetry> for Symmetry
impl PartialOrd<Symmetry> for Symmetry
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moreimpl Eq for Symmetry
Auto Trait Implementations§
impl RefUnwindSafe for Symmetry
impl Send for Symmetry
impl Sync for Symmetry
impl Unpin for Symmetry
impl UnwindSafe for Symmetry
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
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.