# mpfr_mat.h – matrices of MPFR floating-point numbers¶

Note

This module is deprecated, and will probably removed completely in the future.

## Memory management¶

void mpfr_mat_init(mpfr_mat_t mat, slong rows, slong cols, mpfr_prec_t prec)

Initialises a matrix with the given number of rows and columns and the given precision for use. The precision is the exact precision of the entries.

void mpfr_mat_clear(mpfr_mat_t mat)

Clears the given matrix.

## Basic manipulation¶

__mpfr_struct *mpfr_mat_entry(const mpfr_mat_t mat, slong i, slong j)

Return a reference to the entry at row $$i$$ and column $$j$$ of the given matrix. The values $$i$$ and $$j$$ must be within the bounds for the matrix. The reference can be used to either return or set the given entry.

void mpfr_mat_set(mpfr_mat_t mat1, const mpfr_mat_t mat2)

Set mat1 to the value of mat2.

void mpfr_mat_zero(mpfr_mat_t mat)

Set mat to the zero matrix.

## Comparison¶

int mpfr_mat_equal(const mpfr_mat_t mat1, const mpfr_mat_t mat2)

Return $$1$$ if the two given matrices are equal, otherwise return $$0$$.

## Randomisation¶

void mpfr_mat_randtest(mpfr_mat_t mat, flint_rand_t state)

Generate a random matrix with random number of rows and columns and random entries for use in test code.

## Basic arithmetic¶

void mpfr_mat_mul_classical(mpfr_mat_t C, const mpfr_mat_t A, const mpfr_mat_t B, mpfr_rnd_t rnd)

Set $$C$$ to the product of $$A$$ and $$B$$ with the given rounding mode, using the classical algorithm.