Forced Response with Coulomb Damping
Summary
Students determine and plot the response of a vibrating system under a harmonic excitation force, in the presence of Coulomb Damping. The assignment requires students to solve a 2nd order differential equation numerically using Matlab and illustrates the characteristics of Coulomb damping (e.g. linear decay of the transient response).
Learning Goals
- Visualize the response of a system with Coulomb Damping under harmonic excitation.
- Use Matlab ODE functions to solve a second order, non-linear differential equation.
Context for Use
This is part of a Matlab Grader homework assignment for a summer session Vibrations course taught to 3rd & 4th year undergraduates as well as to graduate students across several engineering disciplines (e.g. Biomedical, Civil, Mechanical).
This problem builds on classroom instruction and prior assignments as outlined below:
- Classroom example of 1st order, undamped system. Example walks through process of parsing a second order ODE into a system of first order ODEs. A sample Matlab script is provided with this system coded as a sub function. The syntax for calling ode45 is explained.
- In an earlier Matlab Grader assignment, students are asked to find and plot the solution for a free pendulum with and without making a small angle approximation, using ode45. They compare the error due to the approximation for increasing initial displacements. The template for this activity has the syntax for the ode45 function call and an outline of the Equation of Motion (EOM) sub function. Students write the EOM as a system of first order equations.
- Classroom example of an unforced system with Coulomb damping, using Matlab ode45 to develop the numerical solution. Key differences between Coulomb and viscous damping are emphasized such as the decay (linear vs. exponential).
- In an exam problem, students solve a problem involving Coulomb damping. They can solve this numerically or analytically.
Having been introduced to these examples for unforced vibration, students are now prepared to solve a forced excitation problem. They should also be prepared to write a script with less guidance in the template.
Typical time to complete is 30 minutes. The assignment is designed for students with advanced math skills, but who may have minimal experience Matlab. Matlab Grader allows for an instructor-designed Learner Template to help with syntax so students can focus on disciplinary concepts.
Description and Teaching Materials
Problem Statement from Matlab:
Grader Matlab Grader Template for student work:
Teaching Notes and Tips
The template is designed to have students with limited Matlab expertise focus on the skills of interest which include (1) settings up the equation of motion, (2) writing the equation as two first order ODEs, and (3) making a correct function call to the solver, ode45. Other competencies such as creating the plot and mining the response at specific values are not needed since these actions are accomplished by the template.
A few other features help guide students:
1. The template is well commented to guide students where they need to add or change lines of code.
2. The template runs with no errors without changes. This is important as it allows students to add and check their code incrementally. Dummy lines are used to make this possible, with clear comments as in line 20:
y=ones(length(t),2); %% Replace this line with a ode45 function call.
Assessment
This assignment is formative, so students are given unlimited attempts to come up with the correct solution as verified by correct position and velocity at key points. The solution was also required to include a call to ode45.