Jump to content

Singular value decomposition: Difference between revisions

added Raku programming solution
(Add C++)
(added Raku programming solution)
Line 339:
[-0.70710678 0.70710678]]
</pre>
 
=={{header|Raku}}==
<syntaxhighlight lang="raku" line># 20230108 Raku programming solution
 
use Math::Libgsl::Matrix;
use Math::Libgsl::LinearAlgebra;
 
my @M = <3 0>, <4 5>;
my Math::Libgsl::Matrix \M .= new: @M.keys.elems, @M.first.elems;
(^M.size1)>>.&{ M.set-row: $_, @M[$_;*] }
 
my (\V,\S) = SV-decomp M;
 
say "U factor: " and say (^M.size1)>>.&{ M.get-row($_)>>.fmt: '%.10g' }
say "singular values: " and say (^S.size )>>.&{ S.get($_)>>.fmt: '%.10g' }
say "Vt factor: " and say (^V.size1)>>.&{ V.get-row($_)>>.fmt: '%.10g' }</syntaxhighlight>
{{out}}
<pre>U factor:
([-0.316227766 -0.9486832981] [-0.9486832981 0.316227766])
singular values:
((6.708203932) (2.236067977))
Vt factor:
([-0.7071067812 -0.7071067812] [-0.7071067812 0.7071067812])</pre>
 
=={{header|Wren}}==
351

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.