MATLAB Programming for Biomedical Engineers and Scientists provides an easy-to-learn introduction to the fundamentals of computer programming in MATLAB. This book explains the principles of good programming practice, while demonstrating how to write efficient and robust code that analyzes and visualizes biomedical data. Aimed at the biomedical engineer, biomedical scientist, and medical researcher with little or no computer programming experience, it is an excellent resource for learning the principles and practice of computer programming using MATLAB.
This book enables the reader to:
- Analyze problems and apply structured design methods to produce elegant, efficient and well-structured program designs
- Implement a structured program design in MATLAB, making good use of incremental development approaches
- Write code that makes good use of MATLAB programming features, including control structures, functions and advanced data types
- Write MATLAB code to read in medical data from files and write data to files
- Write MATLAB code that is efficient and robust to errors in input data
- Write MATLAB code to analyze and visualize medical data, including imaging data
Key Features
- Many real world biomedical problems and data show the practical application of programming concepts
- Two whole chapters dedicated to the practicalities of designing and implementing more complex programs
- An accompanying website containing freely available data and source code for the practical code examples, activities, and exercises in the book
- For instructors, there are extra teaching materials including a complete set of slides, notes for a course based on the book, and course work suggestions
1. Introduction to Computer Programming and MatLab
- Introduction
- The MatLab Environment
- Help
- Variables, Arrays and Simple Operations
- Data Types
- Loading and Saving Data
- Visualising Data
- Matrices
- MatLab Scripts
- Comments
- Debugging
- Summary
- Assessment Exercises
- Control Structures
- Introduction
- if Statements
- Comparison/Logical Operators
- switch Statements
- for Loops
- while Loops
- break and continue
- Nesting Control Structures
- Summary
- Assessment Exercises
- Functions
- Introduction
- Functions
- Checking for Errors
- Function m-files and script m-files
- M-files and the MatLab Search Path
- Naming Rules
- Scope of Variables
- Recursion: A function calling itself
- Summary
- Assessment Exercises
- Program Development and Testing
- Introduction
- Incremental Development
- Are we Finished? Validating User Input
- Debugging a Function
- Common Reasons for Errors when Running a Script or a Function
- Error Handling
- Summary
- Assessment Exercises
- Data Types
- Introduction
- Numeric Types
- Characters and Strings
- Identifying the Type of a Variable
- The Boolean Data Type
- Matrices
- Cell Arrays
- Converting Between Types
- Advanced Data Types
- Summary
- Assessment Exercises
- File Input/Output
- Introduction
- Recap on Basic Input/Output Functions
- Simple Functions for Dealing with Text Files
- Reading from Files
- Writing to Files
- Summary
- Assessment Exercises
- Program Design
- Introduction
- Top-Down Design
- Incremental Development and Test Stubs
- Bottom-Up Design
- A Combined Approach
- Summary
- Assessment Exercises
- Visualisation
- Introduction
- Visualisation
- Visualising Multiple Datasets
- 3-D Plotting
- The meshgrid Command
- Imaging Data
- Summary
- Assessment Exercises
- Code Efficiency
- Introduction
- Time and Memory Efficiency
- Tips for Improving Time Efficiency
- Recursive and Dynamic Programming
- Dynamic Programming to Improve Performance
- Summary
- Assessment Exercises
- Images and Image Processing
- Introduction
- Images on a Computer
- Accessing Images in MatLab
- Image Processing
- Summary
- Assessment Exercises
- Developing Graphical User Interfaces
- Building a GUI with the Guide Tool
- Controlling Components: Callback Functions and Events
- Maintaining State
- Summary
- Assessment Exercises
- Attaway, MATLAB, 3e: A Practical Introduction to Programming and Problem Solving, 2013, 9780124058767, $54.95
- Hahn, Essential MATLAB for Engineers and Scientists, 5e, 9780123943989, $49.95
- Wallisch, MATLAB for Neuroscientists, 2e, AP, 9780123838360, $89.95
- Exercise_Materials
- Student_Materials
- Teaching_Materials
Biomedical engineers, biomedical scientists and medical researchers learning to program in MATLAB and using it to analyze and visualize biomedical data