We provide an OpenXM client math2ox written as an external module
for Mathematica.
The module math2ox communicates with Mathematica by MathLink and
with any OpenXM server by the OpenXM protocol.
By using the module math2ox,
we can call OpenXM servers from Mathematica;
here is a demonstration of a computation of the de Rham cohomology groups
of
from Mathematica.
In[1]:= Install["math2ox"] In[2]:= OxStart["../lib/sm1/bin/ox_sm1_forAsir"] In[3]:= OxExecute[" [(x^3-y^2) (x,y)] deRham "] In[4]:= OxPopString[] Out[4]= [ 1 , 1 , 0 ] (* The dimension of cohomology groups *)
The math2ox adds the following functions to Mathematica.
OxStart[s_String]Although the list of functions speaks itself, we add some explanations. The function OxPopCMO[] executes the same operation as ox_pop_cmo() in Risa/Asir; it pops data from the server stack. The OxGet[] receives an OX data message and returns its translation to an local object. The function OxParse[] helps debugging to connect Mathematica and ox servers. By using the function, one can send OX messages, written by the OX expression, to a server. OX expressions are Lisp-like expressions for OX messages and are defined in [12].
OxStartInsecure[s_String]
OxExecuteString[s_String]
OxParse[s_String]
OxGet[]
OxPopCMO[]
OxPopString[]
OxClose[]
OxReset[]