Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - Français


linsolve

solveur d'équation linéaire

Séquence d'appel

[x0,kerA]=linsolve(A,b [,x0])

Paramètres

A

une matrice réelle na x ma (éventuellement creuse)

b

un vecteur na x 1

x0

un vecteur réel

kerA

une matrice réelle ma x k

Description

linsolve donne toutes les solutions de A*x+b=0.

x0 est une solution particulière (s'il en existe une) et kerA est le noyau de A. Tout vecteur de la forme x=x0+kerA*w avec w quelconque vérifie A*x+b=0.

Si un x0 compatible est donné en entrée, x0 est renvoyé. Dans le cas contraire un x0 compatible, s'il en existe un, est renvoyé.

Exemples

A=rand(5,3)*rand(3,8);
b=A*ones(8,1);[x,kerA]=linsolve(A,b);A*x+b   // b compatible
b=ones(5,1);[x,kerA]=linsolve(A,b);A*x+b   // b incompatible
A=rand(5,5);[x,kerA]=linsolve(A,b), -inv(A)*b  // x est unique

// Une comparaison des différentes méthode de résolution de systèmes linéaire creux

[A,descr,ref,mtype] = ReadHBSparse(SCI+"/modules/umfpack/demos/bcsstk24.rsa");

b = zeros(size(A,1),1);

tic();
res = umfpack(A,'\',b);
mprintf('\ntemps nécessaire à la résolution du système avec umfpack: %.3f\n',toc());

tic();
res = linsolve(A,b);
mprintf('\ntemps nécessaire à la résolution du système avec linsolve: %.3f\n',toc());

tic();
res = A\b;
mprintf('\ntemps nécessaire à la résolution du système avec l''opérateur backslash: %.3f\n',toc());

Voir aussi

  • inv — inverse d'une matrice
  • pinv — pseudo-inverse
  • colcomp — compression de colonnes, noyau
  • im_inv — inverse image
  • umfpack — solve sparse linear system
  • backslash — (\) division matricielle à gauche : solution exacte ou selon moindres carrés
Report an issue
<< inv Linear Equations lsq >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:15:58 CEST 2024