Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.3.3 - 日本語

Change language to:
English - Français - Português

Please note that the recommended version of Scilab is 2024.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Linear Algebra > linsolve

linsolve

線形方程式ソルバ

呼び出し手順

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

パラメータ

A

a na x ma 実数行列 (疎行列の場合もあり)

b

na x 1ベクトル (Aの行と同じ次元)

x0

実数ベクトル

kerA

ma x k 実数行列

説明

linsolve は, A*x+b=0の解を全て計算します.

x0 は特解 (存在する場合), kerAAのヌル空間です. 任意のwについてx=x0+kerA*wは, A*x+b=0を満たします.

互換性のある x0 がエントリに指定された場合, x0が返されます. そうでない場合,x0と互換性のあるもの(存在する場合)が返されます.

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

// Benchmark with other linear sparse solver:
[A,descr,ref,mtype] = ReadHBSparse(SCI+"/modules/umfpack/examples/bcsstk24.rsa"); 

b = 0*ones(size(A,1),1);

tic();
res = umfpack(A,'\',b);
printf('\ntime needed to solve the system with umfpack: %.3f\n',toc());

tic();
res = linsolve(A,b);
printf('\ntime needed to solve the system with linsolve: %.3f\n',toc());

tic();
res = A\b;
printf('\ntime needed to solve the system with the backslash operator: %.3f\n',toc());

参照

<< kroneck Linear Algebra lsq >>

Copyright (c) 2022-2023 (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:
Wed Oct 05 12:12:40 CEST 2011