discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] which math library to link with


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] which math library to link with
Date: Fri, 02 Dec 2011 14:05:46 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.23) Gecko/20110922 Thunderbird/3.1.15

Martin Braun wrote:
> [1] But perhaps they're reading this and would like to comment.
Yes, we do!
The problem with the gsl is that it provides methods for real
symmetric and nonsymmetric eigenvalue problems, but only for complex
hermitian, and we needed to decompose nonsymmetric complex matrices.
But afaIk it has singular value decomposition methods
of the like gsl_linalg_SV_decomp*, I've just never worked with those.
Amardillo is a library with a very nice and intuitive (read: comparably
easy to use as matlab when handling matrizes) API, providing SVDs
(which I did not test either), which, sadly has not have a very long history yet, and did go through some API changes in the recent past. When using Fortran, we did not actually add a lot of library (aside from LAPACK) dependencies, but the need for a decent fortran compiler, and a whole lot of makefile magic. Calling fortran functions from C++/GR works nicely, if you realize you really have to take care you pass the right arguments.

Conclusion: Try the GSL, it's SVD methods should work quite fine.
If you don't like gsl, try armadillo. If you're fine with fortran
and LAPACK: Do it. Write a C header file for your Fortran functions
and call them. Build a fortran shared library and link it to your c++
library. Do math. Really fast.

Happy Hacking

Marcus Müller



On Dec 1, 2011, at 4:56 PM, Achilleas Anastasopoulos <address@hidden> wrote:

> > > We are writing a block that requires SVD of matrices.
> > > Is there a preferred library (eg, LAPACK) that other gnuradio blocks
> > > are already using that we can link with.
> > > I don't want to add another library dependence...



reply via email to

[Prev in Thread] Current Thread [Next in Thread]