# Crate hmath

## Functions

• It returns `cbrt(x)`. It gets more accurate as `iter` gets bigger.
• a = v1 / v3, b = v2 / v3 where the return value is `(v1, v2, v3)`
• It returns `cos(x)`. It gets more accurate as `iter` gets bigger.
• f(a) = v1, f(b) = v2, f’(a) = v3, f’(b) = v4
It ignores `v2` and `v4` if `a == b`.
• pre-calculated value of e. It’s equal to `e_iter(15)`.
• It returns an approximate value of E. It gets more and more accurate as `k` gets bigger.
• It returns `e^x`. It gets more accurate as `iter` gets bigger.
• `p`: `Vec<(x, y)>` where `f(x) = y`
• `p`: `Vec<(x, y)>` where `f(x) = y`
• You may find this function useful when you’re dealing with ieee 754 numbers.
This function returns `(neg, exp, frac)`, which means `n` is `(-1)^(neg) * 2^(exp) * (1 + frac/2^23)` regardless of denormalization.
It returns (false, i32::MIN, 0) when n is 0.
• You may find this function useful when you’re dealing with ieee 754 numbers.
This function returns `(neg, exp, frac)`, which means `n` is `(-1)^(neg) * 2^(exp) * (1 + frac/2^52)` regardless of denormalization.
It returns (false, i32::MIN, 0) when n is 0.
• f(a) = v1, f(b) = v2
If `a == b`, it returns a const function.
• pre-calculated value of ln2. It’s equal to `ln2_iter(11)`.
• It returns an approximate value of ln(2). It gets more and more accurate as `k` gets bigger. For now, `k` should be less than 200.
• It returns `ln(x)`. It gets more accurate as `iter` gets bigger. It panics when `x` is less than 0.
• It returns log(x) with base `base`. It gets more accurate as `iter` gets bigger. It panics when `x` or `base` is less than or equal 0.
• pre-calculated value of pi. It’s equal to `pi_iter(7)`.
• It returns an approximate value of PI. It gets more and more accurate as `k` gets bigger. For now, `k` should be less than 255.
• It returns `a^b`. It gets more accurate as `iter` gets bigger. If `b` is an integer, try `Ratio::pow_i32` instead. It panics when `a` is less than 0. `0^0` is 0.
• f(a) = v1, f(b) = v2, f(c) = v3
If the input has inconsistent values (eg. f(3) = 4, f(3) = 5), it ignores an arbitrary one.
• It returns `sin(x)`. It gets more accurate as `iter` gets bigger.
• It returns `sqrt(abs(x))`. It gets more accurate as `iter` gets bigger.
• It returns `tan(x)`. It gets more accurate as `iter` gets bigger.