MATLAB Function Reference | ![]() ![]() |
表示
f = spfun('function
',
S)
詳細
関数 spfun
は、スパース行列の 非ゼロ要素のみに関数を適用し、オリジナル行列のスパースパターンは変えません(アンダーフローを除きます)。
f = spfun('
は、function
',S)
S
の非ゼロ要素に対して、function
を実行します。function
は、関数名でなければなりません。これは、通常、M-ファイル内で定義され、行列引数 S
に対して、S
の要素毎に関数を実行します。
注意
spfun
で使用する関数には、elfun
ディレクトリ内の関数のように、要素単位で実行する関数が適しています。
例題
S = (1,1) 1 (2,2) 2 (3,3) 3 (4,4) 4
f
=
spfun('exp',S)
は、S
と同じスパースパターンをもちます。
f = (1,1) 2.7183 (2,2) 7.3891 (3,3) 20.0855 (4,4) 54.5982
full(exp(S)) ans = 2.7183 1.0000 1.0000 1.0000 1.0000 7.3891 1.0000 1.0000 1.0000 1.0000 20.0855 1.0000 1.0000 1.0000 1.0000 54.5982
![]() | speye | sph2cart | ![]() |