Aravind,

In sympy.physics.mechanics we have the KanesMethod and LangrangesMethod
classes. For large problems with many degrees of freedom these take a
substantial amount of time to compute. There is a N-link pendulum model in
the PyDy package that can easily show this. See the graph near the bottom
of this post for Symbolic derivation time:

http://www.moorepants.info/blog/pydy-code-gen.html

I would recommend starting by profiling the n-link pendulum code to find
out what core sympy functions take the most time. Once you have an idea of
this you can see whether SymEngine has this functionality. If it doesn't
you can work on adding some of the functionality. Once it has functionality
you can work on demonstrating how to swap out the core sympy routines with
the symengine ones to see what kind of performance gain you can get. You'll
need to work with the SymEngine team on their plan to make wrappers
available for use in SymPy. See the SymEngine mailing list for a discussion
about this topic.

One thing that definitely needs to be sped up is taking the jacobian of
matrices with big expressions. This is required for the linearizion methods
in sympy.physics.mechanics. Ondrej has done some benchmark work on this
topic in SymEngine that you should investigate.



Jason
moorepants.info
+01 530-601-9791

On Thu, Mar 3, 2016 at 5:23 AM, Aravind Reddy <[email protected]>
wrote:

> Hi all,
>
> I am Aravind from IIIT-Hyderabad, India. I am new to open source
> contribution. From last week I have been working the issues of sympy in
> github. I will be applying to GSoC this year from Sympy. I have gone
> through various topics mentioned in the Ideas Page. Out of all I liked 
> Classical
> Mechanics: Efficient Equation of Motion Generation with C++ more. I have
> a very good knowledge of both Python and C++ languages and would love to
> know more if the project demands. Out of both I like C++ more.
>
> As I pointed before, I am new to open source community. Also it is
> mentioned in the ideas page to ask in the group about the previous work
> done on this. So please anyone kindly help me in where and how to start
> and also about the previous work done on SymEngine.
>
> Thank you,
> Aravind
>
> --
> 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 https://groups.google.com/group/sympy.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sympy/b970d644-dc1f-4f6b-b1c9-1fd5dd612f85%40googlegroups.com
> <https://groups.google.com/d/msgid/sympy/b970d644-dc1f-4f6b-b1c9-1fd5dd612f85%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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 https://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAP7f1Ajj0g1BVX%2BNQ_W16nTu6TCx%3DDw6x2qDwesYZBwpSGd9dQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to