42 #define MALLOC(s,t,f) malloc((unsigned)(s))
43 #define FREE(s,t,f) free((char *)(s))
95 if ((n_min == 0) && (m_min == 0))
99 if (n_min >
level +1) {
104 (void)
printf (
" apres alignement du plus petit element a la premiere ligne \n");
107 if (m_min >1+
level) {
112 (void)
printf (
" apres alignement du plus petit element"
113 " a la premiere colonne\n");
119 for (i=
level+2; i<=m; i++) {
127 for(i=
level+2;i<=n;i++) {
135 (void)
printf(
"apres division par A(%d,%d) des termes de la %d-ieme ligne et de la %d-em colonne \n",
level+1,
level+1,
level+1,
level+1);
144 (void)
printf (
" la matrice D apres transformation est la suivante :");
147 (void)
printf (
" la matrice P est \n");
150 (void)
printf (
" la matrice Q est \n");
#define value_division(ref, val)
#define DENOMINATOR(matrix)
int DENOMINATEUR(matrix): acces au denominateur global d'une matrice matrix La combinaison *(&()) est...
#define ACCESS(matrix, column, i, j)
Macros d'acces aux elements d'une matrice.
Value * matrice
package matrice
#define ACC_ELEM(matrix, column, i, j, level)
FI: Corinne, peux-tu expliquer la raison d'etre de cette macro?
void matrice_smith(matrice MAT, int n, int m, matrice P, matrice D, matrice Q)
void matrice_smith(matrice MAT, int n, int m, matrice P, matrice D, matrice Q): Calcul de la forme re...
void matrice_soustraction_colonne(matrice MAT, int n, int m __attribute__((unused)), int c1, int c2, Value x)
void matrice_soustraction_colonne(matrice MAT,int n,int m,int c1,int c2,int x): Soustrait x fois la c...
void matrice_soustraction_ligne(matrice MAT, int n, int m, int r1, int r2, Value x)
void matrice_soustraction_ligne(matrice MAT,int n,int m,int r1,int r2,int x): Soustrait x fois la lig...
void matrice_assign(matrice A, matrice B, int n, int m)
void matrice_assign(matrice A, matrice B, int n, int m) Copie de la matrice A dans la matrice B
void matrice_swap_rows(matrice a, int n, int m, int r1, int r2)
void matrice_swap_rows(matrice a, int n, int m, int r1, int r2): exchange rows r1 and r2 of an (nxm) ...
void matrice_swap_columns(matrice matrix, int n, int m, int c1, int c2)
void matrice_swap_columns(matrice matrix, int n, int m, int c1, int c2): exchange columns c1,...
int mat_lig_el(matrice, int, int, int)
int mat_lig_el(matrice MAT, int n, int m, int level) renvoie le numero de colonne absolu du premier e...
void mat_min(matrice, int, int, int *, int *, int)
void mat_min(matrice MAT, int n, int m, int * i_min, int * j_min, int level): Recherche des coordonne...
void matrice_identite(matrice, int, int)
void matrice_identite(matrice ID, int n, int level) Construction d'une sous-matrice identite dans ID(...
void matrice_print(matrice, int, int)
void matrice_print(matrice a, int n, int m): print an (nxm) rational matrix
int mat_col_el(matrice, int, int, int)