- Aug 24, 2008
-
-
Liam Healy authored
Port new chapters to ffa. Fix up BLAS. Compiles; no testing.
-
- Aug 23, 2008
-
-
Liam Healy authored
Missed #'mpointer changes and some renames; also change to new args for maref.
-
Liam Healy authored
The generic function #'maref will work on foreign pointers and assume them to be pointing to either a gsl-vector-c or a gsl-matrix-c, depending on how many indices are given. This then functions like the old #'vref and #'mref. It is used in the new function #'make-vector-from-gsl which creates a CL vector (using make-array*) which is needed by several functions in solve-minimize-fit. It is also useful in the callbacks a user would define for solve-minimize-fit functions. Similar functionality added to (setf aref) which was turned into a generic function. As part of the changes needed to define these methods, the defmfun family was modified to accept optional arguments in #'expand-defmfun-method, which is invoked when :definition :method is given. Functions with optional arguments fall into two categories as far as defmfun is concerned: those that correspond to multiple GSL functions, and those that don't. This should work in both cases.
-
- Aug 22, 2008
-
-
Liam Healy authored
Port ordinary-differential-equations to "ffa" which is really just a few changes to sizet. The example runs and the results look reasonable.
-
Liam Healy authored
Ported Monte-carlo to ffa, with all examples working. This necessitated the introduction of a new local macro in letm, #'a*, which is like #'a, but evaluates its arguments (and thus allows pi).
-
- Aug 21, 2008
-
-
Liam Healy authored
The remainder of the statistics chapter ported to ffa. All compile but none tested.
-
- Aug 17, 2008
-
-
Liam Healy authored
Port mean-variance to ffa. Compiled; not tested.
-
Liam Healy authored
Introduce #'body-optional-arg and #'body-no-optional-arg (formerly functions and the second specifies whether to map down on the C argument list on order to find all variables that are used. All of GSLL compiles.
-
Liam Healy authored
Merge and clean up the changes to defmfun.
-
Liam Healy authored
New function #'complete-definition is for putting together an entire definition with arglist, declaration, and body, such as defun, defmethod, or :method. The old (misleadingly-named) #'expand-defmfun-plain has been removed. Removed possibility of definition &aux variables with :global; it was used only once and easily replaced.
-
Liam Healy authored
Extract new function #'expand-defmfun-body from #'expand-defmfun-plain, then define the latter in terms of the former, with the idea that it will be easier to define other forms (defmethod, :method by calling this new function separately. GSLL compiles with the new function.
-
Liam Healy authored
Little actual ffa usage, just the port to 'sizet, method and use of #'mpointer in the histogram context. It would be nice to be able to adapt defmfun to discriminating between 1d and 2d histograms rather than using histo-1d2d, but I will put that off for now. This compiles but is not tested.
-
Liam Healy authored
The vector usage in random, plus a few sizet types, ported. Not tested.
-
- Aug 16, 2008
-
-
Liam Healy authored
Rename type to 'sizet from 'size; no data here so no ffa-related changes.
-
- Aug 15, 2008
-
-
Liam Healy authored
Eigenvalues, eigenvectors ported to ffa, using generic functions to choose between real symmetrix and complex hermitian matrices. The example has been tried and works.
-
- Aug 13, 2008
-
-
Liam Healy authored
Uses generic functions to cover both symmetric and hermitian solutions for the tridiagonal functions that have both. This necessitated modifying #'actual-gsl-function-name to allow explicit listing of the GSL functions by element type.
-
- Aug 12, 2008
-
-
Liam Healy authored
Port qrpt, householder, cholesky, svd. Modify lu and qr to match the naming patterns adopted.
-
- Aug 11, 2008
-
-
Liam Healy authored
Port the QR decomposition to ffa. Functions return the relevant quantity(ies). Compiles but not tested.
-
Liam Healy authored
LU decomposition functions now support real and complex types, and the example has been tested and works: (invert-matrix (make-array* '(2 2) 'double-float :initial-contents '(1.0d0 2.0d0 3.0d0 4.0d0))) #2A((-1.9999999999999998d0 1.0d0) (1.4999999999999998d0 -0.49999999999999994d0))
-
- Aug 10, 2008
-
-
Liam Healy authored
Function #'matrix-exponential to compute the exponential of a matrix using the methods of Moler & Van Loan. This function is undocumented in GSL but seems to work.
-
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.
-
Liam Healy authored
Port of all BLAS3 to ffa, which also means changing BLAS2 because common generic functions are used. These compile but are not tested, and there are no regression tests/examples.
-
- Aug 09, 2008
-
-
Liam Healy authored
The last patch wasn't quite correct; fix #'c-arguments so that it looks at all C arguments, not just those with function calls, and removes all non-symbols.
-
Liam Healy authored
Avoid numbers and lists in carg-symbs in expand-defmfun-plain via c-arguments. This permits C argument lists with literal constants (such as the integer 1 in sorting.lisp) to work. Fix a duplicated name in sorting.lisp, #'sort-index was #'sort-vector-index.
-
- Aug 08, 2008
-
-
Liam Healy authored
Optional arguments may be included in generic functions defined through defmfun. If the default values are numerical, they will be coerced to the appropriate element type. Declare ignore unused variables. Use #'arglist-plain-and-categories in #'expand-defmfun-plain.
-
- Aug 07, 2008
-
-
Liam Healy authored
-
- Aug 04, 2008
-
-
Liam Healy authored
Change the generic specializer for scalars to :element-type (from :element-c-type), and restore BLAS1 to gsll.asd.
-
- Aug 03, 2008
-
-
Liam Healy authored
Givens rotations ported; they compile but are not tested. The "modified" Givens rotations are not explained in the GSL documentation, so I have "not explained" for the documentation.
-
- Aug 02, 2008
-
-
Liam Healy authored
There are two BLAS1 functions "gsl_blas_csscal" and "gsl_blas_zdscal" that scale complex vectors with a real scalar alpha. In order to distinguish a call to #'scale between these and the equivalent functions gsl_blas_cscal and gsl_blas_zscal that take complex scalars, it is necessary to specialize on the scalar class (float or complex). Modified defmfun so that the pseudo-classes :component-float-type and :element-c-type are recognized and the appropriate substitution is made. Compiled without errors or warnings but not tested.
-
- Jul 25, 2008
-
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@72 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@71 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@70 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
mapping and #'actual-gsl-function-name. git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@69 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@68 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
to load correctly. git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@67 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
documentation.html but it is still incomplete. git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@66 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@65 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
ctype to 'sizet from 'size to better pick it out of the source code. git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@64 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
Remove old definition of make-array*. git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@63 af03a46b-e846-0410-96e5-d5653c316fd0
-
lhealy authored
git-svn-id: svn+ssh://common-lisp.net/project/gsll/svn/branches/ffa@62 af03a46b-e846-0410-96e5-d5653c316fd0
-