- Nov 14, 2009
-
-
Liam Healy authored
A few overlooked function symbols have been exported and some unused function definitions eliminated. Added an example solve-tridiagonal-example thanks to Mirko Vukovic.
-
- Nov 13, 2009
-
-
Liam Healy authored
-
- Nov 12, 2009
-
-
Liam Healy authored
Clean up spline examples with simpler code and same results. Functions in interpolation/evaluation.lisp with key argument :acceleration defaults to (make-acceleration). Test for evaluate-integral-example added.
-
TTCA Vukovic authored
-
TTCA Vukovic authored
-
Liam Healy authored
For the case (eql element-type 'double-float) in make-fft-wavetable, the clauses of the if were reversed; now fixed. This fixes erroneous output from (test-real-radix2 'double-float 6).
-
- Nov 10, 2009
-
-
Sumant Oemrawsingh authored
For the FFT functions in GSLL, the vector sizes cannot be supplied by the caller, but the stride can. The vector size passed to GSL is not the actual vector size, but rather the size of the vector taking the stride into account: (floor (size vector) stride). This is now fixed.
-
Liam Healy authored
New function realpart-vector makes a real vector with the real part of the complex vector passed as an argument; was part of test-real-radix2. The computations being performed in test-real-radix2 are now much clearer.
-
- Nov 09, 2009
-
-
Liam M. Healy authored
In FFT, the default wavetable and workspace arguments to functions now all use #'make-fft-wavetable and make-fft-workspace. Removed definition of +cgsm-gauss+ because evidently GSL_CONST_CGSM_GAUSS is no longer in GSL as of 1.13. Added dependency on init for physical-consants. Trivial change to names of systems in asd files to be more standard.
-
Liam Healy authored
The real array for test-real-radix2 was being made twice as long as it should have been; fixed. Also now load discrete.lisp in gsll.asd so that the tests can be called.
-
Liam Healy authored
The first of the GSL tests has been ported to GSLL as test-real-radix2. Currently it doesn't do a comparison, just returns both the answer from the DFT and from the FFT. Also, stride=1 here.
-
- Nov 08, 2009
-
-
Liam Healy authored
Interface to discrete Fourier transforms defined in GSL but not documented, apparently used for tests of FFT only.
-
Sumant Oemrawsingh authored
The generic unpack function called the specific unpack functions without passing on the vector, causing you to land in the debugger.
-
- Nov 07, 2009
-
-
Liam Healy authored
Use make-fft-wavetable and make-fft-workspace to make the FFT objects. The specific FFT wavetable and workspace mobjects are not exported, which is now possible to specify in defmobject with :export nil.
-
Liam Healy authored
The fast Fourier transform port now complete except for the tests. The backward, inverse, and selectable direction transforms are now unified in their respective files, a new file has been created for the wavetable and workspace mobjects. The output of the example functions looks plausible.
-
- Nov 04, 2009
-
-
Liam Healy authored
Function #'unpack will switch between the various unpacking generic functions, depending on the specified unpack type and whether the vector length is a power of 2. New file unpack.lisp has all the unpacking functions.
-
Liam Healy authored
The function forward-fourier-transform now has an argument :decimation-in-frequency that will call the generic function forward-fourier-transform-dif-radix2 if non-NIL and the length of the vector is a power of 2. This is not tested yet.
-
- Nov 02, 2009
-
-
Liam Healy authored
The function #'forward-fourier-transform selects among the 12 GSL forward FFT functions, depending on whether the length of the vector is a power of 2, whether the :half-complex flag is set, and the type of the vector. This exported function, along with its supporting internal functions, are in the file forward.lisp. The dimension argument for fft-pulse-test is now mandatory. All mobjects have been renamed so that they end with either -single-float or -double-float, consistent with the naming scheme in the rest of GSLL. Eliminated (evidently) obsolete example file fft-example.lisp.
-
- Nov 01, 2009
-
-
Liam Healy authored
The individual real and complex defmfuns for forward transforms have been removed from fft-real.lisp and fft-complex.lisp and unified in fft-interface.lisp as forward-fourier-transform-radix2 and forward-fourier-transform-nonradix2. This is untested and is meant to experiment with unification of the functions; if successful, the other functions should be changed as similarly, and radix2/non-radix2 switch incorporated if possible.
-
Liam Healy authored
Added FFT to the list of features in index.html and removed from missing-features.text; also updated other things in missing-features.text.
-
Sumant Oemrawsingh authored
A hopefully nicer interface to the FFT functions are given, where the precise FFT function is deduced from the supplied vector. While the interface is nicer, the code is ugly, hacky and not fool proof yet. Cleanup required.
-
Sumant Oemrawsingh authored
Half-complex FFT functions were split off into their own file. Wavetable and workspace names now have an fft- prepended to their name, for clarity.
-
- Oct 31, 2009
-
-
Sumant Oemrawsingh authored
-
Sumant Oemrawsingh authored
The example shows real, complex, radix-2 and mixed-radix FFTs. It can be used in the unit-test framework, but is not properly generated yet.
-
Sumant Oemrawsingh authored
I screwed up the fft module in gsll.asd with a typo and forgot to test before commit. This is now fixed.
-
Sumant Oemrawsingh authored
All the real and "half-complex" FFT functions have been added. See GSL docs on how a half-complex array works. Some old obsolete comments from fft-complex.lisp were removed. TODO: add tests and examples.
-
- Oct 25, 2009
-
-
Sumant Oemrawsingh authored
The mixed radix complex single-float and double-floats now seem to work correctly. This would mean that all the complex FFTs are working, and only need a nicer interface (e.g. automatic determination of whether to use a radix-2 or mixed-radix algorithm).
-
Sumant Oemrawsingh authored
Only complex fast fourier transforms have been added. The radix-2 versions have been tested and found to work. The decimation-in-frequency versions have been added, but not tested. The mixed-radix versions only work for complex double-float at the moment.
-
- Oct 18, 2009
-
-
Liam Healy authored
For methods on marrays, all default values for optional and key arguments were wrongly coerced to the array element type. This doesn't affect any current definitions in GSLL, but FFT functions with the stride specified, it will wrongly change the default value to the element type. This has been fixed by changing #'actual-class-arglist so that it looks up the type intended to be passed to the C function and coerces to that if it is available. Otherwise the expansion leaves the default value alone.
-
- Oct 16, 2009
-
-
Liam Healy authored
Index limits may be passed to set-matrix and to some of the functions dependent on it, so that e.g. a tridiagonal matrix can be defined without iterating over all elements. If the optional argument 'pass-element is non-NIL, the function will be passed a final argument which is the prior value of the current element.
-
- Sep 26, 2009
-
-
Liam Healy authored
Added the translated GSL tests to the linear algebra for QR decomposition with column pivoting. More arguments corresponding to values returned by the functions are now optional. Fixed the order of return values from QRPT-decomposition so that permutation is before signum. Fixed argument lists to QRPT-QRsolve.
-
Liam Healy authored
Added eight tests from GSL's test for Cholesky decomposition and solving. The four decomposition tests incorrectly produce zero in CCL. The first optional argument in matrix-product and matrix-product-symmetric can now be nil, to indicate a matrix of the right dimensions should be constructed. This is the default; the default previously was to make that matrix directly, which meant if any other optional arguments were supplied, the complicated default construction for the return matrix would have to be re-entered.
-
- Sep 25, 2009
-
-
Liam Healy authored
Added the standard set of linear algebra tests for the Householder transformation; all pass.
-
- Sep 22, 2009
-
-
Liam Healy authored
Add "d0" to test result for (test-qr-lssolve-dim *M53*) so that it's read as double-float; without that it is interpreted as single-float which gives a substantial discrepancy from the double-float result.
-
- Sep 21, 2009
-
-
Liam Healy authored
Changed required to optional arguments for several of the QR linear algebra functions, for returned quantities. 45 new tests added for QR that are translated from GSL's tests. Matrices and solutions that are used by more than one of the linear algebra techniques are defined in matrix-generation.lisp.
-
- Sep 20, 2009
-
-
Liam Healy authored
Added nine tests derived from the self-tests that GSL has for LU decomposition. All tests except the complex matrix pass within the tolerances prescribed by GSL.
-
Liam Healy authored
Matrices (and vectors) may be created from functions of the element indices. This is needed to create the matrices used in testing the linear algebra functions. It also can be of general use, especially with further generalization. For now, there are no exported symbols from these definitions.
-
- Sep 18, 2009
-
-
Liam Healy authored
For the singular value decomposition functions, make the S vector and V matrix optional arguments, as they are quantities returned by the functions. Add tests translated from the GSL tests.
-
- Aug 27, 2009
-
-
Liam Healy authored
Merge branch 'ntuple'
-
Liam Healy authored
Ported ntuple to cbinfo form with tests duplicating the GSL tests in ntuple/test.c.
-