1. 02 Nov, 2009 1 commit
    • Liam Healy's avatar
      Unify forward FFT into new file and function · b4f09c28
      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.
      b4f09c28
  2. 01 Nov, 2009 4 commits
    • Liam Healy's avatar
      Unify radix2 forward transforms over real and complex types · 9d22c860
      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.
      9d22c860
    • Liam Healy's avatar
      Updated documentation for FFT · 0e3f8c2a
      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.
      0e3f8c2a
    • Sumant Oemrawsingh's avatar
      Added attempt to clean FFT interface · dcc05d7f
      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.
      dcc05d7f
    • Sumant Oemrawsingh's avatar
      Some clean-up of real/half-complex FFT · 48f7e66a
      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.
      48f7e66a
  3. 31 Oct, 2009 4 commits
  4. 25 Oct, 2009 2 commits
    • Sumant Oemrawsingh's avatar
      Mixed radix complex float FFTs implemented · f321a591
      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).
      f321a591
    • Sumant Oemrawsingh's avatar
      Preliminary FFT functionality · 68d8dee7
      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.
      68d8dee7
  5. 18 Oct, 2009 1 commit
    • Liam Healy's avatar
      Fix defmfun expansion of default optional/key values · 5a5906dd
      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.
      5a5906dd
  6. 16 Oct, 2009 1 commit
    • Liam Healy's avatar
      Generalize set-matrix to have index limits · 33d52a9f
      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.
      33d52a9f
  7. 26 Sep, 2009 2 commits
    • Liam Healy's avatar
      QRPT: add tests, make arguments optional, fix bugs · a42b3a3a
      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.
      a42b3a3a
    • Liam Healy's avatar
      Cholesky: add tests; return argument for matrix-product · bcb8e0b5
      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.
      bcb8e0b5
  8. 25 Sep, 2009 1 commit
  9. 22 Sep, 2009 1 commit
    • Liam Healy's avatar
      Test result is double-float · df63f1b6
      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.
      df63f1b6
  10. 21 Sep, 2009 1 commit
    • Liam Healy's avatar
      QR: More optional arguments, add tests form GSL · 44b9d868
      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.
      44b9d868
  11. 20 Sep, 2009 2 commits
    • Liam Healy's avatar
      LU linear algebra tests from GSL · 75f04669
      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.
      75f04669
    • Liam Healy's avatar
      Matrix generation for linear algebra tests · 72eaac6d
      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.
      72eaac6d
  12. 18 Sep, 2009 1 commit
    • Liam Healy's avatar
      SVD: More optional arguments, add tests · 03ad93e0
      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.
      03ad93e0
  13. 27 Aug, 2009 2 commits
  14. 26 Aug, 2009 1 commit
    • Liam Healy's avatar
      List argument to defmobject :initialize-suffix · 8555fb6a
      Liam Healy authored
      A list argument to defmobject :initialize-suffix now means what a list
      argument to defmfun to defmfun c-arguments does: there are two foreign
      functions corresponding to the Lisp function; in this case, to
      reinitialize-instance.  The old meaning of having the second element
      specify the c-return reinitialize-instance has been eliminated;
      instead, this information is conveyed in a new key argument
      :ri-c-return.
      8555fb6a
  15. 25 Aug, 2009 1 commit
    • Liam Healy's avatar
      Added tests of minimization-one setting with values · 13447017
      Liam Healy authored
      Two new tests of minimization-one setting values have been added,
      duplicating the test which do not set values.  Patch by Evgeniy
      Zhemchugov.
      SBCL 64:
      TOTAL: 1525 assertions passed, 5 failed, 0 execution errors.
      13447017
  16. 24 Aug, 2009 2 commits
    • Liam Healy's avatar
      Use symbols to refer to modules in asd file · 4df83bca
      Liam Healy authored
      ASDF definition of modules are with symbols, so the :depends-on
      reference to those modules is also with symbols, not strings.
      4df83bca
    • Liam Healy's avatar
      Multiple foreign functions in the reinitialize-instance for mobjects · 9990ee06
      Liam Healy authored
      It is now possible to specify two foreign functions for the
      reinitialize-instance for defmobject.  The switch between the function
      depends on the presence or absence of optional/key arguments.  This is
      used in the definition of one-dimensional-minimizer to switch between
      gsl_min_fminimizer_set and gsl_min_fminimizer_set_with_values
      depending on the non-NIL value of f-minimum.  The set-with-values case
      has not yet been tested.
      9990ee06
  17. 23 Aug, 2009 2 commits
    • Liam Healy's avatar
      Fix order of arguments in set-fminimizer-with-values · 45387336
      Liam Healy authored
      Argument order in call to "gsl_min_fminimizer_set_with_values" in
      set-fminimizer-with-values now correctly matches stated order in
      /usr/include/gsl/gsl_min.h.  Patch from Evgeniy Zhemchugov.
      45387336
    • Liam Healy's avatar
      Handle cflags in the grovel file · 6f287646
      Liam Healy authored
      Handle conditional cflags in the grovel file instead of modifying the
      cffi-grovel::*cc-flags* variable.  Also use strings for depends-on
      in asdf file.
      6f287646
  18. 22 Aug, 2009 2 commits
  19. 05 Jul, 2009 1 commit
    • Liam Healy's avatar
      Complete histogramming test; not functioning · 9d7a0de3
      Liam Healy authored
      Complete histogramming test ntuple-example-histogramming, which gets
      an error on the first row.  It uses two new defined functions
      ntuple-example-val-func and ntuple-example-sel-func.  The scale is a
      global *ntuple-example-scale*.
      9d7a0de3
  20. 18 Jun, 2009 1 commit
  21. 17 Jun, 2009 1 commit
    • Liam Healy's avatar
      Add read test to ntuple · 9c3b2956
      Liam Healy authored
      Add read test to ntuple, fix incorrect C form for open-ntuple, make
      file names optional arguments to example functions.
      9c3b2956
  22. 16 Jun, 2009 4 commits
  23. 15 Jun, 2009 1 commit
  24. 11 Jun, 2009 1 commit
    • Liam Healy's avatar
      Hand expansion of project-ntuple; start writing ntuple example · 9f1f9900
      Liam Healy authored
      In order to avoid or defer the complicated process of modifying
      defmfun definitions to handle two cbstructs, the definition of
      project-ntuple has been written by hand as a defun etc., by expanding
      a simpler defmfun and making the necessary modifications and mergers
      with an editor.  It has not yet been tested.  The test given in GSL
      ntuple/test.c is partially ported to Lisp.
      9f1f9900