 10 Jan, 2011 2 commits


Liam M. Healy authored
Explicit package reference to grid:dimensions but there's an error because if the symbol isn't imported many more tests fail.

Liam M. Healy authored

 01 Jan, 2011 1 commit


Liam M. Healy authored

 03 Oct, 2010 1 commit


James Wright authored

 13 Aug, 2010 1 commit


Liam Healy authored
The imaginary part of the elements in createcomplexmatrix should be inverted to match GSL's create_complex_matrix. Now all LU tests pass.

 07 Jul, 2010 3 commits


Liam M. Healy authored
Do not use clarray in tests because it isn't always available. The safer way is by doing a copy out to a new CL array.

Liam Healy authored
The generic function #'copy now needs a keyword argument for the destination :gridtype. Eliminate unnecessary copy tests; these are better tested in grid as they didn't use any GSL functions.

Liam Healy authored
Since the copy generic function has been established in grid, eliminate copytodestination for arrays, mvectors, matrices.

 01 Jul, 2010 1 commit


Liam Healy authored

 30 Jun, 2010 2 commits


Liam Healy authored

Liam Healy authored
All of GSLL now compiles using foreignarray; only the copy functions have been commented out.

 27 Jun, 2010 1 commit


Liam Healy authored
Package renamed to :grid from :carray, function renamed to 'foreignpointer from 'cpointer. Eliminate reference to native. Port makemarrayordefault to foreignarray.

 05 Feb, 2010 2 commits


Liam M. Healy authored

Liam M. Healy authored

 19 Jan, 2010 2 commits


Liam Healy authored
Correct default vector size in SVsolve for nonsquare matrices; patch by Evgeniy Zhemchugov.

Liam Healy authored
Define #'choleskyinvert using gsl_cholesky_invert introduced in GSL 1.12. Tests need to be generated. By Evgeniy Zhemchugov.

 28 Dec, 2009 1 commit


Liam M. Healy authored

 27 Dec, 2009 1 commit


Liam Healy authored
Add copyright and license information to each file, include a copy of the GPL under documentation/COPYING.

 26 Dec, 2009 1 commit


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 clinvalid. Created #'makemarrayordefault 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.

 23 Dec, 2009 1 commit


Liam Healy authored
Replace creatematrix and constantmatrix by using the grid functions grid:mapgrid and grid:makegrid; eliminate createvector because vectors can be generated with creatematrix and using nil for the second dimension argument. In the grid:makegriddata method for makemarray, the first argument, which is the element type, needs to be extracted from the rest spec with a newlychanged grid:specscalarp because compound types like (complex doublefloat) were not being recognized as element types.

 08 Dec, 2009 1 commit


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 'carray 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.

 14 Nov, 2009 1 commit


Liam Healy authored
A few overlooked function symbols have been exported and some unused function definitions eliminated. Added an example solvetridiagonalexample thanks to Mirko Vukovic.

 16 Oct, 2009 1 commit


Liam Healy authored
Index limits may be passed to setmatrix 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 'passelement is nonNIL, the function will be passed a final argument which is the prior value of the current element.

 26 Sep, 2009 2 commits


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 QRPTdecomposition so that permutation is before signum. Fixed argument lists to QRPTQRsolve.

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 matrixproduct and matrixproductsymmetric 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 reentered.

 25 Sep, 2009 1 commit


Liam Healy authored
Added the standard set of linear algebra tests for the Householder transformation; all pass.

 21 Sep, 2009 1 commit


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 matrixgeneration.lisp.

 20 Sep, 2009 2 commits


Liam Healy authored
Added nine tests derived from the selftests that GSL has for LU decomposition. All tests except the complex matrix pass within the tolerances prescribed by GSL.

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.

 18 Sep, 2009 1 commit


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.

 05 Jun, 2009 1 commit


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 clutilities once again.

 25 May, 2009 1 commit


Liam Healy authored
Instead of hardwiring GSL's #define or enum values, define them in init/libgslunix.lisp and run CFFIgrovel 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 'integratemethod 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 nonunix OSes.

 06 May, 2009 1 commit


Liam Healy authored
Methods for symmetricrank2update complex types added in blas3.

 03 May, 2009 2 commits


Liam Healy authored
For FSBV calls, define fsbv:defcfun in the defmfun expansion, then in the fsbv:foreignfuncall, 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 #'conjugaterank1update 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.

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.

 30 Apr, 2009 1 commit


Liam Healy authored
The BLAS matrixproduct functions now work on complex arrays using FSBV, but there are no tests yet. New tests vectorsetall and matrixsetall replace setall 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.

 28 Apr, 2009 1 commit


Liam Healy authored
Also cdot, solvequadraticcomplex, solvecubiccomplex generate complex scalars in the argument returned by reference.

 27 Apr, 2009 1 commit


Liam Healy authored
Variables called using withforeignobjects 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.

 18 Mar, 2009 1 commit


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 #'permuteinverse now include all arguments, including marrays and pointers to C arrays. Formerely, there were separate functions #'permutevector and #'permutevectorinverse. SBCL64: TOTAL: 1451 assertions passed, 5 failed, 0 execution errors. CCL64: TOTAL: 1452 assertions passed, 4 failed, 0 execution errors.

 15 Mar, 2009 1 commit


Liam Healy authored
Fixed a problem in #'matrixproductdimensions reported by Norman Werner that prevented taking the product of nonsquare matrices, and added a test to check for the multiplication for all four element types supported. This revealed a problem in nonnative marray initialization (found in CCL) which has been fixed by marking foreignarrays :clinvalid when neither :initialcontents nor :initialelement have been specified. SBCL 64: TOTAL: 1449 assertions passed, 7 failed, 0 execution errors. CCL64: TOTAL: 1450 assertions passed, 6 failed, 0 execution errors.
