Academic Catalogs

ENGR G220: Programming and Problem-Solving in MATLAB

Course Outline of Record
Item Value
Curriculum Committee Approval Date 09/17/2019
Top Code 090100 - Engineering, General (requires Calculus) (Transfer)
Units 4 Total Units 
Hours 108 Total Hours (Lecture Hours 54; Lab Hours 54)
Total Outside of Class Hours 0
Course Credit Status Credit: Degree Applicable (D)
Material Fee No
Basic Skills Not Basic Skills (N)
Repeatable No
Open Entry/Open Exit No
Grading Policy Standard Letter (S)

Course Description

This course utilizes the MATLAB environment to provide students with a working knowledge of computer-based problem-solving methods relevant to science and engineering. It introduces the fundamentals of procedural and object-oriented programming, numerical analysis, and data structures. Examples and assignments in the course are drawn from practical applications in engineering, physics, and mathematics. PREREQUISITE: MATH G180. Transfer Credit: CSU; UC. C-ID: ENGR 220. C-ID: ENGR 220.

Course Level Student Learning Outcome(s)

  1. Course Outcomes
  2. Solve a system of linear equations with matrix methods.
  3. Use MATLAB programming to design and develop a flowchart.
  4. Use functions and files to develop a user-defined function.
  5. Use MATLAB programming to design and develop documentation.

Course Objectives

  • 1. Use MATLAB coding to perform basic computations, including routines, logic operations, and plotting.
  • 2. Manipulate vectors and matrices to perform vector and matrix operations.
  • 3. Write basic programs in MATLAB to analyze data with an input/output approach.
  • 4. Utilize MATLAB routines to perform linear and non-linear interpolation of engineering data.
  • 5. Create, test, and debug sequential MATLAB programs, as well as programs that use object-oriented techniques, in order to achieve computational objectives.
  • 6. Apply numeric techniques and computer simulations to analyze and solve engineering-related problems.
  • 7. Apply a top-down design methodology to develop computer algorithms.
  • 8. Use MATLAB effectively to analyze and visualize data.
  • 9. Demonstrate understanding and use of standard data structures.

Lecture Content

A. Variables, expressions, and order of operation B. Elementary functions C. Array definitions and operations D. Formatted input and output E. Selection programming structures and repetition programming structures F. MATLAB Functions and user-defined functions G. Recursion H. Data structures I. Sorting and searching J. Object-oriented programming K. Overview of MATLAB environment 1. MATLAB terminology 2. Menus and toolbars 3. Arrays, Files, and Plots 4. Script Flies and Editor/Debugger 5. Help library 6. Computational problem-solving methodology L. Functions and Files 1. User-Defined Functions 2. Additional Functions 3. Data Files 4. Data Files Plotting M. MATLAB Programming and computational problem-solving methodology 1. Program Design and Development (Pseudocode, Flowcharts, and Documentation) 2. Logical Operators and Functions 3. Conditional Operators and Functions 4. for Loops 5. while Loops 6. Debugging programs N. Plotting 1. Two- and Three-Dimensional Plotting 2. Interactive plotting O. Regressions 1. Basic Statistics Concepts 2. Least-squares regression and other fitting techniques 3. Data Interpolation P. Linear Algebraic Equations 1. Matrix Methods for Linear Equations 2. Under- and Overdetermined Systems Q. Numerical Methods and Numerical Analysis Techniques: 1. Solving systems of linear equations 2. Vector analysis 3. Data Interpolation 4. Least-squares regression and linearization 5. Numerical Differentiation and Integration 6. Solving ordinary Differential Equations 7. Series Approximation and Error R. Additional Topics (optional) 1. Solving problems with Simulink 2. Graphical User Interfaces 3. Stochastic simulation 4. Solving equations of one variable 5. Optimization

Lab Content

A. Explore and apply concepts covered in the lecture portion of the course, and should reflect a variety of practical applications in engineering and physics. B. Conducting MATLAB interactive sessions C. Going over operations with arrays, matrices and structures D. Practicing with default and user-defined Functions, including input/output files E. Creating and working with M-files F. Learning about file input/output files G. Implementing different types of operators, selection structures and repetition structures H. Completing visualization and plotting in 2D and 3D I. Executing interpolation and curve fitting J. Solving systems of linear equations with matrix methods K. Going over numerical analysis techniques, including numerical differentiation/integration, and solving differential equations numerically L. Applying numeric techniques and computer simulations to analyze and solve engineering-related problems

Method(s) of Instruction

  • Lecture (02)
  • Lab (04)

Instructional Techniques

Collaborative group learning Demonstration Web enhanced Lab/studio/activity/projects Lecture/discussion Multimedia presentations

Reading Assignments

Reading and exercises from the text.

Writing Assignments

Reading and exercises from the text and programming assignments.

Out-of-class Assignments

Reading and exercises from the text and programming assignments.

Demonstration of Critical Thinking

Students will demonstrate critical thinking and problem solving skills by using logic to solve and interpret a variety of engineering applications. Demonstrations will be shown by completing assignments, participating in discussions, and completing required exams and projects.

Required Writing, Problem Solving, Skills Demonstration

Students will demonstrate problem solving skills when they write their own solutions to regular homework problems, quiz problems, individual and group projects, and exam problems.

Eligible Disciplines

Engineering: Master's degree in any field of engineering OR bachelor's degree in any of the above AND master's degree in mathematics, physics, computer science, chemistry, or geology OR the equivalent. (NOTE: A bachelor's degree in any field of engineering with a professional engineer's license is an alternative qualification for this discipline.) Master's degree required. Title 5, section 53410.1 Engineering technology: Master's degree in any field of engineering technology or engineering OR bachelor's degree in either of the above AND master's degree in physics, mathematics, computer science, biological science, or chemistry, OR bachelor's degree in industrial technology, engineering technology or engineering AND a professional engineer's license OR the equivalent. Master's degree required.

Textbooks Resources

1. Required Palm, William . MATLAB for Engineering Applications, 4 ed. Mc Graw Hill Education, 2019 2. Required Moore, Holly. MATLAB for Engineers, 5 ed. Pearson, 2018 3. Required Chapman, Stephen. MATLAB Programming for Engineers, 5 ed. Cengage Learning, 2016