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


range

A^kの範囲

呼び出し手順

[X,dim]=range(A,k)

引数

A

実数正方行列

k

整数

X

直交実数行列

dim

整数 (部分空間の次元)

説明

範囲 A^kを計算します ; X の 最初の dim 行は, A^kの範囲に広がります. Xの最後の行は, この直交相補な範囲に広がります. X*X' は単位行列です.

A=rand(4,2)*rand(2,4);   // 4 列ベクトル, 2 独立.
[X,dim]=range(A,1);dim   // 範囲を計算

y1=A*rand(4,1);          //Aの範囲のベクトル
y2=rand(4,1);            //Aの範囲にないベクトル
norm(X(dim+1:$,:)*y1)    //最後のエントリはゼロ, y1 はAの範囲
norm(X(dim+1:$,:)*y2)    //最後のエントリは非ゼロ

I=X(1:dim,:)'            //I が範囲の基底
coeffs=X(1:dim,:)*y1     // 基底Iに関連するy1の要素

norm(I*coeffs-y1)        //check

参照

使用される関数

range 関数は, svd分解を使用する rowcomp 関数 に基づいています.

Report an issue
<< kernel Kernel rowcomp >>

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:
Tue Mar 07 09:28:43 CET 2023