logo
pub trait F32Ext: Sized {
Show 29 methods fn abs(self) -> f32;
fn asin(self) -> f32;
fn acos(self) -> f32;
fn atan(self) -> f32;
fn atan_norm(self) -> f32;
fn atan2(self, other: f32) -> f32;
fn atan2_norm(self, other: f32) -> f32;
fn ceil(self) -> f32;
fn cos(self) -> f32;
fn div_euclid(self, other: f32) -> f32;
fn floor(self) -> f32;
fn hypot(self, other: f32) -> f32;
fn inv(self) -> f32;
fn invsqrt(self) -> f32;
fn rem_euclid(self, other: f32) -> f32;
fn sin(self) -> f32;
fn sqrt(self) -> f32;
fn tan(self) -> f32;
fn trunc(self) -> f32;
fn round(self) -> f32;
fn fract(self) -> f32;
fn copysign(self, sign: f32) -> f32;
fn ln(self) -> f32;
fn exp(self) -> f32;
fn log(self, base: f32) -> f32;
fn log2(self) -> f32;
fn log10(self) -> f32;
fn powf(self, n: f32) -> f32;
fn powi(self, n: i32) -> f32;
}
Expand description

f32 extension providing various arithmetic approximations and polyfills for std functionality.

Required methods

Compute absolute value with a constant-time, data-independent implementation.

Approximate asin(x) in radians in the range [-pi/2, pi/2].

Approximate acos(x) in radians in the range [0, pi]

Approximate atan(x) in radians with a maximum error of 0.002.

Approximate atan(x) normalized to the [−1,1] range with a maximum error of 0.1620 degrees.

Approximate the four quadrant arctangent atan2(x) in radians, with a maximum error of 0.002.

Approximate the four quadrant arctangent. Normalized to the [0,4) range with a maximum error of 0.1620 degrees.

Approximate floating point ceiling.

Approximate cosine in radians with a maximum error of 0.002.

Calculates Euclidean division, the matching method for rem_euclid.

Approximate floating point floor.

Approximate the length of the hypotenuse of a right-angle triangle given legs of length x and y.

Approximate 1/x with an average deviation of ~8%.

Approximate inverse square root with an average deviation of ~5%.

Calculates the least nonnegative remainder of self (mod other).

Approximate sine in radians with a maximum error of 0.002.

Approximate square root with an average deviation of ~5%.

Approximate tan(x) in radians with a maximum error of 0.6.

Retrieve whole number part of floating point with sign.

Round the number part of floating point with sign.

Retrieve the fractional part of floating point with sign.

Copies the sign from one number to another and returns it.

Approximate ln(x).

Approximate e^x.

Approximate log with an arbitrary base.

Approximate log2.

Approximate log10.

Approximate self^n.

Approximate self^n where n is an i32

Implementations on Foreign Types

Implementors