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

Compare with Current View Page History

« Previous Version 20 Next »

Error formatting macro: include: java.lang.IllegalArgumentException: No link could be created for 'SIMULATION:(Tutorial Name) - Panel'.


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

Spring-Mass Harmonic Oscillator in MATLAB

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