Pleased to announce a new release of vectorz-clj, a fast and idiomatic 
matrix/vector maths library for Clojure.

https://github.com/mikera/vectorz-clj

Key developments:

- Update to core.matrix 0.5.0 for the latest core.matrix features
- Improved operator support: ability to combine operators, take derivatives 
etc.
- Basic support for N-Dimensional double arrays
- Performance enhancements (see e.g.: http://bit.ly/Zt3usC)
- Experimental sparse matrix support (via Matrixx/createSparse)

vectorz-clj is a complete core.matrix implementation. So if you use it via 
the core.matrix API, you maintain the flexibility to switch to other 
core.matrix implementations in the future (e.g. Clatrix for native JBlas 
libraries). For more information on core.matrix see:

https://github.com/mikera/matrix-api

A core.matrix code example using vectorz-clj:

;; define a 2x2 matrix M
(def M (matrix [[1 2] [3 4]]))
M
=> #<Matrix22 [[1.0,2.0][3.0,4.0]]>

;; compute the inverse of M
(inverse M)
=> #<Matrix22 [[-2.0,1.0][1.5,-0.5]]>

;; multiply M with a vector (core.matrix supports regular Clojure vectors!)
(* M [1 2])
=> #<Vector2 [-3.0,-5.0]>

;; multiply M with a 2x4 matrix
(* M [[1 2 3 4] [5 6 7 8]])
#<Matrix [[11.0,14.0,17.0,20.0][23.0,30.0,37.0,44.0]]>

Note the use of specialised classes for (Vector2, Matrix22 etc.): these 
enable much higher performance and better memory usage for the common sizes 
of small matrices and vectors (used for 2D / 3D maths etc.)

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to