MATLAB has become a prevalent resource within engineering schools and companies and as a result, many texts and references are available to help users successfully navigate the software. This appendix outlines various resources that are available either for free or for a cost by both MathWorks and third-party publishers. This appendix can be used as a resource to find help using MATLAB within the rigor of ME 160 and to solve more complicated problems later in coursework or job functions. The remainder of the appendix will list resources that are available along with discussions of their function, availability, and the author’s opinions of each text.
MathWorks’ website contains a variety of resources intended to aid MATLAB users as they navigate the software. As MathWorks profits when engineers use their software, the company provides many resources to ensure engineers can most effectively use the software and are able to find help when needed. The MathWorks website contains extensive documentation about the MATLAB program, various pdfs of textbooks, and several interactive training courses which can be used to gain fundamental skills with MATLAB or even to obtain certifications after completing courses. These resources are detailed below.
The MATLAB documentation page serves as a resource to look up specific functions of the MATLAB software. Within the documentation page for MATLAB, a user can select broad topics critical to MATLAB which directs the user to more specific webpages addressing introductory resources, language fundamentals, graphics resources and examples, and more. By searching “MathWorks Documentation MATLAB” into a search engine the following page will appear. This is an exceptionally convenient way to review fundamental aspects of MATLAB that were addressed in ME 160 such as the syntax of specific commands, how to use commands within a code, and more complex graphics or graphical user interface operations.
Within the context of ME 160, the documentation page is most useful to research-specific functions given that the user already remembers the name of the function they are researching. As an example, if the user remembers that they would like to use a for loop but do not remember the syntax that is required, searching for the loop within the “Language Fundamentals” section of the documentation for information on loops and conditional statements.
If the user is unsure of the section of the documentation that contains the information they need, the search tool within the documentation will usually bring the user to the page discussing the application of specific functions in MATLAB. This feature is invaluable when researching a predetermined function, but the documentation tool is limited when the user does not know what function they need to complete a task. Without knowing the name of the desired function, the documentation program is limited.
MathWorks documentation serves as a valuable tool to learn functions like those learned within ME 160. Specific articles within the documentation page contains lists of each function that can be used to accomplish an operation of interest. For example, the documentation page regarding line plots, which is nested under the “Graphics” and “2D and 3D Plots” pages, discusses not only functions taught in ME 160 like plot but other variations such as plot3 or stairs, which enable 3D plots or stairstep graphs, respectively. For the most detailed pages discussing specific functions, selecting specific functions, which should appear as blue hyperlinks, will direct the user to pages dedicated to examples of syntax and situations for a function.
MathWorks MATLAB Guide
In addition to various web pages which can be used to review and supplement MATLAB knowledge on the MathWorks webpage, full texts are available for more comprehensive study. To gain a more thorough understanding of various MATLAB aspects, a list of PDF documents is available on the documentation page. When on the MATLAB documentation page (search “MathWorks Documentation MATLAB” in a search engine and go to the MathWorks website) the user should follow the “PDF Documentation” link in the top right of the page. This page will lead the user to a login page. The user, if they do not already have an account, can make one easily using an Iowa State email at no cost. This will enable access to the list of all PDFs’ produced by MathWorks and can also be used to access additional resources by MathWorks, which are addressed in this appendix.
MATLAB Training through MathWorks
MathWorks offers several training modules which can be accessed through the MathWorks website which provides interactive methods for users to practice writing codes in MATLAB. To find interactive courses offered by MathWorks, search “MathWorks MATLAB Training Courses” and visit the MATLAB and Simulink Training page on MathWorks’ webpage. From this page selecting the “Find a Course” tab will lead users to a listing of courses that help users learn specific topics in MATLAB.
The “MATLAB Onramp” course is valuable to ME 160 students who intend to supplement the instruction they are receiving in class. This online module is an interactive MATLAB coding environment that will guide you through exercises and have your complete codes using skills learned in class in applications that extend beyond the scope of ME 160. This module will provide examples and correct code as it is written, given the user real-time feedback and more opportunities to practice writing code.
For more adept coders who are confident with the content addressed in class, various courses that offer instruction on specific topics are available. These courses cover content such as data processing that can supplement other mechanical engineering courses or can provide the user an opportunity to learn a skill that diverges from core curriculum in mechanical engineering, such as MATLAB for financial applications or machine learning applications.
A Practical Introduction to Programming and Problem Solving By: Stormy Attaway
Recommended by some professors at Iowa State to supplement their ME 160 courses, Attaway’s introductory MATLAB textbook is a thorough guide to MATLAB that supplements material covered at Iowa State. Within a semester-long introductory course, ME 160 is not always able to discuss details behind why code works the way it does and how nuances of functions make them operate. This text discusses the introductory topics discussed in ME 160 in greater detail, which may assist students in understanding why the code they write works.
Many professors will not refer to the book directly within their classes but will rather recommend that students purchase the book as supplementary material. I believe this book fulfills this role well and provides a comprehensive and up-to-date discussion of MATLAB at a moderate cost. For students who are interested in understanding nuances of the coding language, this book is excellent.