1. 21 Dec, 2009 1 commit
    • Liam Healy's avatar
      Move copy-to-destination to grid · 06f99392
      Liam Healy authored
      The generic function definition for copy-to-destination is now in
      grid/ and the c-array package.  This will make it accessible to
      non-GSLL foreign library interfaces, but the new location is a bit
      deceptive because a new method needn't be a subclass of foreign-array.
      06f99392
  2. 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
  3. 25 May, 2009 1 commit
    • Liam Healy's avatar
      Generic function #'size · 453f3364
      Liam Healy authored
      A new generic function #'size replaces the old ordinary functions
      #'size (for Chebyshev) and #'combination-size, #'permutation-size,
      #'rng-size, and #'mfminimizer-size.
      453f3364
  4. 18 Feb, 2009 1 commit
    • Liam Healy's avatar
      GSL features added in version 1.11; cholesky-solve and linear fit unification · cb88b8db
      Liam Healy authored
      Added +halton+, +reverse-halton+ to random/quasi.lisp. 
      
      Added #'multi-linear-residuals in
      solve-minimize-fit/linear-least-squares.lisp.  Changed +sobol+,
      +niederreiter2+ from *..* apparently overlooked before.
      
      #'cholesky-solve now written so that if x-spec = T, a marray is
      created and the solution put in it and returned.  If it is NIL, the
      solution will replace b.  This required a modification to
      expand-defmfun-generic to remove &aux args from the defgeneric
      arglist.
      
      solve-minimize-fit/linear-least-squares.lisp
      Specify the weight as an optional argument, unifying the weighted and
      unweighted functions:
      linear-fit, multiplier-fit, linear-mfit, linear-mfit-svd.
      This necessitated a change in the order of the arguments.
      Changed call in basis-splines.lisp.
      cb88b8db
  5. 25 Jan, 2009 1 commit
    • Liam Healy's avatar
      Keyword arguments to defmobject · cd6a85f8
      Liam Healy authored
      Change optional arguments to defmobject to keyword arguments, and add
      :gsl-version argument that will create the maker function to signal an
      error if the installed version of GSL is too old.
      cd6a85f8
  6. 12 Jan, 2009 1 commit
    • Liam Healy's avatar
      Redefine #'copy · 419e70d4
      Liam Healy authored
      Redefine #'copy so that it has one required argument (source) and one
      optional argument (destination).  For marrays, create a destination
      using make-marray, if one was not given, and then use the memcpy
      functions to fill the values.  For all other mobjects, copy will copy
      objects by calling one of two generic functions, #'copy-to-destination
      and #'copy-making-destination, depending on whether a destination was
      supplied.  The former is defined if a GSL _memcpy function exists.
      The latter will look for a GSL _clone function, then make a CL
      instance with the pointer returned as mpointer.  If there is no clone
      function, it will attempt to make a new object using make-load-form,
      so will fail if that method has not been defined.
      
      Added a check to defmfun that signals an error if a variable is used
      in the C arguments other than top-level that is not used in the CL
      arglist.  This should not happen and is usually an indication of a
      typo.
      419e70d4
  7. 27 Dec, 2008 2 commits
    • Liam Healy's avatar
      Updated tests; all pass · 64fea6a9
      Liam Healy authored
      Fixes to some definitions 
      lognormal, discrete: use #'mpointer
      lu: new syntax for making array
      quasi: order of arguments fixed in make-quasi-random-number-generator
      sorting: syntax to make combination
      All tests have been regenerated because syntax for arrays etc. has
      changed.  Visually inspected that results match previous check in.
      64fea6a9
    • 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
  8. 26 Dec, 2008 4 commits
    • 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
    • Liam Healy's avatar
      Permit alternate origin of mpointer; #'clone · 38d9c4f4
      Liam Healy authored
      Redesign #'defmobject so that a new method #'allocate is defined that
      calls the standard GSL allocate function for each object.  Shrink the
      initialize-instance :after method to call #'allocate if the mpointer
      isn't given, and then set the finalizer.  This way, an :mpointer made
      by something other than the allocate function may be supplied to the
      make-instance, and the object will be made correctly.  This is used by
      #'clone functions in histogram and random number generators.  Not
      compiled or tested, but macroexpansions look right.
      38d9c4f4
  9. 25 Dec, 2008 1 commit
  10. 22 Dec, 2008 1 commit
  11. 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
  12. 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
  13. 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
  14. 17 Aug, 2008 1 commit
  15. 25 Jul, 2008 2 commits
  16. 18 Feb, 2008 1 commit
  17. 03 Feb, 2008 2 commits
  18. 01 Feb, 2008 1 commit
  19. 21 Jan, 2008 1 commit
  20. 05 Mar, 2007 1 commit
  21. 20 Feb, 2007 1 commit
  22. 01 Jan, 2007 1 commit
  23. 17 Jul, 2006 2 commits