I teach undergraduate and graduate courses in control systems. On occasion I have also taught introductory programming, mechanical design, acoustics and dynamics. Below are links to class notes, homework exercises, and old exams.

Creative Commons License
This work is licensed under a Creative Commons License.

Feedback and Dynamic Systems, ME 132: This is a junior-level elective course, introducing the fundamental concepts of feedback systems. The prerequisites are calculus, linear algebra and differential equations, and introductory physics.

Multivariable Control Systems, ME 234: This is a graduate level course focused on control of multi-input, multi-output processes. Emphasis is on how uncertainty drives all aspects of feedback design. The prerequisites are ME190L, ME 190Y, E231, ME232 (or equivalent)

ME 190L, Practical Control System Design: A Systematic Loopshaping approach, McFarlane/Glover loopshaping design methodology, for undergrads who have ME 132 (or similar) prerequisite. Course Description (pdf).

ME 190Y, Practical Control System Design: A Systematic Optimization approach, Youla-parametrization and convex optimization-based feedback design for undergrads who have ME 132 (or similar) prerequisite. Course Description (pdf).

Introduction to Computer Programming for Scientists and Engineers, E 77: (from course catalog) Elements of procedural and object-oriented programming. Induction, iteration, and recursion. Real functions and floating-point computations for engineering analysis. Introduction to data structures. Representative examples are drawn from mathematics, science, and engineering. The course uses the MATLAB programming language.

Advanced Programming with Matlab, E 177: This is a junior-level elective course, following E77. We review the syntax of Matlab, introduce object oriented programming, graphical user interfaces, Simulink, C programming and interfacing to Matlab, Java programming and interfacing to Matlab.

Mathematical Methods in Engineering, E231: This is a first-year grad course covering linear algebra, probability, random variables and processes, and optimization. If you are taking ME232, you must take E231 concurrently (although ME232 need not be taken with E231). Implicitly, E231 is a prerequisite to all graduate control courses (ME232, ME233, ME234, ME237, ME290N, ME290P).

I have also taught: E76, ME 102B, ME 104, ME 107A, ME 134, ME 173, and will place material for these as soon as I can.



Crash Course on Feedback. We gave a short (2 hour) lecture introducing the basic ideas of feedback systems to graduate students in astronomy and integrative biology. These are the slides.


Research | Students | Instruction | Tutorials | BCCI | Biography