M4RI 20250128
echelonform.h File Reference

Row echelon forms. More...

#include <m4ri/mzd.h>

Go to the source code of this file.

Macros

#define __M4RI_ECHELONFORM_CROSSOVER_DENSITY   0.15

Functions

rci_t mzd_echelonize (mzd_t *A, int full)
 (Reduced) row echelon form.
rci_t mzd_echelonize_pluq (mzd_t *A, int full)
 (Reduced) row echelon form using PLUQ factorisation.
rci_t mzd_echelonize_m4ri (mzd_t *A, int full, int k)
 Matrix elimination using the 'Method of the Four Russians' (M4RI).

Detailed Description

Row echelon forms.

Author
Martin Albrecht M.R.A.nosp@m.lbre.nosp@m.cht@r.nosp@m.hul..nosp@m.ac.uk

Macro Definition Documentation

◆ __M4RI_ECHELONFORM_CROSSOVER_DENSITY

#define __M4RI_ECHELONFORM_CROSSOVER_DENSITY   0.15

Density at which we switch to PLE decomposition.

Function Documentation

◆ mzd_echelonize()

rci_t mzd_echelonize ( mzd_t * A,
int full )

(Reduced) row echelon form.

This function will

Parameters
AMatrix.
fullReturn the reduced row echelon form, not only upper triangular form.
Returns
Rank of A.

◆ mzd_echelonize_m4ri()

rci_t mzd_echelonize_m4ri ( mzd_t * A,
int full,
int k )

Matrix elimination using the 'Method of the Four Russians' (M4RI).

This is a wrapper function for _mzd_echelonize_m4ri()

Parameters
AMatrix to be reduced.
fullReturn the reduced row echelon form, not only upper triangular form.
kM4RI parameter, may be 0 for auto-choose.
See also
_mzd_echelonize_m4ri()
Returns
Rank of A.

◆ mzd_echelonize_pluq()

rci_t mzd_echelonize_pluq ( mzd_t * A,
int full )

(Reduced) row echelon form using PLUQ factorisation.

Parameters
AMatrix.
fullReturn the reduced row echelon form, not only upper triangular form.
See also
mzd_pluq()
Returns
Rank of A.