mirror of
https://github.com/vale981/arb
synced 2025-03-06 09:51:39 -05:00
update documentation
This commit is contained in:
parent
6063d1be3e
commit
e9da17f9a2
1 changed files with 44 additions and 0 deletions
|
@ -1013,6 +1013,50 @@ Internal helper functions
|
||||||
The input *x* and output *y* are fixed-point numbers with *xn* fractional
|
The input *x* and output *y* are fixed-point numbers with *xn* fractional
|
||||||
limbs. A bound for the ulp error is written to *error*.
|
limbs. A bound for the ulp error is written to *error*.
|
||||||
|
|
||||||
|
.. function:: void _arb_exp_taylor_naive(mp_ptr y, mp_limb_t * error, mp_srcptr x, mp_size_t xn, ulong N)
|
||||||
|
|
||||||
|
.. function:: void _arb_exp_taylor_rs(mp_ptr y, mp_limb_t * error, mp_srcptr x, mp_size_t xn, ulong N)
|
||||||
|
|
||||||
|
Computes an approximation of `y = \sum_{k=0}^{N-1} x^k / k!`. Used internally
|
||||||
|
for computing exponentials. The *naive* version uses the forward recurrence,
|
||||||
|
and the *rs* version uses a division-avoiding rectangular splitting scheme.
|
||||||
|
|
||||||
|
Requires `N \le 287`, `0 \le x \le 1/16`, and *xn* positive.
|
||||||
|
The input *x* is a fixed-point number with *xn* fractional
|
||||||
|
limbs, and the output *y* is a fixed-point number with *xn* fractional
|
||||||
|
limbs plus one extra limb for the integer part of the result.
|
||||||
|
|
||||||
|
A bound for the ulp error is written to *error*.
|
||||||
|
|
||||||
|
.. function:: void _arb_sin_cos_taylor_naive(mp_ptr ysin, mp_ptr ycos, mp_limb_t * error, mp_srcptr x, mp_size_t xn, ulong N)
|
||||||
|
|
||||||
|
.. function:: void _arb_sin_cos_taylor_rs(mp_ptr ysin, mp_ptr ycos, mp_limb_t * error, mp_srcptr x, mp_size_t xn, ulong N)
|
||||||
|
|
||||||
|
Computes approximations of `y_s = \sum_{k=0}^{N-1} (-1)^k x^{2k+1} / (2k+1)!`
|
||||||
|
and `y_c = \sum_{k=0}^{N-1} (-1)^k x^{2k} / (2k)!`.
|
||||||
|
Used internally for computing sines and cosines. The *naive* version uses
|
||||||
|
the forward recurrence, and the *rs* version uses a division-avoiding
|
||||||
|
rectangular splitting scheme.
|
||||||
|
|
||||||
|
Requires `N \le 143`, `0 \le x \le 1/16`, and *xn* positive.
|
||||||
|
The input *x* and outputs *ysin*, *ycos* are fixed-point numbers with
|
||||||
|
*xn* fractional limbs. A bound for the ulp error is written to *error*.
|
||||||
|
|
||||||
|
.. function:: int _arb_get_mpn_fixed_mod_log2(mp_ptr w, fmpz_t q, mp_limb_t * error, const arf_t x, mp_size_t wn)
|
||||||
|
|
||||||
|
Attempts to write `w = x - q \log(2)` with `0 \le w < \log(2)`, where *w*
|
||||||
|
is a fixed-point number with *wn* limbs and ulp error *error*.
|
||||||
|
Returns success.
|
||||||
|
|
||||||
|
.. function:: int _arb_get_mpn_fixed_mod_pi4(mp_ptr w, fmpz_t q, int * octant, mp_limb_t * error, const arf_t x, mp_size_t wn)
|
||||||
|
|
||||||
|
Attempts to write `w = |x| - q \pi/4` with `0 \le w < \pi/4`, where *w*
|
||||||
|
is a fixed-point number with *wn* limbs and ulp error *error*.
|
||||||
|
Returns success.
|
||||||
|
|
||||||
|
The value of *q* mod 8 is written to *octant*. The output variable *q*
|
||||||
|
can be NULL, in which case the full value of *q* is not stored.
|
||||||
|
|
||||||
.. function:: long _arb_exp_taylor_bound(long mag, long prec)
|
.. function:: long _arb_exp_taylor_bound(long mag, long prec)
|
||||||
|
|
||||||
Returns *n* such that
|
Returns *n* such that
|
||||||
|
|
Loading…
Add table
Reference in a new issue