YoVDO

MATLAB Programming Techniques

Offered By: MathWorks via MATLAB Academy

Tags

MATLAB Courses Version Control Courses Application Development Courses Data Manipulation Courses Code Optimization Courses

Course Description

Overview

  • Introduction: Overview of the content covered.
  • Structuring Data: Explore choices for storing data within a MATLAB application
  • Manipulating Heterogeneous Data: Manipulate data in tables, cell arrays, and structure arrays.
  • Optimizing Your Code: Use common techniques for improving performance when storing, accessing, and processing data.
  • Creating Flexible Functions: Write functions that can handle different numbers and types of user input values.
  • Creating Robust Applications: Create robust applications that withstand unexpected input and produce meaningful errors. Use built-in MATLAB functions and programming constructs, and employ techniques for handling error conditions.
  • Verifying Application Behavior: Create tests to verify the application is behaving as expected.
  • Debugging Your Code: Use integrated tools to debug applications.
  • Organizing Your Projects: Use folder reports, MATLAB Projects, and version control to organize and manage your projects.
  • Conclusion: Learn next steps and provide feedback on the course.

Syllabus

  • Course Overview
  • MATLAB Data Types
  • Text Data
  • Organizing Data in a Table
  • Extracting Data from a Table
  • Storing Data in a Cell Array
  • Extracting Data from a Cell Array
  • Organizing Data in a Structure
  • Extracting Data from a Structure
  • Review - Structuring Data
  • Extracting Multiple Elements from Cell and Structure Arrays
  • Function Handles
  • Applying Scalar Functions to Arrays
  • Converting Data Types
  • Measuring Performance
  • Finding Bottlenecks
  • Vectorization
  • Memory Usage
  • Preallocation
  • Improving Memory Usage in Functions
  • Review - Optimizing Your Code
  • Creating Flexible Function Interfaces
  • Creating Multiple Interfaces with Wrapper Functions
  • Converting Input Types
  • Querying Function Inputs
  • Setting Default Input Values
  • Allowing Any Number of Inputs
  • Matching Text Inputs to an Allowed Set
  • Allowing a Variable Number of Outputs
  • Changing the Function Interface with Anonymous Functions
  • Review - Creating Flexible Functions
  • Course Example - Structuring the Satellite Tracking Code
  • Restricting Access Using Private Functions
  • Writing Local Functions
  • Generating Custom Warning and Errors
  • Validating Function Inputs
  • Catching and Handling Errors
  • Review - Creating Robust Applications
  • Why Use a Testing Framework
  • What Is a Test
  • Writing and Running a Test Script
  • Avoiding Bugs in Comparisons
  • Writing Test Functions
  • Verifying Behavior
  • Passing Commands as Inputs
  • Adding Pre- and Post-Test Tasks
  • Repairing Satellite Tracking Code
  • Errors and Debugging
  • Code Analyzer
  • Debugging Run-Time Errors
  • Organizing Satellite Tracking Code
  • Running Folder Reports
  • Organizing Code with MATLAB Projects
  • Managing a Code Base with Source Control
  • Review - Organizing Your Projects
  • Additional Resources
  • Survey

Taught by

Matt Tearle

Related Courses

The Data Scientist’s Toolbox
Johns Hopkins University via Coursera
How to Use Git and GitHub
Udacity
Ruby on Rails: An Introduction
Johns Hopkins University via Coursera
Accediendo a la nube con iOS
Tecnológico de Monterrey via Coursera
Responsive Website Development and Design Capstone
University of London International Programmes via Coursera