Linear and angular spring simulation

Click For Summary

Discussion Overview

The discussion revolves around the simulation of a point mass connected to both a linear and an angular spring in polar coordinates. Participants explore the equations governing the motion, the challenges faced in implementing the simulation, and the correct treatment of forces in polar coordinates.

Discussion Character

  • Exploratory
  • Technical explanation
  • Mathematical reasoning

Main Points Raised

  • One participant describes the initial equations for the linear and angular springs but realizes that the equations are independent, leading to an incorrect simulation where the point mass does not change its distance from the origin.
  • Another participant suggests calculating motion in Cartesian coordinates while still considering forces in polar coordinates, indicating a potential method to resolve the issue.
  • A different participant emphasizes the importance of correctly calculating acceleration components in radial and tangential directions when using polar coordinates, mentioning the appearance of centrifugal and Coriolis forces.
  • One participant shares that they solved the problem using Laplace transforms and offers to provide the equations via email.
  • Another participant reiterates the importance of calculating in polar coordinates and provides a detailed formulation of the equations, which they believe now work correctly.
  • A later reply confirms that the derived equations are correct and explains how centrifugal and Coriolis forces can be incorporated into the equations to consider the system as inertial.

Areas of Agreement / Disagreement

Participants express various approaches to the problem, with some agreeing on the necessity of including centrifugal and Coriolis forces in the equations. However, there is no consensus on a single method or solution, as multiple viewpoints and methods are presented.

Contextual Notes

Participants discuss the limitations of their approaches, including the challenges of using polar coordinates and the need for careful treatment of forces. There is also mention of unresolved mathematical steps in the derivation of the equations.

account
Messages
2
Reaction score
0
Hello,

I am trying to implement a simple simulation of a point mass connected to a linear and to an angular spring. I thought this would be very easy, basically just integrating these two equations:

[tex]mr''=-k_l(r-L)-c_lr'[/tex]
[tex]m\theta''=-k_a(\theta-\alpha)-c_a\theta'[/tex]

These are in polar coordinates [tex](r,\theta)[/tex], where [tex]k_l,c_l,L[/tex] are the stiffness, damping coefficient and rest length of the linear spring and [tex]k_a,c_a,\alpha[/tex] - of the angular spring.

It looks like it works correctly but then I realized that it is wrong. For example, with initial conditions [tex]r'(0)=0,r(0)=L[/tex] the point will never change its distance from the origin no matter what the angular speed is, so there is no centrifugal force... This is obvious in hindsight because the two equations are completely independent.

So now I'm stuck and not really sure what I'm missing here. Any help is appreciated.
 
Physics news on Phys.org
You could calculate motion in Cartesian coordinate system (x,y). You can still calculate the force in polar coordinate system and then transform it to Cartesian.
 
It is also possible to calculate in polar coordinates, but one must correctly calculate
acceleration componets in radial and tangential direction. In this case you start with
position vector (rcos(fi),rsin(fi)), take a second time derivative and then split it into radial and tangential component. Since polar coordinates are not straight, an expression with second time derivative of fi (centrifugal force) also appears in r component of force and an expression with time derivative of r (Coriolis force) appears in fi component of force.
 
I have the answer to this (I think) I solved it using Laplace transforms. It's a loooong answer though, so email me if you want the equations. brian.kernan@gmail.com
 
Lojzek said:
You could calculate motion in Cartesian coordinate system (x,y). You can still calculate the force in polar coordinate system and then transform it to Cartesian.

I prefer to calculate in polar coordinates because there is a problem with calculating [tex]\theta[/tex] only from [tex](x,y)[/tex]. For example if I use [tex]\theta=\mbox{atan2}(y,x)[/tex] then if there is any oscillation outside of [tex][-\pi,\pi][/tex] the angle will wrap around and strange things happen.

Lojzek said:
It is also possible to calculate in polar coordinates, but one must correctly calculate acceleration componets in radial and tangential direction. In this case you start with position vector (rcos(fi),rsin(fi)), take a second time derivative and then split it into radial and tangential component. Since polar coordinates are not straight, an expression with second time derivative of fi (centrifugal force) also appears in r component of force and an expression with time derivative of r (Coriolis force) appears in fi component of force.

Ok, I just tried that. If I understand correctly I should write:

[tex]p=r(\cos \theta,\sin \theta)[/tex]
[tex]\hat{p}=r(-\sin \theta,\cos \theta)[/tex]
[tex]mp''=(-k_l(r-L)-c_lr')\frac{p}{r}+(-k_a(\theta-\alpha)-c_a\theta')\frac{\hat{p}}{r}[/tex]

Solving these for the forces I get the following equations:

[tex]m(r''-r\theta'^2)=-k_l(r-L)-c_lr'[/tex]
[tex]m(r\theta''+2r'\theta')=-k_a(\theta-\alpha)-c_a\theta'[/tex]

I implemented these and it seems to work correctly now. Does this look correct to you?

kernanb said:
I have the answer to this (I think) I solved it using Laplace transforms. It's a loooong answer though, so email me if you want the equations. brian.kernan@gmail.com

I wrote to you about this. I'm waiting for your reply and I will try to summarize it and post it here. Thanks.
 
account said:
Solving these for the forces I get the following equations:

[tex]m(r''-r\theta'^2)=-k_l(r-L)-c_lr'[/tex]
[tex]m(r\theta''+2r'\theta')=-k_a(\theta-\alpha)-c_a\theta'[/tex]
These equations are correct. If would you put [tex]m(-r\theta'^2)[/tex] to the other side of
the first equation, you would get centrifugal force. Similary you can get Coriolis force if you put [tex]m(2r'\theta')[/tex] to the other side of the second equation. These two pseudo forces must be added in a rotating coordinate system (with angular velocity [tex]\theta'[/tex]) if one wants to consider the system to be inertial.
 

Similar threads

  • · Replies 20 ·
Replies
20
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 6 ·
Replies
6
Views
3K
  • · Replies 4 ·
Replies
4
Views
3K
  • · Replies 5 ·
Replies
5
Views
2K
  • · Replies 15 ·
Replies
15
Views
2K
  • · Replies 22 ·
Replies
22
Views
5K
  • · Replies 14 ·
Replies
14
Views
2K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 1 ·
Replies
1
Views
2K