Finding Coefficients for Coupled Harmonic Oscillator

Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
5 replies · 6K views
mrandersdk
Messages
243
Reaction score
1
I've been looking at a coupled harmonic oscillator, and normal modes of this:

http://en.wikipedia.org/wiki/Normal_mode#Example_.E2.80.94_normal_modes_of_coupled_oscillators

At the bottom of this example it says:

This corresponds to the masses moving in the opposite directions, while the center of mass remains stationary. The general solution is a superposition of the normal modes where c1, c2, φ1, and φ2, are determined by the initial conditions of the problem.

What is the best way to determine these coefficients, given some initial conditions (start position and velocity)?

This is only for two masses, but the method should also work for n equal masses. It is fine if I need to program me out of it, but how should i do this?
 
Physics news on Phys.org
According to that website, the equatios are:

x1(t) = c1*cos(w1*t+phi1)+c2*cos(w2*t+phi2)
x2(t) = c1*cos(w1*t+phi1)-c2*cos(w2*t+phi2)

Taking the derivative, you get 2 more equations

v1(t) = -c1*w1*sin(w1*t+phi1)-c2*w2*sin(w2*t+phi2)
v2(t) = -c1*w1*sin(w1*t+phi1)+c2*w2*sin(w2*t+phi2)

If your initial conditions are:

x0_1 = x1(t=0)
x0_2 = x2(t=0)
v0_1 = v1(t=0)
v0_2 = v2(t=0)

then your equations become:

x0_1 = c1*cos(phi1)+c2*cos(phi2)
x0_2 = c1*cos(phi1)-c2*cos(phi2)
v0_1 = -c1*w1*sin(phi1)-c2*w2*sin(phi2)
v0_2 = -c1*w1*sin(phi1)+c2*w2*sin(phi2)

Now you have 4 equations and 4 unknowns and can solve the coefficients.
 
Last edited:
Actually, to solve this you need more variables and more equations. Instead of phi1 and phi2, use these:

sp1 = sin(phi1)
cp1 = cos(phi1)
sp2 = sin(phi2)
cp2 = cos(phi2)

Adding 2 new equations, you now have these 6 equations:

x0_1 = c1*cp1+c2*cp2
x0_2 = c1*cp1-c2*cp2
v0_1 = -c1*w1*sp1-c2*w2*sp2
v0_2 = -c1*w1*sp1+c2*w2*sp2
sp1^2+cp1^2 = 1
sp2^2+cp2^2 = 1

Once you've solved sp1,cp1,sp2, and cp2:

phi1 = atan2(sp1,cp1)
phi2 = atan2(sp2,cp2)
 
maybe I was a bit unclear, i know how to set up the equations, but what algorithm should i use to find the coefficients, especially when i need to scale it to n equal masses.
 
I would use http://en.wikipedia.org/wiki/Lagrangian_mechanics" . It's basically an energy method approach to solving equations of motion for systems with multiple degrees of freedom much more quickly than using Newtonian mechanics. There are examples at the link above.
 
Last edited by a moderator:
ok thanks. I know lagrangian mechanics, but need to solve it with Newtonian mechanics, because i need to explain it to someone who doesn't know it.

I've wrote the complex solution as the real and imaginary part and then i could solve it. Thanks for all your sugestions.