Hello,
I'm interested in implementing the LinearAlgebra module for JNumeric. I
recently needed the solve_linear_equations function for my own purposes
so I made a simple wrapper [1] around JAMA [2]. While this worked it
requires an external dependency and I wanted to know the group's
preference on external libraries. If one is used does anyone have a
preference?
I know Numeric uses LAPACK but I don't have much experience with the
Java port [3] of LAPACK (currently in alpha) but it would be consistent
with Numeric. Any suggestions/comments? I'm most interested in using
the LAPACK port for consistency and minimizing development time unless
for some reason it just doesn't work well with Jython (either
programmatically or because of licensing). If the required lapack_lite
methods needed by LinearAlgebra.py are exposed we can even reuse
Numeric's version.
On that topic, why was it chosen to reimplement Numeric.py in Java
rather than just re-use the existing Python-based modules included in
Numeric and just making sure that the modules originally written in C
(multiarray for instance) are properly exposed through Java so Jython
can access them. This does require a Jython user to download and
install Numeric but it would make for less work on JNumeric's side as
well as forcing API consistency (so long as all methods are implemented
but this problem exists even if re-written in Java) with Numeric. I
chose this approach when porting mx.DateTime to Jython [4] and it made
for a lot less work.
In addition I'd like to check in an Ant build.xml that parallels the
Makefile in src if no one objects.
thanks,
brian
[1] http://tinyurl.com/3t8o
[2] http://math.nist.gov/javanumerics/jama/
[3] http://sourceforge.net/projects/f2j
[4] http://sourceforge.net/zxpy/
|