I do alot of stats/numerical stuff but I haven't tried gonum until now.
Yesterday I went to port a bunch of C code that uses BLAS/LAPACK
into Go, and thought I'd try it (Gonum) out. Now the logic is the original
code is very hairy, and does delicate operations like a bunch
of QR decompositions... in short, I don't want to mess with the
algorithm at all, I just want to port it to Go. The C original code runs fine against
OpenBLAS. Of course, being numeric code, it all assumes column-major
Fortran style matrices.
But when I tried to run the same logic on Gonum, I was hitting issues
left and right. At first I thought they were bugs in Gonum. But then
I realized, by default Gonum is assuming that your matrices will
be row-major (C-style).
There's almost zero documentation for gonum of these kinds of
assumptions and even less about how to use
Gonum.... Like how do you switch between the Go and C BLAS implementation?
Not documented; that I can find. You would think this would be front and center. Ugh.
Anyway: somebody here probably knows-- does Gonum also support column-major
matrices? In the Go BLAS, or in a cgo binding to OpenBLAS?
With Bewildered Thanks.