1. 10 Jan, 2011 2 commits
    • Liam M. Healy's avatar
      9fc8126d
    • Liam Healy's avatar
      Shadow symbols from antik · 80544fee
      Liam Healy authored
      With the export of unit and dimension names, there are conflicts with
      gsl:psi, gsl:acceleration, gsl:knots.  There is no actual conflict in
      the usage because Antik physical quantities only needs to use these
      symbols as symbols, there is no binding.  So they are now
      shadowing-imported into gsll.  
      
      Added explicit "d0" to numbers in polynomial to insure they are read
      as double-floats.
      80544fee
  2. 08 Aug, 2010 1 commit
    • Liam Healy's avatar
      Replace 'pi with 'dpi, the double-float version · 7aa0111c
      Liam Healy authored
      The standard declares that 'pi is an implementation-dependent
      long-float, but GSL requires double float, so the constant 'dpi has
      been defined as (coerce pi 'double-float).  This should make CLISP at
      the least happier.
      7aa0111c
  3. 15 Jul, 2010 1 commit
  4. 07 Jul, 2010 1 commit
  5. 30 Jun, 2010 1 commit
  6. 27 Jun, 2010 1 commit
  7. 01 Jun, 2010 1 commit
    • Liam Healy's avatar
      Fix return from #'exp-err-scaled, rename/move test macros · 6f686bab
      Liam Healy authored
      The return value from #'exp-err-scaled should be sf-result-e10, now
      fixed.  Test macros renamed, made to match their corresponding GSL
      versions better, and moved to augment.lisp.  Some of the GSL
      exponential function tests are now ported, and two fail.
      6f686bab
  8. 30 May, 2010 1 commit
  9. 23 May, 2010 1 commit
    • Liam Healy's avatar
      Simplified paths to the foreign libraries; use gsl-config for header · 610e8dc2
      Liam Healy authored
      The paths to the foreign libraries have been simplified, making use of
      CFFI's statement "Most, if not all, Lisps supported by CFFI have a
      reasonable default search algorithm for foreign libraries."
      Therefore, the paths have been eliminated.  If they need to be added,
      this should be done by modifying the variable
      cffi:*foreign-library-directories*.  The header files location set
      with cc-flags for Darwin has been changed to use (gsl-config "--cflags").
      610e8dc2
  10. 14 Apr, 2010 1 commit
    • Liam M. Healy's avatar
      Correct return values from jacobian-elliptic-functions; add tests · aa68fe67
      Liam M. Healy authored
      The GSL function gsl_sf_elljac_e writes sn, cn, dn values to doubles
      for which the pointer has been passed in, as shown in
      /usr/include/gsl/gsl_sf_elljac.h, and not to sf-result as one might be
      led to conclude from the "_e" at the end of the name.  This is now
      fixed in GSLL, so that the tests, which sometimes passed and sometimes
      didn't depending on what was run before it, now should always work.
      The single non-error test been replaced by the 35 GSL tests in
      gsl/specfunc/test_sf.c, and they all pass in SBCL Linux AMD64.
      aa68fe67
  11. 27 Dec, 2009 1 commit
  12. 21 Dec, 2009 1 commit
    • Liam Healy's avatar
      Move symbol-type and number-conversion to grid · ce261d71
      Liam Healy authored
      Move number-conversion.lisp from init/ to grid/ and symbol-type
      portion of init/interface.lisp to grid/symbol-type.lisp.
      All tests pass
      TOTAL: 1627 assertions passed, 6 failed, 0 execution errors.
      ce261d71
  13. 14 Nov, 2009 1 commit
  14. 23 Aug, 2009 1 commit
    • 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
  15. 06 Jun, 2009 1 commit
    • Liam Healy's avatar
      Define C structures using CFFI-grovel · 8c0e6eb7
      Liam Healy authored
      Almost all GSL structures are now defined using CFFI-grovel, which
      makes the code more robust should there be changes in GSL.  The
      exceptions are complex-float-c, complex-double-c, and
      simulated-annealing-parameters; because these structures are used by
      value, they need to be defined with fsbv:defcstruct at the present.
      8c0e6eb7
  16. 25 May, 2009 2 commits
    • Liam Healy's avatar
      Use CFFI-grovel to define enumerations and programming constants · 5b255beb
      Liam Healy authored
      Instead of hardwiring GSL's #define or enum values, define them in
      init/libgsl-unix.lisp and run CFFI-grovel on them.  This has the
      advantage that if these values change in GSL, GSLL will automatically
      get the new values; also, there was an error in the 'integrate-method
      enum due to an incorrect starting value.  It has the disadvantage that
      building GSLL now requires a C compiler and some of the header (.h)
      files for GSL.  Also, it's not clear what the form for libgsl-*.lisp
      files are for non-unix OSes.
      5b255beb
    • Liam Healy's avatar
      Generic function #'size replaces #'total-size for marrays · 938ae6d6
      Liam Healy authored
      Use #'size instead of #'total-size for marrays.
      938ae6d6
  17. 27 Apr, 2009 1 commit
    • Liam Healy's avatar
      Redeclare foreign-allocated variables called by reference · 9848c6ad
      Liam Healy authored
      Variables called using with-foreign-objects that are passed to GSL for
      the purposes of returning computed values (i.e., are not mentioned in
      the CL arglist) need to be declared (:pointer type) because they are
      calls by reference.  Everything now compiles though there are
      execution errors in the tests.
      9848c6ad
  18. 04 Mar, 2009 1 commit
  19. 02 Mar, 2009 1 commit
    • Liam Healy's avatar
      Bessel function consolidation and rename · 0daffee9
      Liam Healy authored
      Integer and fractional order Bessel functions renamed to be methods of
      the same generic function (for J and Y).  Name the array function
      analogously (-x, -order) so it is clear what is changing.  Fix
      docstring phrasing for Hankel.
      0daffee9
  20. 20 Feb, 2009 1 commit
    • Liam Healy's avatar
      Unify linear-mfit; Airy tests from GSL · ed9a001e
      Liam Healy authored
      The linear multi-parameter fitting functions with and without SVD have
      been unified into one function #'linear-fit; the weighted and
      unweighted functions have already been unified.  If tolerance is
      non-nil (double-float) the SVD functions will be called.
      
      Tests of the Airy functions have been replaced by those in GSL's
      gsl-1.11/specfunc/test_airy.c and agree.  Test totals now:
      SBCL 64: TOTAL: 1440 assertions passed, 5 failed, 0 execution errors.
      CCL 64:  TOTAL: 1441 assertions passed, 4 failed, 0 execution errors.
      ed9a001e
  21. 17 Feb, 2009 1 commit
    • Liam Healy's avatar
      GSL features added in version 1.10 · 94413b43
      Liam Healy authored
      Functions added to GSL with version 1.10, and related changes: 
      - Cholesky routines for complex matrices; Cholesky functions _solve and
      _svx (solution separate and in-place) now combined into a single
      generic function with an optional argument #'cholesky-solve.
      Unfortunately a default marray maker can't be included in the optional
      argument.
       - Correlation added, and covariance and correlation tests expanded to
      all supported matrix element types.
       - Added #'exponential-integral-En for nth-order exponential integral.
       - Also rewrote #'callback-set-slots and #'body-expand to eliminate
      gratuitous (progn nil ...) in some defmfun expansions.
      Test results:
      SBCL 64: TOTAL: 1379 assertions passed, 5 failed, 0 execution errors.
      CCL 64: TOTAL: 1380 assertions passed, 4 failed, 0 execution errors.
      94413b43
  22. 16 Feb, 2009 1 commit
  23. 11 Jan, 2009 2 commits
    • Liam Healy's avatar
      Non-symmetric eigensystems, array outputs for special functions · 12c2be7e
      Liam Healy authored
      Added some functions introduced in GSL 1.9 to solve eigenvectors and
      eigenvalues for non-symmetric matrices.  These are untested as yet.
      Changed array output for special functions to be optional arguments
      which can take a size (integer) and create a marray of the right
      size.
      12c2be7e
    • Liam Healy's avatar
      Use &aux definitions in defmfun; clean up foreign-friendly definitions · 0b69f21e
      Liam Healy authored
      Add &aux to defmfuns to that e.g. array arguments can optionally take
      a size and make an array (bessel.lisp).  Remove several unused
      definitions in foreign-friendly held over from ffa.
      SBCL 64: TOTAL: 1223 assertions passed, 5 failed, 0 execution errors.
      CCL 64: TOTAL: 1228 assertions passed, 0 failed, 0 execution errors.
      0b69f21e
  24. 31 Dec, 2008 1 commit
    • Liam Healy's avatar
      Specify :inputs and :outputs; CCL works · 54353bcb
      Liam Healy authored
      More :inputs and :outputs specified.  CCL now passes all 1208 tests if
      certain functions are traced (bug in CCL?)
      (trace polynomial-eval-divided-difference swap-elements
             permutation-reverse lu-invert permutation-next)
      54353bcb
  25. 30 Dec, 2008 1 commit
  26. 26 Dec, 2008 2 commits
    • Liam Healy's avatar
      Full use of defmobject; elimination of letm · b09dc9d2
      Liam Healy authored
      All GSL objects are full CL objects with garbage collection.  There is
      no need to manually free the associated memory.  All objects may be
      assigned in the normal CL way, e.g. let, so there is not #'letm macro
      anymore.  Everything compiles cleanly in gsll, but nothing has been
      tested.
      b09dc9d2
    • Liam Healy's avatar
      New class foreign-array, new names: marray, make-marray, mobject.lisp · 7c66d57b
      Liam Healy authored
      New class foreign-array represents foreign (C) arrays, without GSL or
      mobject superclass.  New class name 'marray was 'gsl-data,
      representing arrays in GSL.  These objects are made by #'make-marray,
      formerely #'make-array*.  New file names: init/mobject.lisp was
      init/gsl-objects.lisp and data/marray.lisp was data/data.lisp.
      7c66d57b
  27. 01 Dec, 2008 1 commit
    • Liam Healy's avatar
      GSL array making with make-array* and #m · 83cd8040
      Liam Healy authored
      GSL arrays are garbage-collected objects, and so can be made like any
      other lisp object; they do not need to be make inside a wrapper form.
      #m is a macro which makes them; it expands to a #'make-array* call.
      Examples and usage ported to this new form.  Compiled only; not tested
      yet.  No effort to port to non-native implementation yet; tests as
      expanded in the tests/ directory are not ported yet.
      83cd8040
  28. 16 Nov, 2008 2 commits
  29. 25 Oct, 2008 1 commit
    • Liam Healy's avatar
      Port tests to save-test · 0343f3ce
      Liam Healy authored
      All remaning tests are now defined with save-test, and the
      LISP-UNIT:DEFINE-TEST has been eliminated from the definition files,
      except for arrays.
      0343f3ce
  30. 22 Oct, 2008 1 commit
    • Liam Healy's avatar
      Save test forms with save-test; generate separate files with actual tests · 0fb0effc
      Liam Healy authored
      New function #'save-test saves test forms to a special, and nothing
      more.  Function #'write-test-to-file in generate-tests.lisp will write
      it to a file, which ought to be done rarely.  I have started the task
      of moving all test definitions to save-test, in the
      special-functions.  The files generated have been checked against the
      old definitions, but they have not been checked in yet.
      0fb0effc
  31. 14 Oct, 2008 1 commit
    • Liam Healy's avatar
      Test generation (including arrays) with save-tests · 6bb17e91
      Liam Healy authored
      New macro #'save-tests will put list of tests onto
      *all-generated-tests*.  The corresponding lisp-unit test can be
      generated with #'create-test.  The macro #'generate-all-array-tests
      now uses #'save-tests, so all tests defined that way will be put onto
      the lists.  All tests can be written to a file with
      #'write-tests-to-file, but this writes to a single file and I think I
      will want to write each test to a separate file so that it is easier
      to replace or augment one test without touching the others.  Two
      sections, Airy and Clausen, use these definitions.
      6bb17e91
  32. 21 Sep, 2008 2 commits
    • Liam Healy's avatar
      Restoration of tests complete except for arrays · 4e6d5886
      Liam Healy authored
      All the lisp-unit tests defined in the old GSLL have been updated and
      will load by default, with all tests passing on Debian Lenny amd64 and
      GSL 1.11.
      TOTAL: 491 assertions passed, 0 failed, 0 execution errors.
      4e6d5886
    • Liam Healy's avatar
      Replace tests · d0d17af0
      Liam Healy authored
      Several random distribution functions have new tests as the previous
      test results are no longer generated; it is not clear why.  New tests
      for numerical-differentiation based on GSL's own tests in
      deriv/test.c.  Fixed typo in #'integration-workspace-free which caused
      crash.  All uncommented tests now pass.
      TOTAL: 452 assertions passed, 0 failed, 0 execution errors.
      d0d17af0
  33. 15 Sep, 2008 1 commit
    • Liam Healy's avatar
      Restore some tests · fe339ae4
      Liam Healy authored
      Multiple fixes to restore tests: change to #'cl-array from #'data, use
      #'a macro, comment out a few tests do defer repair until later.  Two
      errors in definitions of functions in
      histogram/updating-accessing.lisp fixed.  Some uncommented-out test
      failures remain.
      fe339ae4
  34. 10 Aug, 2008 1 commit
    • Liam Healy's avatar
      Explicit precision specification modes · 6f90daf7
      Liam Healy authored
      The GSL precision mode used mainly in special functions is now
      explicitly given in the CL argument list; remove special treatment of
      :mode in C argument list of defmfun call, which meddled with the CL
      arglist.  Changed sf-mode options to :double, :single, :approx.
      6f90daf7