pub struct SchubertType { /* private fields */ }Expand description
A Schubert class in a Grassmannian, used as a type-level marker.
Wraps amari_enumerative::SchubertClass with additional metadata
and validation. The partition must fit in the k × (n-k) box.
Implementations§
Source§impl SchubertType
impl SchubertType
Sourcepub fn new(
partition: Vec<usize>,
grassmannian_dim: (usize, usize),
) -> Result<SchubertType, String>
pub fn new( partition: Vec<usize>, grassmannian_dim: (usize, usize), ) -> Result<SchubertType, String>
Create a new Schubert type from a partition and Grassmannian dimension.
Returns Err if any partition entry exceeds n - k.
Sourcepub fn grassmannian_dim(&self) -> (usize, usize)
pub fn grassmannian_dim(&self) -> (usize, usize)
The underlying Grassmannian (k, n).
Sourcepub fn codimension(&self) -> usize
pub fn codimension(&self) -> usize
Codimension of this Schubert class (sum of partition entries).
Sourcepub fn is_point_class(&self) -> bool
pub fn is_point_class(&self) -> bool
True for the point class (empty partition, codim = 0).
Trait Implementations§
Source§impl Clone for SchubertType
impl Clone for SchubertType
Source§fn clone(&self) -> SchubertType
fn clone(&self) -> SchubertType
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SchubertType
impl RefUnwindSafe for SchubertType
impl Send for SchubertType
impl Sync for SchubertType
impl Unpin for SchubertType
impl UnsafeUnpin for SchubertType
impl UnwindSafe for SchubertType
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