ECE 330B

Computational Techniques

Usually offered: Spring

Required course: No

Course Level

Undergraduate

Units

3

Instructor(s)

Wolfgang Fink, Associate Professor

Prerequisite(s)

Advanced Standing: Engineering. Major: ECE. MATH 223 and MATH 254 and PHYS 143 and PHYS 241 and ECE 101.

Course Texts

WH Press, BP Flannery, SA Teukolsky, and WT Vetterling "Numerical Recipes in C: The Art of Scientific Computing", Cambridge University Press, Cambridge, NY.

Schedule

Two 75-minute lecture sessions per week, Tu/Th 11:30AM - 12:15PM.

Course Description

Specific Course Information: 
2021-2022 Catalog Data: This course provides students with the fundamentals of computational techniques for solving numerical problems. In particular, students will become familiar with techniques for numerical differentiation, numerical integration, solving differential equations (e.g., Runge-Kutta method), root finding (e.g., Newton-Raphson method), and numerical optimization (least squares method, linear programming, and stochastic optimization techniques such as simulated annealing and genetic algorithms). In addition, students will be provided with a basic working knowledge of the Matlab environment: They will learn how to create, edit, compile, and run programs in Matlab. Moreover, students will be provided with a basic working knowledge of Gnuplot: They will become familiar with 2D and 3D plotting techniques. Furthermore, students will be introduced to Numerical Recipes and the GNU Scientific Library.

Learning Outcomes

Specific Goals for the Course:
Outcomes of Instruction: By the end of this course the student will be able to:

  1. Use MATLAB for data manipulation, data plotting, and basic programming.
  2. Use Gnuplot to generate 2D and 3D plots.
  3. Work with Numerical Recipes and the GNU Scientific Library.
  4. Numerically differentiate and integrate functions with several techniques of different accuracy and efficiency.
  5. Transform systems of differential equations and solve them numerically with several techniques of increasing numerical accuracy.
  6. Determine the roots of functions numerically with several methods.
  7. Perform least-squares optimization.
  8. Perform linear, polynomial, and general curve fits.
  9. Solve optimization problems amenable to linear programming.
  10. Solve high-dimensional,  multivariate optimization problems in the presence of multiple/infinite local minima that cannot be solved with deterministic, gradient-descent-based optimization techniques.

Course Topics

A brief list of topics to be covered:

  • Introduction to Course; Overview of Research Activities in the Visual and Autonomous Exploration Systems Research Laboratory
  • Introduction to Numerical Recipes and GNU Scientific Library; Introduction to Matlab & Gnuplot
  • Numerical  differentiation  (two-point formula, improved two-point  formula, three-point  formula); Numerical  integration: Trapezoidal Rule, Simpson Rule, Introduction to Gauss-Legendre
  • Numerical integration: Gauss-Legendre
  • Transformation of differential equations; Euler Method; Improved Euler Method; Runge-Kutta Method
  • Root  finding: Newton-Raphson method, Regula Falsi, Secant method, Bisection method
  • Numerical optimization: Least Squares; Introduction to Linear Programming
  • Numerical optimization: Linear Programming
  • Numerical optimization: Multi-dimensional Newton Raphson method; Introduction to stochastic optimization
  • Numerical optimization: Simulated Annealing
  • Numerical optimization: Simulated Annealing; Genetic Algorithms
  • Numerical optimization: Genetic Algorithms; Multi-dimensional optimization scenarios.

Relationship to Student Outcomes

ECE 330B contributes directly to the following specific electrical and computer engineering student outcomes of the ECE department:

1. An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics.
6. An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions.

Syllabus Prepared By

Syllabus updated on 3/29/2022

Contact Undergraduate Advisor: undergradadvisor@ece.arizona.edu

Contact Us
Contact Us
Loading...