Prequisite: None

Fall 2014 Schedule:

Instructor: Dr. Stephen Bruder

Office: KEC 108

Grader: Tobias Fauser (

Textbook: "MATLAB Programming with Applications for Engineers" by Stephen J. Chapman

Course Description:

This is an introductory course in programming and computing for scientists and engineers. The course introduces students to the following aspects of software engineering: specification, requirements, design, code, and test. This course uses a problem solving approach for developing algorithms. The following topics will be included: data types and related operations, looping, decision, input/output, functions, arrays, files, and plotting.

Course Objectives:

Grading Scheme (See Grading Policy):

Homework Assignments 25%
Two Mid-Term Exams 40%
Final Exam 30%
Class Participation 5%

Class Schedule:

Week # Fall 2014
Topic Assignments, Solutions, & Handouts Reading
1 Mon, Aug 25 Course overview (ppt, pdf)    
Wed, Aug 27 Intro. to Programming (ppt, pdf) mass_spring_damper.m Ch 1.1, 1.2
Fri, Aug 29 Intro to MATLAB (ppt, pdf)
- The environment
Hwk_1.docx Ch 1.3 - 1.5
2 Mon, Sept 01 -- Labor Day Holiday --  
Wed, Sept 03 MATLAB Basics1 (ppt, pdf)
- Variables and Arrays
- Multi-dimensional arrays
  Ch 2.1 - 2.3
Fri, Sept 05 MATLAB Basics2 (ppt, pdf)
- sub-arrays & displaying data
format_examples.m Ch 2.4 - 2.6
3 Mon, Sept 08 MATLAB Basics3 (ppt, pdf)
- Data files & built in functions
Ch 2.7 - 2.10
Wed, Sept 10 MATLAB Basics4 (ppt, pdf)
- Intro to plotting
code Ch 2.11 - 2.12
Fri, Sept 12 MATLAB Basics5 (ppt, pdf)
- Applications: Vector Math
  Ch 2.13
4 Mon, Sept 15 MATLAB Basics6 (ppt, pdf)
- Debugging in MATLAB
Ch 2.14 - 2.16
Wed, Sept 17 2D Plotting1 (ppt, pdf)
- Additional features
an_example_of_subplots.m Ch 3.1
Fri, Sept 19 2D Plotting2 (ppt, pdf)
- Polar plots, annotation, ...
example_of_additional_plots.m Ch 3.2 - 3.3
5 Mon, Sept 22 Designing the BattleShip Game in MATLAB (ppt, pdf) Soln_3 Ch 3.4 - 3.6
Wed, Sept 24 Designing/Playing the BattleShip Game in MATLAB (ppt, pdf)    
Fri, Sept 26 Mid-Term Exam #1 Solutions to Mid Exam #1  
6 Mon, Sept 29 Exam #1 review
Branching & Prog Design1 (ppt, pdf)
- Top-dow, & pseudocode
Hwk_4.docx Ch 4.1 - 4.2
Wed, Oct 01 Branching & Prog Design2 (ppt, pdf)
- Logic Operators
  Ch 4.3
Fri, Oct 03 Branching & Prog Design3 (ppt, pdf)
- Branches
Guessing game code
Grade conversion code
Ch 4.4
7 Mon, Oct 06 Branching & Prog Design4 (ppt, pdf)
- More debugging
Ch 4.5
Wed, Oct 08 Branching & Prog Design5 (ppt, pdf)
- Application example
Ch 4.6
Fri, Oct 10 -- Fall Break --    
8 Mon, Oct 13 Loops and Vectorization1 (ppt, pdf)
- The while & for loops
Ch 5.1 - 5.2
Wed, Oct 15 Loops and Vectorization2 (ppt, pdf)
- Vectorization
Ch 5.3
Fri, Oct 17 Loops and Vectorization3 (ppt, pdf)
- Profiling
Ch 5.4
9 Mon, Oct 20 Loops and Vectorization4 (ppt, pdf)
- Revisit the BattleShip Game
- Polynomial curve fitting
Ch 5.5 - 5.9
Wed, Oct 22 User-Defined Functions1 (ppt, pdf)
- Intro & variable passing
user function examples Ch 6.1 - 6.2
Fri, Oct 24 User-Defined Functions2 (ppt, pdf)
- Data visibility (Global, ...)
global var examples Ch 6.3 -
10 Mon, Oct 27 User-Defined Functions3 (ppt, pdf)
- Storage class (persistent, ...)
Persistent example
Ch 6.
Wed, Oct 29 A Cumulative example & review (ppt, pdf)    
Fri, Oct 31 Mid-Term Exam #2 Solutions to Mid Exam #2Histogram  
11 Mon, Nov 03 Exam #2 review Hwk_8.docx Ch 8.1
Wed, Nov 05 Complex Numbers & 3D Plots1 (ppt, pdf)
- Complex data & plotting
MATLAB Code Examples Ch 8.2
Fri, Nov 07 Complex Numbers & 3D Plots2 (ppt, pdf)
- Multidimensional arrays
MATLAB Code Examples Ch 8.3
12 Mon, Nov 10 Complex Numbers & 3D Plots3 (ppt, pdf)
- More 3D Plots
MATLAB Code Examples
Ch 8.4
Wed, Nov 12 Formatted File Input / Output (ppt, pdf)
- fprintf and fscanf
MATLAB Code Examples Appendix B
Fri, Nov 14 Cell Arrays & Structures (ppt, pdf)
- Struct
cell array & struct examples Ch 9.1
13 Mon, Nov 17 Structures & Handle Graphics (ppt, pdf)
Handle Graphics examples
Ch 9.2
Wed, Nov 19 3D animation in MATLAB (ppt, pdf) Animation examples  
Fri, Nov 21 Graphical User Interface (GUI) Design in MATLAB 1 (ppt, pdf) GUI examples  
14 Mon, Nov 24 Graphical User Interface (GUI) Design in MATLAB 2 (ppt, pdf) GUI examples

Wed, Nov 26 -- Thanksgiving Holiday --    
Fri, Nov 28 -- Thanksgiving Holiday --    
15 Mon, Dec 01 A Cumulative example & review (ppt, pdf)    
Wed, Dec 03 Open Lecture Soln_11  
Fri, Dec 05 Study day    
16 Sat, Dec. 6 Final Exam
2:45pm - 4:45pm in KEC 128

Academic Integrity/Conduct:

Embry-Riddle is committed to maintaining and upholding intellectual integrity. All students, faculty, and staff have obligations to prevent violations of academic integrity and take corrective action when they occur. The adjudication process will include the sanction imposed on students who commit the following academic violations, which may include a failing grade on the assignment, a failing grade for the course, suspension, or dismissal from the University.

  1. Plagiarism: Presenting as one’s own the ideas, words, or products of another. Plagiarism includes use of any source to complete academic assignments without proper acknowledgment of the source.
  2. Cheating is a broad term that includes the following:
    1. Giving or receiving help from unauthorized persons or materials during examinations.
    2. The unauthorized communication of examination questions prior to, during, or following administration of the examination.
    3. Collaboration on examinations or assignments expected to be individual work.
    4. Fraud and deceit, which include knowingly furnishing false or misleading information or failing to furnish appropriate information when requested, such as when applying for admission to the University.

Access To Learning:

ERAU is committed to the success of all students. It is University policy to provide reasonable accommodations to students with disabilities who qualify for services. If you would like to discuss and/or request accommodations, please contact Disability Support Services in Building 17, extension 6750, or 928/777-6750.

Continuity Statement:

In the event of a temporary campus closure this course will continue on Blackboard with ongoing communications to occur through electronic means.  Assignments are provided in the syllabus and should be completed in a timely manner.  Further instructions will be posted on Blackboard regarding testing and submission of work.