Wei WeiDeng
Wei WeiDeng

Reputation: 31

MPFR: how to get mpfr_ptr from a mpfr_t variable?

everyone

I want to use mpfr_sum function to get the sum of a mpfr_t array, but I don't know how to get mpfr_ptr from mpfr_t. The following is a example:

mpfr_t sum, v[100];
mpfr_init2(sum, 512)
for(int i = 0; i < 100; ++i) mpfr_init2(v[i], 512);
// do something
// how to use mpfr_sum to get sum of array v?
// int mpfr_sum (mpfr_t rop, const mpfr_ptr tab[], unsigned long int n, mpfr_rnd_t rnd)

Please give me a hint, thanks in advance.

Upvotes: 2

Views: 176

Answers (1)

vinc17
vinc17

Reputation: 3371

You need to assign v[i] to a mpfr_ptr. For instance:

  mpfr_t sum, v[100];
  mpfr_ptr vp[100];

  mpfr_init2 (sum, 512);
  for (int i = 0; i < 100; i++)
    {
      mpfr_init2 (v[i], 512);
      vp[i] = v[i];
    }

Then, after setting values in v[i]:

  mpfr_sum (sum, vp, 100, MPFR_RNDN);

Upvotes: 1

Related Questions