Update, Abstract function, derivative, gradient, dot product and functional derivative are supported in SymJava
<https://lh4.googleusercontent.com/-joR1PLBlk4I/VMFLfS6hulI/AAAAAAAAA18/GG7grceg8HE/s1600/ex4_L.png> <https://lh5.googleusercontent.com/-3KGeBHXR1Po/VMFLkgcVNeI/AAAAAAAAA2E/-rIbPcMD9_A/s1600/ex4_grad.png> <https://lh6.googleusercontent.com/-2_ZSYuqVoss/VMFLmsnGSgI/AAAAAAAAA2M/_8FWp80T4gI/s1600/ex4_hessian.png> On Thursday, January 15, 2015 at 5:38:07 PM UTC-8, yueming liu wrote: > > Just finished a prototype of the project SymJava ( > https://github.com/yuemingl/SymJava ) which is similar to sympy. > Actually, I borrowed some ideas from sympy. Thanks all the sympy > contributors. > > The reason to develop this library is that sympy can NOT run on JPython > :(. I have another Java library FuturEye for numerical computation to solve > PDE constrained inverse problems. Symbolic computation is important for > this library since it will reduce a huge amount of time with automatic > functional derivative computation. > > Here is a piece of example code of SymJava: > > Expr expr = x + y * z; > > System.out.println(expr); //x + y*z > > Expr expr2 = expr.subs(x, y*y); > > System.out.println(expr2); //y^2 + y*z > > System.out.println(expr2.diff(y)); //2*y + z > > Func f = new Func("f1", expr2.diff(y)); > > System.out.println(f); //f1(y,z) > > BytecodeFunc func = f.toBytecodeFunc(); //Similar to the lambdify in sympy > > System.out.println(func.apply(1,2)); //4.0 > > There are two important features: > > 1. Operator Overloading is implemented by using > https://github.com/amelentev/java-oo > > 2. Lambdify in sympy is implemented in SymJava by using BCEL library > > Let me know if any one interested in this? Just send me an email: > nkliuyuemingATgmail.com > > > -- You received this message because you are subscribed to the Google Groups "sympy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sympy. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/c8c3c3e6-91e7-4e5b-b9f2-ebfccbdf5899%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
