Peter, I opened this issue: https://github.com/sympy/sympy/issues/23075
Jason moorepants.info +01 530-601-9791 On Mon, Feb 14, 2022 at 7:28 PM Jason Moore <[email protected]> wrote: > Peter, > > If orient_body_fixed produces longer equations of motion than chaining > orient_axis (or the older orient() and orientnew()), then we should figure > out what the problem is with orient_body_fixed. orient_body_fixed should > produce shorter equations of motion because the angular velocities are > supposed to be in the simplest form. > > Jason > moorepants.info > +01 530-601-9791 > > > On Mon, Feb 14, 2022 at 6:41 PM Peter Stahlecker < > [email protected]> wrote: > >> Dear Jason, >> >> As to the speed of the new terms, I simply tried it, using the equations >> of motion of a one body pendulum. >> There is no difference to the older terms: >> >> with the *body* version the the rhs has 863, 824 operations. >> with the axis version, 2 intermediate frames, the rhs has 43,722 >> operations. >> >> The operations count was *exactly* the same with older and newer terms. >> >> Take care, Peter >> >> On Mon 14. Feb 2022 at 18:04 Peter Stahlecker <[email protected]> >> wrote: >> >>> Dear Jason, >>> >>> Just read you latest addition about vectors and reference frames. >>> Small question: >>> In order to rotate a frame relative to another one, you use these terms >>> *A.orient_axis(N, ..)* >>> *A.orient_body_fixed(N, …)* >>> >>> I assume, these are the new versions for >>> A.orientnew(N, ‚Axis‘, …) >>> A.orientnew(N, ‚Body, …) >>> >>> You might recall, that I ‚empirically‘ found that the *Body* version >>> created much larger equations of motion compared to using ‚intermediate ‚ >>> *Axis*‘ versions. >>> >>> Is it better to use *orient_body_fixed,* to avoid this issue of larger >>> equations of motion? >>> >>> Thanks & take care! >>> Peter >>> >>> >>> >>> On Sun 6. Feb 2022 at 08:19 Peter Stahlecker <[email protected]> >>> wrote: >>> >>>> Dear Jason, >>>> >>>> Thanks a lot for your explanation! Clear! >>>> I checked on metaclasses, but I must admit I mostly understood, that a >>>> simple user like me should not mess with them! :-)) >>>> >>>> Peter >>>> >>>> On Sun 6. Feb 2022 at 07:49 Jason Moore <[email protected]> wrote: >>>> >>>>> Peter, >>>>> >>>>> All `dynamicsymbols` is, is: >>>>> >>>>> f = Function('f') >>>>> t = symbols('t') >>>>> f_of_t = f(t) >>>>> >>>>> The last line `f(t)` is generating a new class of type f, instead of >>>>> using a predefined class (look up metaclasses). So the user, typically not >>>>> aware of this element in Python, is confused about what they are working >>>>> with in the last line. It is just the way SymPy Function works. There are >>>>> open issues about trying to change it to something more sensible for the >>>>> user to understand. >>>>> >>>>> Jason >>>>> moorepants.info >>>>> +01 530-601-9791 >>>>> >>>>> >>>>> On Sun, Feb 6, 2022 at 7:39 AM Peter Stahlecker < >>>>> [email protected]> wrote: >>>>> >>>>>> My question is more for my ‚general education‘ in sympy. >>>>>> >>>>>> I write this little program >>>>>> >>>>>> *from sympy.physics.mechanics import ** >>>>>> *import sympy as sm* >>>>>> *a = dynamicsymbols(‚a‘)* >>>>>> *b = sm.symbols(‚b‘)* >>>>>> >>>>>> *print(‚type of a:‘, type(a))* >>>>>> *print(‚type of b:‘, type(b))* >>>>>> >>>>>> I get this result: >>>>>> >>>>>> *type of a: a* >>>>>> *type of b: class sympy.core.symbols.Symbols* >>>>>> >>>>>> Is seems that *a* does not have a type. How can that be? I thought >>>>>> in python ‚everything‘ has a type. >>>>>> >>>>>> Thanks! >>>>>> Any explanation is highly appreciated! >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> 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 view this discussion on the web visit >>>>>> https://groups.google.com/d/msgid/sympy/5db2836e-44a8-428f-8b82-c56b2b2b5b20n%40googlegroups.com >>>>>> <https://groups.google.com/d/msgid/sympy/5db2836e-44a8-428f-8b82-c56b2b2b5b20n%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>>> . >>>>>> >>>>> -- >>>>> 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 view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/sympy/CAP7f1Ajkjs%3DNhJOhrFXmEpLJ6nv0TM9FgHXg%3DS1kSCF-6Cw5zw%40mail.gmail.com >>>>> <https://groups.google.com/d/msgid/sympy/CAP7f1Ajkjs%3DNhJOhrFXmEpLJ6nv0TM9FgHXg%3DS1kSCF-6Cw5zw%40mail.gmail.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> >>>> -- >>>> Best regards, >>>> >>>> Peter Stahlecker >>>> >>> -- >>> Best regards, >>> >>> Peter Stahlecker >>> >> -- >> Best regards, >> >> Peter Stahlecker >> >> -- >> 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 view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/CABKqA0YLxUq3drDz4Zz5rM_bsE9nhLtf8onVhG_86eXxrAhL0w%40mail.gmail.com >> <https://groups.google.com/d/msgid/sympy/CABKqA0YLxUq3drDz4Zz5rM_bsE9nhLtf8onVhG_86eXxrAhL0w%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAP7f1AjK2YD1r6KYonxNG3FRZMO-q-2qViGkLUef9hD9%3DEeKCw%40mail.gmail.com.
