1. 10 Jan, 2011 2 commits
  2. 01 Jan, 2011 1 commit
  3. 03 Oct, 2010 1 commit
  4. 13 Aug, 2010 1 commit
  5. 07 Jul, 2010 3 commits
  6. 01 Jul, 2010 1 commit
  7. 30 Jun, 2010 2 commits
  8. 27 Jun, 2010 1 commit
  9. 05 Feb, 2010 2 commits
  10. 19 Jan, 2010 2 commits
  11. 28 Dec, 2009 1 commit
  12. 27 Dec, 2009 1 commit
  13. 26 Dec, 2009 1 commit
    • Liam Healy's avatar
      Be strict on initial marray values; default marrays · 2a6a743f
      Liam Healy authored
      Removed some marrays marked as :input when their values were not used.
      This failed in CCL because the arrays in those cases were created with
      no initial values, and no values were set, so that they were marked
      cl-invalid.  Created #'make-marray-or-default to facilitate defaulting
      of marrays in defmfun, and marking validity appropriately.
      Test results:
      SBCL 64:
      TOTAL: 1627 assertions passed, 6 failed, 0 execution errors.
      CCL 64:
      TOTAL: 1620 assertions passed, 13 failed, 0 execution errors.
      2a6a743f
  14. 23 Dec, 2009 1 commit
    • Liam Healy's avatar
      Replace create-matrix and constant-matrix using grid functions · e48ba0cb
      Liam Healy authored
      Replace create-matrix and constant-matrix by using the grid functions
      grid:map-grid and grid:make-grid; eliminate create-vector because
      vectors can be generated with create-matrix and using nil for the
      second dimension argument.  In the grid:make-grid-data method for
      make-marray, the first argument, which is the element type, needs to
      be extracted from the rest spec with a newly-changed
      grid:spec-scalar-p because compound types like (complex double-float)
      were not being recognized as element types.
      e48ba0cb
  15. 08 Dec, 2009 1 commit
    • Liam Healy's avatar
      Split off grid directory · 8d5cd4a5
      Liam Healy authored
      Eventually, the definitions used for dealing with types and foreign
      arrays that aren't specific to GSL will be split off into another
      system, so that it will be easier to build other foreign library
      interfaces using these definitions.  As a start, the grid/ directory
      defines a package 'c-array and some of the type definitions formerly
      in init/.  Everything compiles and tests as before, on SBCL
      TOTAL: 1627 assertions passed, 6 failed, 0 execution errors.
      8d5cd4a5
  16. 14 Nov, 2009 1 commit
  17. 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
  18. 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
  19. 25 Sep, 2009 1 commit
  20. 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
  21. 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
  22. 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
  23. 05 Jun, 2009 1 commit
    • Liam Healy's avatar
      Reader macro #m evaluates arguments · 70bd2986
      Liam Healy authored
      The reader macro #m now evaluates its arguments, so creating a vector
      with e.g. #m(pi (sqrt 3) (cos (/ pi 4))) is now possible.  Matrices
      are specified by using ^ in the list to separate rows.  GSLL now
      requires cl-utilities once again.
      70bd2986
  24. 25 May, 2009 1 commit
    • 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
  25. 06 May, 2009 1 commit
  26. 03 May, 2009 2 commits
    • Liam Healy's avatar
      Define fsbv:defcfun for efficiency · 8d2ef1de
      Liam Healy authored
      For FSBV calls, define fsbv:defcfun in the defmfun expansion, then in
      the fsbv:foreign-funcall, refer to the symbol function name rather
      than string function name.  This tells FSBV to use the prepared
      closure associated with that function by the fsbv:defcfun, meaning
      that the definitions in that lexical environment are reused.
      
      Fix conditionalization for #'conjugate-rank-1-update in blas2.lisp.
      
      Test results:
      SBCL 64 #+fsbv
      TOTAL: 1522 assertions passed, 5 failed, 0 execution errors.
      CCL 64 #+fsbv
      TOTAL: 1522 assertions passed, 5 failed, 0 execution errors.
      SBCL 64 #-fsbv
      TOTAL: 1502 assertions passed, 5 failed, 0 execution errors.
      CCL 64 #-fsbv
      TOTAL: 1502 assertions passed, 5 failed, 0 execution errors.
      8d2ef1de
    • 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
  27. 30 Apr, 2009 1 commit
    • 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
  28. 28 Apr, 2009 1 commit
  29. 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
  30. 18 Mar, 2009 1 commit
    • Liam Healy's avatar
      LU remultiplication with permutation; unify permutation functions · b7074c43
      Liam Healy authored
      The LU remultiplication tests now permute the answer at the end so
      that it ends up with the original vector with the elements in the
      original order.  The permutation functions #'permute and
      #'permute-inverse now include all arguments, including marrays and
      pointers to C arrays.  Formerely, there were separate functions
      #'permute-vector and #'permute-vector-inverse.
      SBCL64: TOTAL: 1451 assertions passed, 5 failed, 0 execution errors.
      CCL64:  TOTAL: 1452 assertions passed, 4 failed, 0 execution errors.
      b7074c43
  31. 15 Mar, 2009 1 commit
    • Liam Healy's avatar
      Non-square matrix multiplication; marking cl-invalid · b009f3e6
      Liam Healy authored
      Fixed a problem in #'matrix-product-dimensions reported by 
      Norman Werner that prevented taking the product of non-square
      matrices, and added a test to check for the multiplication for all
      four element types supported.  This revealed a problem in non-native
      marray initialization (found in CCL) which has been fixed by marking
      foreign-arrays :cl-invalid when neither :initial-contents nor
      :initial-element have been specified.
      SBCL 64: TOTAL: 1449 assertions passed, 7 failed, 0 execution errors.
      CCL64: TOTAL: 1450 assertions passed, 6 failed, 0 execution errors.
      b009f3e6