pub struct CharacteristicClassComputer {
pub chern_roots: Vec<f64>,
}Expand description
Computes characteristic class numbers for a vector bundle represented as its Chern character data.
Uses the splitting principle: the total Stiefel–Whitney class (mod 2) and Pontryagin class are computed from the eigenvalues of the curvature matrix.
Fields§
§chern_roots: Vec<f64>Formal Chern roots (eigenvalues of curvature / 2πi), stored as f64.
Implementations§
Source§impl CharacteristicClassComputer
impl CharacteristicClassComputer
Sourcepub fn total_chern_class(&self) -> Vec<f64>
pub fn total_chern_class(&self) -> Vec<f64>
Total Chern class c(E) = ∏(1 + x_i) expanded as elementary symmetric polynomials.
Returns the coefficients c_0, c_1, …, c_n of the total Chern class.
Sourcepub fn chern_character(&self, max_deg: usize) -> Vec<f64>
pub fn chern_character(&self, max_deg: usize) -> Vec<f64>
Chern character ch(E) = ∑ exp(x_i): returns partial sums up to degree max_deg.
Sourcepub fn euler_number(&self) -> f64
pub fn euler_number(&self) -> f64
Euler characteristic (integral of the top Chern class over a manifold of the same dimension). For a rank-r bundle over a 2r-manifold this is c_r.
Auto Trait Implementations§
impl Freeze for CharacteristicClassComputer
impl RefUnwindSafe for CharacteristicClassComputer
impl Send for CharacteristicClassComputer
impl Sync for CharacteristicClassComputer
impl Unpin for CharacteristicClassComputer
impl UnsafeUnpin for CharacteristicClassComputer
impl UnwindSafe for CharacteristicClassComputer
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