Walsh matrix: Difference between revisions

Realize in F#
(→‎DOME: Removed an unused line.)
(Realize in F#)
Line 52:
 
 
=={{header|F_Sharp|F#}}==
<syntaxhighlight lang="fsharp">
// Walsh matrix. Nigel Galloway: August 31st., 2023
open MathNet.Numerics
open MathNet.Numerics.LinearAlgebra
let walsh()=let w2=matrix [[1.0;1.0];[1.0;-1.0]] in Seq.unfold(fun n->Some(n,w2.KroneckerProduct n)) w2
walsh() |> Seq.take 5 |> Seq.iter(fun n->printfn "%s" (n.ToMatrixString()))
</syntaxhighlight>
{{out}}
<pre>
1 1
1 -1
 
1 1 1 1
1 -1 1 -1
1 1 -1 -1
1 -1 -1 1
 
1 1 1 1 1 1 1 1
1 -1 1 -1 1 -1 1 -1
1 1 -1 -1 1 1 -1 -1
1 -1 -1 1 1 -1 -1 1
1 1 1 1 -1 -1 -1 -1
1 -1 1 -1 -1 1 -1 1
1 1 -1 -1 -1 -1 1 1
1 -1 -1 1 -1 1 1 -1
 
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 -1
1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1
1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1
1 1 1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 -1 -1
1 -1 1 -1 -1 1 -1 1 1 -1 1 -1 -1 1 -1 1
1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 -1 -1 1 1
1 -1 -1 1 -1 1 1 -1 1 -1 -1 1 -1 1 1 -1
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 1
1 -1 1 -1 -1 1 -1 1 -1 1 -1 1 1 -1 1 -1
1 1 -1 -1 -1 -1 1 1 -1 -1 1 1 1 1 -1 -1
1 -1 -1 1 -1 1 1 -1 -1 1 1 -1 1 -1 -1 1
 
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 .. 1 1
1 -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 -1 1 .. 1 -1
1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 .. -1 -1
1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 -1 -1 1 1 .. -1 1
1 1 1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 -1 -1 1 .. -1 -1
1 -1 1 -1 -1 1 -1 1 1 -1 1 -1 -1 1 -1 1 1 .. -1 1
1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 -1 -1 1 1 1 .. 1 1
1 -1 -1 1 -1 1 1 -1 1 -1 -1 1 -1 1 1 -1 1 .. 1 -1
.. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 1 1 -1 .. -1 -1
1 -1 1 -1 -1 1 -1 1 -1 1 -1 1 1 -1 1 -1 -1 .. -1 1
1 1 -1 -1 -1 -1 1 1 -1 -1 1 1 1 1 -1 -1 -1 .. 1 1
1 -1 -1 1 -1 1 1 -1 -1 1 1 -1 1 -1 -1 1 -1 .. 1 -1
</pre>
=={{header|Raku}}==
<syntaxhighlight lang="raku" line>sub walsh (\m) { (map {$_?? -1 !! ' 1'}, map { :3(.base: 2) % 2 }, [X+&] ^2**m xx 2 ).batch: 2**m }
2,172

edits