pub struct Double;Expand description
Double-double: DD, DV, Du, Jet<N>, DDLu; its dot product is the plain sum of double-double products
Trait Implementations§
impl Copy for Double
Source§impl<S> Precision<S> for Doublewhere
S: Simd,
impl<S> Precision<S> for Doublewhere
S: Simd,
Source§const PARTS: usize = 2
const PARTS: usize = 2
the number of f64 parts of a scalar: 2 for double-double, 4 for quad-double, 8 for octo-double
const ONE: DD = DD::ONE
Source§type J<const N: usize> = Jet<S, N>
type J<const N: usize> = Jet<S, N>
truncated power series with N coefficients in this precision:
Jet<N>, QJet<N>, OJet<N>Source§fn from_raw(p: &[f64]) -> DD
fn from_raw(p: &[f64]) -> DD
a scalar from exactly PARTS parts as they are, not renormalized (the struct literal
QD { x }, OD { x }) Read moreSource§fn dot(pairs: impl Iterator<Item = (DD, DD)>) -> DD
fn dot(pairs: impl Iterator<Item = (DD, DD)>) -> DD
sum of the products a b over the pairs, in this precision’s accumulator (
QdAcc, OdAcc): add_prod per
pair, finish at the endSource§fn coef<L>(l: L, k: usize) -> DV<S>where
L: Lane<S = S>,
fn coef<L>(l: L, k: usize) -> DV<S>where
L: Lane<S = S>,
coefficient k of a lane in this precision (
Lane::coef_qd, Lane::coef_od)Source§fn set_coef<L>(l: &mut L, k: usize, c: DV<S>)where
L: Lane<S = S>,
fn set_coef<L>(l: &mut L, k: usize, c: DV<S>)where
L: Lane<S = S>,
set coefficient k of a lane from this precision (
Lane::set_coef_qd, Lane::set_coef_od)Source§fn load_field<const B: usize>(parts: &[&[f64]]) -> Fl<DV<S>, B>
fn load_field<const B: usize>(parts: &[&[f64]]) -> Fl<DV<S>, B>
a field of 8 B values from PARTS part arrays of at least 8 B values each (
Fl::load_parts,
Fl::load_parts_od) Read moreSource§fn field_coef<L, const B: usize>(f: &Fl<L, B>, k: usize) -> Fl<DV<S>, B>where
L: Lane<S = S>,
fn field_coef<L, const B: usize>(f: &Fl<L, B>, k: usize) -> Fl<DV<S>, B>where
L: Lane<S = S>,
coefficient k of a field in this precision (
Fl::coef_qd, Fl::coef_od)Source§fn field_set_coef<L, const B: usize>(
f: &mut Fl<L, B>,
k: usize,
c: &Fl<DV<S>, B>,
)where
L: Lane<S = S>,
fn field_set_coef<L, const B: usize>(
f: &mut Fl<L, B>,
k: usize,
c: &Fl<DV<S>, B>,
)where
L: Lane<S = S>,
set coefficient k of a field from this precision (
Fl::set_coef_qd, Fl::set_coef_od)Source§fn field_dual<const B: usize>(
v: &Fl<DV<S>, B>,
t: &Fl<DV<S>, B>,
) -> Fl<Du<S>, B>
fn field_dual<const B: usize>( v: &Fl<DV<S>, B>, t: &Fl<DV<S>, B>, ) -> Fl<Du<S>, B>
a dual field from its values and tangents, exactly (
Fl::from_vt_qd, Fl::from_vt_od)Source§fn lu_factor(
n: usize,
ld: usize,
c: Vec<Vec<f64>>,
par: bool,
) -> Result<DDLu, String>
fn lu_factor( n: usize, ld: usize, c: Vec<Vec<f64>>, par: bool, ) -> Result<DDLu, String>
factor the n x n matrix of PARTS column-major part arrays with leading dimension ld (
QDLu::factor,
ODLu::factor). Each entry’s parts must be normalized, as new returns them: the pivot search reads the
leading parts only. Read moreAuto Trait Implementations§
impl Forget for Double
impl Freeze for Double
impl Move for Double
impl RefUnwindSafe for Double
impl Send for Double
impl Sync for Double
impl Unpin for Double
impl UnsafeUnpin for Double
impl UnwindSafe for Double
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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