You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 29 Next »

Unable to render {include} The included page could not be found.
Unable to render {include} The included page could not be found.


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:

Unknown macro: {latex}

[
m \ddot

Unknown macro: {x}

+ k x =0
]

The initial conditions at t=0 are

Unknown macro: {latex}

[
x(0)=1,
]

and

Unknown macro: {latex}

[
v(0)=\dot

Unknown macro: {x}

̇(0)=0
]

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

  • No labels