Skip to content
Snippets Groups Projects
  1. May 25, 2009
  2. May 03, 2009
    • Liam Healy's avatar
      Conditionalize FSBV · 8a08f552
      Liam Healy authored
      All source code is now conditionalized so that FSBV is optional.  If
      present, functions using complex scalars will work.  If absent, GSLL
      will compile and load correctly, and all functions except those using
      complex scalars will work.  The examples and tests are defined
      appropriately.  Documentation on FSBV dependence has been added to
      index.html.
      8a08f552
    • Liam Healy's avatar
      Call GSL functions with complex scalars · 0ca58836
      Liam Healy authored
      With improved fsbv:foreign-funcall that does the conversion of values
      between Lisp and C, the function foreign-funcall-indirect has been
      eliminated in favor of using fsbv:foreign-funcall directly.  Spot
      checks on various functions that use complex scalars like #'evaluate
      polynomials at a complex point, or set-all on complex marrays, or the
      functions in complex.lisp, show that these all work.  Everything
      compiles/loads and the usual tests pass in SBCL.
      0ca58836
  3. Apr 30, 2009
    • Liam Healy's avatar
      Use FSBV for functions taking complex scalars · 913040d8
      Liam Healy authored
      The BLAS matrix-product functions now work on complex arrays using
      FSBV, but there are no tests yet.  New tests vector-set-all and
      matrix-set-all replace set-all tests with addition, and work for all
      types including complex using FSBV.  Default optional argument marrays
      are initialized to 0.  Polynomial evaluation with complex argument
      uncommented, but not yet working.
      913040d8
  4. Apr 28, 2009
  5. Apr 27, 2009
    • 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
  6. Apr 03, 2009
    • Liam Healy's avatar
      Polynomial order of and optional arguments; added tests from GSL · 26a5e307
      Liam Healy authored
      Change the order of arguments to #'divided-difference and
      #'taylor-divided-difference in order to make 'dd in the first case and
      'coefficients and 'workspace in the second case optional arguments.
      Added all the tests from gsl-1.11/poly/test.c; results agree with the
      values stated there.  Complete test results:
      SBCL64: TOTAL: 1483 assertions passed, 5 failed, 0 execution errors.
      CCL64:  TOTAL: 1486 assertions passed, 2 failed, 0 execution errors.
      26a5e307
  7. Feb 01, 2009
    • Liam Healy's avatar
      Polynomial uses #'evaluate · cbcc15dd
      Liam Healy authored
      Polynomial evaluation is now done with a method of #'evaluate.  We
      can't do complex evaluation because the return value would be complex,
      and there is no way to handle that in CFFI yet.  Evaluation with
      divided differences is a keyword switched part of the same method; it
      works but gives an puzzling style warning in SBCL about the keyword.
      The use of an marray in an optional/key argument necessitated a change
      to defmfun that redefined #'body-expand from #'body-no-optional-arg,
      made #'body-no-optional-arg a new function that wraps necessary
      array-handling forms around the expanded unswitched body form from
      body-expand.
      cbcc15dd
  8. Dec 31, 2008
    • Liam Healy's avatar
      Redesign polynomial-solve, invert matrix · 4f581352
      Liam Healy authored
      The function #'polynomial-solve is now directly defined with defmfun
      with a single required argument and two optional arguments: the answer
      vector-complex-double-float and the workspace, both of which default
      to the right thing.  The returned is now the this marray instead of a
      list.  Simplify the definition of #'invert-matrix and return the
      matrix-double-float instead of the CL array.  All tests pass SBCL and
      CCL with trace.
      4f581352
    • 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
  9. Dec 27, 2008
    • Liam Healy's avatar
      Set mpointer vlaue, show relevant .h file; non-int return for reinitialize-instance · 8a0ac730
      Liam Healy authored
      In defmobject, set the mpointer value if #'allocate is being called.
      For each file that defines a defmobject, I put a comment at the top
      showing the relevant GSL header file.  For generators and quasi, the
      (re)initializing function returns void and not an :int, so that is
      changed in the defmobject definition, which now permits a list of two
      elements in initialize-suffix, with the second element indicating the
      :c-return.
      8a0ac730
  10. Dec 26, 2008
    • Liam Healy's avatar
      Calling mobjects with #'mpointer, generic function #'name · 297c08b2
      Liam Healy authored
      GSL functions that take GSL objects as arguments must have #'mpointer
      called on each argument.  Created a generic function #'name and
      changed all the *-name (or name-*) functions that acted on mobjects to
      this function.
      297c08b2
    • 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
  11. Dec 25, 2008
  12. Dec 07, 2008
    • Liam Healy's avatar
      Make FFA at initialize-instance time for gsl-data; restore permutations and combinations · 4c380808
      Liam Healy authored
      Instead of making the ffa in make-array*, we now make it in the
      initialize-instance :after method for gsl-data.  This means that
      subclasses (permutations, combinations) will automatically make the
      arrays.  Rewrote make-array* so that it is just a wrapper for
      make-instance, computing the dimensions from the specified initial
      parameters.  Permutations and combinations are now made with make-*
      functions.
      4c380808
  13. Dec 01, 2008
    • 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
  14. Oct 25, 2008
    • 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
  15. Sep 15, 2008
    • 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
  16. Jul 25, 2008
  17. Feb 24, 2008
  18. Feb 18, 2008
  19. Feb 16, 2008
  20. Feb 06, 2008
  21. Feb 04, 2008
  22. Feb 03, 2008
  23. Jan 27, 2008
  24. Jan 28, 2007
  25. Jul 08, 2006
  26. Jun 14, 2006
  27. Jun 12, 2006
  28. Jun 08, 2006
  29. May 30, 2006
  30. Apr 29, 2006
    • liam's avatar
      Allow arbitrary CL function arglist in defun-gsl with :function · 1ab6ee5a
      liam authored
      argument, like :method argument.  The arguments to the GSL function
      can be mapped arbitrarily, and different pieces like the size of a
      vector (with new function #'dim0) or the pointer #'gsl-array can be
      put in the correct place in the arglist explicitly.  Thus I can
      simplify #'splice-arguments and eliminate the hackish automatic
      insertion of the vector dimension after (or maybe before) when
      declared (:double *).  Ported all half-dozen or so uses to the new
      form.  Add :after cl-invalidate where needed.
      
      
      
      git-svn-id: svn+ssh://pop/opt/space/mathematics/gsl/trunk@3054 a3d8a0fb-c1db-0310-ace7-a616afeb9e30
      1ab6ee5a
  31. Apr 22, 2006
Loading