mpf_init will use this precision, but previously
initialized variables are unaffected.
An mpf_t object must be initialized before storing the first value in
it. The functions mpf_init and mpf_init2 are used for that
purpose.
mpf_clear, between initializations. The
precision of x is undefined unless a default precision has already been
established by a call to mpf_set_default_prec.
mpf_clear, between initializations.
mpf_t variables when you are done with them.
Here is an example on how to initialize floating-point variables:
{
mpf_t x, y;
mpf_init (x); /* use default precision */
mpf_init2 (y, 256); /* precision at least 256 bits */
...
/* Unless the program is about to exit, do ... */
mpf_clear (x);
mpf_clear (y);
}
The following three functions are useful for changing the precision during a calculation. A typical use would be for adjusting the precision gradually in iterative algorithms like Newton-Raphson, making the computation precision closely match the actual accurate part of the numbers.
realloc, this routine
should not be called in a tight loop.
mpf_get_prec. It is crucial that the precision of rop is
ultimately reset to exactly the value returned by mpf_get_prec before
the first call to mpf_set_prec_raw.
Go to the first, previous, next, last section, table of contents.