Macaulay2 Engine
Loading...
Searching...
No Matches

◆ mpfc_mul()

void mpfc_mul ( gmp_CCmutable result,
gmp_CCmutable a,
gmp_CCmutable b )

Definition at line 67 of file complex.c.

68{
69 mpfr_t tmp;
70 mpfr_init2(tmp, mpfr_get_prec(a->re));
71
72 // result->re = a->re*b->re - a->im*b->im;
73 mpfr_mul(tmp, a->re, b->re, MPFR_RNDN);
74 mpfr_set(result->re, tmp, MPFR_RNDN);
75 mpfr_mul(tmp, a->im, b->im, MPFR_RNDN);
76 mpfr_sub(result->re, result->re, tmp, MPFR_RNDN);
77
78 // result->im = a->re*b->im + a->im*b->re;
79 mpfr_mul(tmp, a->re, b->im, MPFR_RNDN);
80 mpfr_set(result->im, tmp, MPFR_RNDN);
81 mpfr_mul(tmp, a->im, b->re, MPFR_RNDN);
82 mpfr_add(result->im, result->im, tmp, MPFR_RNDN);
83
84 mpfr_clear(tmp);
85}
VALGRIND_MAKE_MEM_DEFINED & result(result)

References result().