The example filter implementation listed in Fig.1.3 was written in the C programming language so that all computational details would be fully specified. However, it is relatively rare these days to write such low-level software for signal processing. Higher level languages such as matlab make it possible to write powerful programs much faster and more reliably. Even in embedded applications, for which assembly language is typically required, it is usually best to develop and debug the system in matlab beforehand.
The Matlab (R) product by The Mathworks, Inc., is far and away the richest implementation of the matlab language. However, it is very expensive for non-students, so you may at some point want to consider the free, open-source alternative called Octave. All examples in this chapter will work in either Matlab or Octave,3.1except that some plot-related commands may need to be modified. The term matlab (not capitalized) will refer henceforth to either Matlab or Octave, or any other compatible implementation of the matlab language.3.2
This chapter provides four matlab programming examples to complement the mathematical analysis of §1.3:
Note: The reader is expected to know (at least some) matlab before proceeding. See, for example, the Getting Started Manual, or just forge ahead and use the examples below to start learning matlab (it is very readable, as computer languages go). To skip over the matlab examples for now, proceed to Chapter 3.