Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME III. Les librairies utilitaires

8. Le groupe s_mat

8.19 M_solve_2 (file s_masol2.c:37)

Syntax

MAT *M_solve_2(
MAT *m3,
MAT *m,
MAT *m4
)
#else
MAT *M_solve_2(m3, m, m4)
MAT *m3, *m, *m4;
#endif

Description

Résolution d'un système d'équations linéaires par la méthode gaussienne d'élimination. Le système s'écrit sous une forme matricielle: m1 * m3 = m2 où m1 est la matrice carrée du système (nl1 x nc1), m2 est une matrice nl1 x 1, m3 est la matrice résultat nl1 x 1.

Valeur retournée

Si m3 est nul, une matrice de dimension (nl1, 1) est allouée et retournée (la fonction retourne un pointeur nul et positionne M_errno en cas d'espace mémoire insuffisant). Si m3 n'est pas nul, le résultat y est stocké et m3 est retourné. Les dimensions de m1, m2 et m3 doivent être correctes sans quoi le système n'est pas résolu , la variable M_errno est positionnée et la fonction retourne un pointeur nul. Si le système n'a pas de solution réelle, la variable M_errno est positionnée et la fonction retourne un pointeur nul. La fonction M_solve_2() ne modifie pas les matrices d'origine (elle alloue pour ce faire une copie de ces matrices).

La fonction M_solve() est identique mais ne conserve pas les matrices d'origine, elle est cependant moins exigante en mémoire.

Exemple

    M_solve_2(m3, m1, m2);
m2 = M_solve_2((MAT*)0, m1, m2);

Voir également

M_free(), M_alloc(), M_solve().

8.19.1 File s_masol2.c

MAT *M_solve_2(MAT *m3, MAT *m, MAT *m4)

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be