Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Include Page
MATLAB Google Analytics
MATLAB Google Analytics
Include Page
Spring-Mass System - Panel
Spring-Mass System - Panel


Note

If you get a "LaTex markup" error on this page, please reload the page to see the equations that use the Latex markup.


If you have never used MATLAB before, we recommend watching some of these videos from The MathWorks , in particular the Getting Started video. . You can go through the videos either before or after completing this tutorial.

Spring-Mass Harmonic Oscillator in MATLAB

Created using MATLAB R2013a

Problem Specification

Consider a spring-mass system shown in the figure below.





Applying F = ma in the x-direction, we get the following differential equation for the location x(t) of the center of the mass:

Wiki Markup
{latex}
\[
m \ddot{x} + k x =0
\]
{latex}

The initial conditions at t=0 are

Wiki Markup
{latex}
\[
x(0)=1,
\]
{latex}
and

Wiki Markup
{latex}
\[
v(0)=\dot{x} ̇(0)=0
\]
{latex}

The first condition above specifies the initial location x(0) and the second condition, the initial velocity v(0).


We’ll solve this differential equation numerically, i.e. integrate it in time starting from the initial conditions at t=0, using MATLAB. We’ll use Euler's method to perform the numerical integration. Some other topics covered in this tutorial are:

  • Making a plot of mass position vs. time and comparing it to the analytical solution
  • Separating out the Euler's method in a MATLAB "function"
  • Collecting multiple parameters in one box using "structures"

In the process, you'll be exposed to the following handy MATLAB utilities:

  • Debugger to understand and step through code
  • Code analyzer to check code
  • Profiler to time code


Go to Step 1: Euler Integration

Go to all MATLAB Learning Modules