The answer is 

dsolve(exs::Vector{Sym};kwargs...) = sympy_meth(:dsolve, exs; kwargs...)

I just added this to the master version and will push to METADATA soon.

On Wednesday, July 8, 2015 at 8:03:35 PM UTC-4, CasUpg wrote:
>
> Hi,
> I'm trying SymPy to solve differential equations system but it does not 
> work in Julia. In Python it does. If I write the following in Python:
>
> from sympy import *
> t = symbols('t')
> x = Function('x')
> y = Function('y')
> eq = (Eq(diff(x(t),t), 12*t*x(t) + 8*y(t)), Eq(diff(y(t),t), 21*x(t) + 7*t
> *y(t)))
> dsolve(eq)
>
> it returns:
>
> [x(t) == C1*x0 + C2*x0*Integral(8*exp(Integral(7*t, t))*exp(Integral(12*t, 
> t))/x0**2, t),
>  y(t) == C1*y0 + C2(y0*Integral(8*exp(Integral(7*t, t))*exp(Integral(12*t, 
> t))/x0**2, t) + exp(Integral(7*t, t))*exp(Integral(12*t, t))/x0)]
>
>
> But if I type the following in Julia:
>
> julia> versioninfo()
> Julia Version 0.3.10
> Commit c8ceeef (2015-06-24 13:54 UTC)
> Platform Info:
>   System: Linux (i686-linux-gnu)
>   CPU: Intel(R) Celeron(R) CPU B815 @ 1.60GHz
>   WORD_SIZE: 32
>   BLAS: libopenblas (NO_LAPACK NO_LAPACKE DYNAMIC_ARCH NO_AFFINITY Nehalem
> )
>   LAPACK: liblapack.so.3
>   LIBM: libopenlibm
>   LLVM: libLLVM-3.3
>
>
> using SymPy
> t, = @syms t
> x, y = symbols("x, y", cls=SymFunction)
> eq = [Eq(diff(x(t),t), 12*t*x(t) + 8*y(t)), Eq(diff(y(t),t), 21*x(t) + 7*t
> *y(t))]
> dsolve(eq)
>
> it returns:
>
> ERROR: `dsolve` has no method matching dsolve(::Array{Sym,1})
>
>
> In the SymPy file math.jl, there is only the following definition for 
> dsolve:
>
> dsolve(ex::Sym, fx::Sym) = sympy_meth(:dsolve, ex, fx)
>
>
>
> How can I extend it in order to solve differential equations systems?
>
> A try can be found in:
>
> https://gist.github.com/Ismael-VC/2f39cd8cf30d19a78349
>
> but it returns a wrong answer.
>

Reply via email to