Classical Mechanics : Forces and Torques

258 views
Skip to first unread message

praneeth ratna

unread,
Mar 17, 2022, 2:59:04 PM3/17/22
to sympy
Hey!

While going through the GSOC 2022 ideas I have come across the idea of Implementing Specific Forces and Torque objects which i found interesting. There are many possible examples mentioned by Jason K. Moore. And I'm able to find a resource for contact force models : https://www.researchgate.net/publication/299604992_Contact_Force_Models_for_Multibody_Dynamics which i found useful. Are there any resources for the examples mentioned in issue which can helpful for understanding the implementation of concept other than contact force models?

I'm thinking of adding different classes for different type of force models and torques and that can be used to create a force object or torque object of that type also numerical methods can be added to individual classes.

I would request Jason K. Moore to guide me on how to move forward in this project, regarding the implementation and about what all kinds of forces and torques should be implemented so that i can start working on my proposal.

Thanks, 
Praneeth 


praneeth ratna

unread,
Mar 23, 2022, 12:31:37 AM3/23/22
to sympy
Hi all,

I have already posted regarding my interest in the idea Implementing Specific Forces and Torque objects but have not recieved any reply yet,Could the potential mentor please guide me on what has to be done in this project and some resources, so that I can start working on my proposal since there isn't much time left.

Thanks, 
Praneeth

Jason Moore

unread,
Mar 25, 2022, 4:01:17 AM3/25/22
to sympy
Hi Praneeth,

I recommend looking at force types in various physics engines to get ideas. The rest would really come from academic papers and text books.

Jason

--
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+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/f010d4bf-5986-4ac2-946f-0d306697a36cn%40googlegroups.com.

Peter Stahlecker

unread,
Mar 25, 2022, 4:59:43 AM3/25/22
to sy...@googlegroups.com
Stupid question from me:
I thought a force was a force and a torque was a torque.
Are there differentforces?

--
Best regards,

Peter Stahlecker

praneeth ratna

unread,
Mar 25, 2022, 6:13:02 AM3/25/22
to sympy
Hi Jason,

Thanks for the reply,

I have searched for physics engines which have implemented forces and torques but could not find one. Could you suggest any physics engines which has forces implemented so that i can get an idea regarding the implementation?

Thanks,
Praneeth

Jason Moore

unread,
Mar 25, 2022, 6:15:55 AM3/25/22
to sympy
Praneeth,

Checking out examples in pydy, sympy, and my various courses (MAE 223, ENG122, ME41055) are also good locations.


Jason

Jason Moore

unread,
Mar 25, 2022, 6:19:26 AM3/25/22
to sympy
Peter,

Yes a force is a force and a torque is a torque, but there are specific mathematical descriptions of specific forces and torques. For example, what is the mathematical (analytic and computational) representation of two forces that contact each other. There are many models of contact forces and if we provide popular implementations in sympy mechanics, then it will save users time on defining these from scratch (which can be very tedious). Newton's law of gravitation is another simple force that we could encode or even a simple spring (or a complex nonlinear spring).

Jason

Peter Stahlecker

unread,
Mar 25, 2022, 6:25:02 AM3/25/22
to sy...@googlegroups.com
Dear Jason,

Thanks!
If I understood correctly, this refers to, how forces may be ‚created‘, such as e.g. by gravitation, or by friction or by an electric field or…..

NB: 
I tried a nonlinear spring one time in one of my play programs.
‚Kane‘ worked fine, but numeric integration was a mess….
Peter

praneeth ratna

unread,
Mar 26, 2022, 2:29:10 AM3/26/22
to sympy
Hi jason,

I have gone through the examples of pydy and your courses that you have mentioned. For example: Here https://pydy.readthedocs.io/en/stable/examples/mass-spring-damper.html, the plan is to implement the same thing in a class so that user can call the linear spring damper object whenever it is required and use numerical methods that can operate on force objects, is it the right thing? Also is there any priority for forces that should be implemented first since there many kinds of forces to be implemented.

Thanks,
Praneeth

Jason Moore

unread,
Mar 26, 2022, 3:38:09 AM3/26/22
to sympy
Praneeth,

Yes we should have a linear spring and damper force that is premade, but that is really just a trivial case. The GSoC project should be focused primarily on adding non-trivial forces.

Jason

praneeth ratna

unread,
Mar 28, 2022, 6:52:26 AM3/28/22
to sympy
Hi jason,

I have at present written down the following models:
  1. Linear hooke contact model
  2. Non linear hertz model
  3. Linear Kelvin-Voigt Contact Model
  4. Nonlinear Hunt and Crossley Contact Model
  5. Nonlinear Hunt and Crossley Contact Model
  6. Nonlinear Flores et al. Contact Model
  7. multi_mass_spring_damper()
  8. n_link_pendulum_on_cart()
7 and 8 are taken from pydy, are they non trivial cases? Also could you suggest any resources for muscle force, actuator force and aerodynamic force models which are useful for the user?

Thanks,
Praneeth

praneeth ratna

unread,
Apr 4, 2022, 2:08:48 AM4/4/22
to sympy
Jason,

Regarding the implementation, do you suggest similar to pydy engine? So we also need to  create a System class similar to the one pydy has? Also could you suggest any sources for some trivial cases of muscle force, actuator force and aerodynamic force models, could you provide feedback on whether the model specified in my previous mail are useful or not, so that i can include them in my proposal.

Thanks,
Praneeth

praneeth ratna

unread,
Apr 5, 2022, 9:48:26 AM4/5/22
to sympy
Hi jason,

Could you please provide your feedback on my previous two emails, So that I can start writing my proposal and since there isn't much time left for proposal deadline.

Thanks,
Praneeth

Jason Moore

unread,
Apr 6, 2022, 4:39:17 AM4/6/22
to sympy
Praneeth,

We volunteer our time and will reply when and if we can.

Your list of forces looks interesting and useful. I recommend reading the force related sections of Kane & Levinson 1985, as those would be obvious places to take forces ideas from. I'm currently writing a force chapter in my book that has some examples (these are still in draft form and likely incorrect): https://github.com/moorepants/learn-multibody-dynamics/pull/57

There should be no need for a system or anything from pydy. We need valid mathematical descriptions of a variety of common forces that will work nicely with our code generators for efficient numerical implementations.

Jason

praneeth ratna

unread,
Apr 9, 2022, 5:14:50 AM4/9/22
to sympy
Jason,

Thanks for the reply,

I have started writing my proposal, But have some queries regarding the implementation.
I have created a new submodule forces.py in sympy.mechanics module and create force definitons in forces.py. I have included code for one of the model here:
def linear_hooke_contact_model(stiffness, penetration):
    stiffness = sm.sympify(stiffness)
    penetration = sm.sympify(penetration)
    force = stiffness * penetration
    return [force]

Is this the write way of creating the force models, or do we need to create classes for individual force model? Please correct me here if I'm wrong

Thanks, 
Praneeth

praneeth ratna

unread,
Apr 11, 2022, 1:21:13 AM4/11/22
to sympy
Jason,

I'm sorry for mailing again but I am not yet sure of the implementation - 'We need valid mathematical descriptions of a variety of common forces that will work nicely with our code generators for efficient numerical implementations'. I do not have a clear understanding of how force should be implemented as mentioned by you, could you please help me out here?

Thanks,
Praneeth

praneeth ratna

unread,
Apr 15, 2022, 11:17:20 AM4/15/22
to sympy
Hi Jason,

I have made a draft of my proposal https://docs.google.com/document/d/13hmPNM2JdEhnMhctH5hsbuTOnA0916WUvrFOzvb98ig/edit?pli=1, Most of examples were added from here:   https://github.com/moorepants/learn-multibody-dynamics/pull/57, could you please provide your feedback on my proposal since there is only 4 days left for deadline.

Thanks,
Praneeth

Reply all
Reply to author
Forward
0 new messages