Thanks Jason. Those links helped. I guess if the module is not intended for simpler problems then that makes sense. I would say though that the documentation could benefit from more of a tutorial somewhere.
I'll try to use it for a real problem at some point and then see what I think... -- Oscar On Tue, 14 May 2019 at 18:32, Jason Moore <moorepa...@gmail.com> wrote: > > Oscar, > > Also a specific answer to: > > > Suppose that I want to think about a simple 2D problem with a disc > rolling down a surface inclined at angle beta with (Coulomb) friction > coefficient mu. I want to know when/whether the disc will stick or > slip and get the equations of motion for each case. How would I go > about doing that using the mechanics module? > > This is way too simple of a problem to really use the mechanics module for. > If I were teaching this I would just use the base sympy features to do the > math. The mechanics module is not really geared towards things you find in > introductory mechanics in physics and dynamics courses. It is geared toward > dynamics of multibodies, 2D and 3D. Most schools teach this at the graduate > level or some advanced upper level courses in engineering and physics. > > I have another package called "resonance" that is aligned more for 2D > dynamics and simulation. I do teach the students to derive equations of > motion symbolically with sympy and use the resonance interface to do the > simulation and analysis. This is here: > https://github.com/moorepants/resonance/ > > Jason > moorepants.info > +01 530-601-9791 > > > On Tue, May 14, 2019 at 8:59 AM Jason Moore <moorepa...@gmail.com> wrote: >> >> Oscar, >> >> There are some rolling disc examples here: >> https://github.com/pydy/pydy/tree/master/examples Note that the PyDy project >> started as an independent thing build on top of SymPy, then the symbolics >> were merged into sympy as the mechanic module and the numerics are now in >> the standalone PyDy package. >> >> Also, I teach an entire graduate class using the module that include 20+ >> lecture videos and accompanying notebooks: >> https://moorepants.github.io/mae223/ >> >> There are also several scipy/pycon tutorials on the package: >> >> http://www.moorepants.info/portfolio/pydy.html >> >> The module may be complicated, but that may just reflect that 3D multibody >> rigid body mechanics is complicated. We've worked on some layers on top of >> the core code that have been merged or are in open PRs to help provide >> simpler interfaces that give a way to "assemble" bodies as you would in >> reality (with joints, etc) but it is still not polished for production. I >> could imagine a layer that makes it simpler to do 2D mechanics too, among >> other things. >> >> I'll be working on things this summer because I am teaching the >> aforementioned course in the fall. Feel free to open issues for discussion >> on improvements. >> >> Jason >> moorepants.info >> +01 530-601-9791 >> >> >> On Mon, May 13, 2019 at 1:42 PM Oscar Benjamin <oscar.j.benja...@gmail.com> >> wrote: >>> >>> Hi all, >>> >>> I haven't really looked much at SymPy's mechanics module even though >>> mechanics is very much one of my interests and something that I like >>> to think I know a bit about. Today I finally took a look at it and I >>> found the whole API surprisingly complicated. I teach mechanics to >>> undergraduate students but I'm not sure if I would know how to teach >>> my students to use the mechanics module as it is now... >>> >>> Firstly I looked through the documentation here: >>> https://docs.sympy.org/latest/modules/physics/mechanics/index.html >>> Is there any other guide/documentation that explains the general ideas >>> more simply with examples? >>> >>> Suppose that I want to think about a simple 2D problem with a disc >>> rolling down a surface inclined at angle beta with (Coulomb) friction >>> coefficient mu. I want to know when/whether the disc will stick or >>> slip and get the equations of motion for each case. How would I go >>> about doing that using the mechanics module? >>> >>> -- >>> Oscar >>> >>> -- >>> 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 sympy+unsubscr...@googlegroups.com. >>> To post to this group, send email to sympy@googlegroups.com. >>> 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/CAHVvXxQXtAd_HGwTqaKrpDqQC_mNcyZAFgPrVe8Sq_hPwT6H0w%40mail.gmail.com. >>> 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 sympy+unsubscr...@googlegroups.com. > To post to this group, send email to sympy@googlegroups.com. > 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/CAP7f1AgY%3Dcq3q9DCAYk_0-4qV8rhoVZTTJp7WJku8A%2BX2%3Df_Mg%40mail.gmail.com. > 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 sympy+unsubscr...@googlegroups.com. To post to this group, send email to sympy@googlegroups.com. 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/CAHVvXxRNKSrrgeMxJjh5M6BtQEU%2BQNaOzyAEXAokJYZESxy9ig%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.