cl-num-utils
cl-num-utils copied to clipboard
Numerical utilities, the successor of cl-numlib
This repository is archived. You may find an updated version of these libraries at https://github.com/Lisp-Stat/numerical-utilities
- cl-num-utils
This library implements simple numerical functions for Common Lisp, including
- =num==, a comparison operator for floats
- simple arithmeric functions, like =sum= and =l2norm=
- elementwise operations for arrays
- intervals
- special matrices and shorthand for their input
- sample statistics
- Chebyshev polynomials
- univariate rootfinding
See the sources and the docstring for more details.
All the functionality has corresponding unit tests.
** Symbol conflicts with =alexandria=
When you import both =cl-num-utils= and =alexandria=, you get symbol conflicts. There are two solutions for this: either import only parts of =cl-num-utils= (see the packages named in each file), or shadow some symbols, eg #+BEGIN_SRC lisp (cl:defpackage #:my-package (:use #:cl #:alexandria #:cl-num-utils) (:shadowing-import-from #:alexandria #:mean #:variance #:median)) #+END_SRC
** Reporting bugs
Bugs are tracked on Github, please [[https://github.com/tpapp/cl-num-utils/issues][open an issue]] if you find one.
** Tasks *** TODO finish histogram code, write tests *** TODO decide whether recursive indexes are practical code is still there, but commented out