# A Uncertainty Propagation in Coupled Oscillator

Tags:
1. Feb 22, 2017

### HermitianField

I am a senior physics and mathematics major, and this is my last semester. As a result, I am taking advanced physics lab, which feels more like a grad school experiment than an undergrad. One of the labs deals with the modal analysis of three spring-mass systems placed vertically as shown in the picture. The masses and spring constants are similar.

I first measure the spring constant for each spring. I then take the mean of their values and uncertainties to have one spring constant. Thus, I get something of the form \bar{k} \pm \bar{\sigma}. By using kinematics and Newton's second law, I can use the eigenvalue problem to write everything down more conveniently such that we have:

\begin{pmatrix}
\frac{-k_{1}-k_{2}}{m_{1}} & \frac{k_{2}}{m_{1}} & 0 \\
\frac{k_{2}}{m_{2}} & \frac{-k_{2}-k_{3}}{m_{2}} & \frac{k_{3}}{m_{2}} \\
0 & \frac{k_{3}}{m_{3}} & \frac{-k_{3}}{m_{3}}
\end{pmatrix}
\begin{pmatrix}
x_{1} \\ x_{2} \\ x_{3}
\end{pmatrix}
= - \omega^{2}\begin{pmatrix}
x_{1} \\ x_{2} \\ x_{3}
\end{pmatrix}

I then set all k values and their uncertainties to \bar{k} \pm \bar{\sigma}.

My main problem is doing the error propagation for the matrix since I also have an uncertainty to deal with. Clearly, I must end up with three different eigenvalues/eigenfrequencies that have a value and an uncertainty, but I don't know how to do the error propagation at all. I am stuck badly and, while I have two weeks to turn in my report, I would like to have all the error propagation finished ASAP.

2. Feb 22, 2017

### jfizzix

If you know how to solve the eigenvalue equation, you can get formulas for the eigenfrequencies as a function of the spring constants. Then, you can use ordinary error propagation to obtain the uncertainties of the eigenfrequencies in terms of the values and uncertainties of the spring constants. For example:

Where
$\omega_{1}=\omega_{1}(k_{1},k_{2},k_{3})$,
propagation of uncertainty gives us:
$\sigma^{2}(\omega_{1})=\Big(\frac{\partial \omega_{1}}{\partial k_{1}}\Big)^{2}\sigma^{2}(k_{1}) + \Big(\frac{\partial \omega_{1}}{\partial k_{2}}\Big)^{2}\sigma^{2}(k_{2}) + \Big(\frac{\partial \omega_{1}}{\partial k_{3}}\Big)^{2}\sigma^{2}(k_{3})$
Note that the partial derivatives are evaluated at the respective mean values of $(k_{1},k_{2},k_{3})$.

Once this calculation is done, you can let $k_{1}=k_{2}=k_{3}=\bar{k}$ and let $\sigma(k_{1})=\sigma(k_{2})=\sigma(k_{3})=\sigma$ to simplify your final result.

3. Feb 22, 2017

### HermitianField

So you are saying that $$\omega _{1}(k_{1}, k_{2}, k_{3}) = \sqrt{\frac{k_{1}}{m}} + \sqrt{\frac{k_{2}}{m}} + \sqrt{\frac{k_{3}}{m}}$$, right? Again, I assume that $$m_{1} = m_{2} = m_{3} = m$$. I also solved for the eigenvalue problem through MatLab, so I think your formula works only if I solve the eigenvalue problem analytically as opposed to numerically.
If that is true, then what is $$\omega_{2}$$ and $$\omega_{3}$$ ?

Last edited: Feb 22, 2017
4. Feb 22, 2017

### jfizzix

To find formulas for $\omega_{1}, \omega_{2}, \omega_{3}$, you have to solve the eigenvalue equation given by the matrix in your first post. There should be 3 solutions to the equation (though some may be identical). Since this is a homework problem, I can't do that for you, but I can point out that you may have made a typo in your matrix, since it needs to be symmetric (i.e., equal to its own transpose).

Last edited: Feb 22, 2017
5. Feb 22, 2017

### HermitianField

By setting all masses equal to each other, the matrix is symmetric, which is what I did.

6. Feb 23, 2017

### HermitianField

I found $\omega_{1}, \omega_{2}, \omega_{3}$ through a nifty WolframAlpha widget. I set x=k1, y=k2, and z=k3. As you can see from the equation of just one eigenvalue, I don't think that is easily differentiated. Is this the only correct way to do uncertainty propagation? If yes, what software can I use to derive these nasty eigenvalue equations?

7. Feb 23, 2017

### jfizzix

If you're just looking to estimate the uncertainty, and you have experimental values for $(k_1,k_2,k_3)$ and for their uncertainties, you can plug in the 8 combinations of values $(k_1\pm \sigma_1,k_2\pm\sigma_2,k_3\pm\sigma_3)$ into $\omega_1(k_1,k_2,k_3)$ and see what range of values $\omega_{1}$ takes to estimate its uncertainty.

To do standard error propagation of a function of this complexity, I would use wolfram mathematica, though it's not as difficult to derive as it looks (it's just polynomials, roots, and quotients). It's just a lot to keep track of.

8. Feb 24, 2017

### HermitianField

I was initially thinking of "brute forcing" my experimental values for $(k_{1},k_{2},k_{3})$ as you said. It really does seem like a sufficiently good approximation for the uncertainty. However, I want to be as formal as possible with everything, especially error propagation. It may be the last physics class that I will take, at least for a while. That is why I might just as well show my professors that I truly care about my capstone physics course and give my best shot. Thank you!

9. Feb 26, 2017

### HermitianField

One last thing. Since some of the eigenvalues have complex parts, should I just take the real part of the function $Re(\omega_{2})$ and proceed with the usual standard error propagation?

10. Feb 26, 2017

### jfizzix

Since the initial matrix is symmetric and real valued, your eigenvalues should be entirely real as well. This is a fundamental property of such matrices, so I would check your calculations if you're getting nonzero values for the imaginary part of the eigenvalues.