Database Reference
In-Depth Information
(init-mma
(str "-linkmode launch -linkname "
"\"C:/Program Files/Wolfram Research/Mathematica/9.0/
MathKernel.exe\""))
(def-math-macro math math-evaluate)
4.
Now, in the Clojure REPL interpreter, simply use this namespace:
user=> (use 'mma)
nil
How it works...
Just as in the previous recipe, this recipe uses Clojuratica to provide a Clojure-friendly
layer between the rest of Clojure and Mathematica's JLink library. You'll need to use the
mma namespace in every script or REPL session that you want to communicate with
Mathematica in.
Calling Mathematica functions from
Clojuratica
No matter what data we're working on with Mathematica, we'll want to call Mathematica
functions from Clojure. The Clojuratica library makes this almost as easy as calling Clojure
functions. Let's see how to do it.
Getting ready
You must irst have Clojuratica and Mathematica talking to each other. Either complete the
Setting up Mathematica to talk to Clojuratica for Mac OS X and Linux recipe or the Setting
up Mathematica to talk to Clojuratica for Windows recipe. You'll need to have called the
init-mma function.
Also, make sure that the Clojuratica namespace is imported into your script or REPL,
as follows:
(use 'clojuratica)
How to do it…
In order to call a function, just use Mathematica's name for it with Clojure's function-calling
syntax. For this example, we'll solve a nonlinear system of equations. In Mathematica, this will
look as follows:
FindRoot[{Exp[x-2] == y, y^2 == x}, {{x, 1}, {y, 1}}].
 
Search WWH ::




Custom Search