Computational Techniques
Required for ECE
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), solving systems of linear equations (e.g., Gauss-Jordan elimination), discretization of differential operators, aspects of numerical linear algebra (e.g., matrix inversion), 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.

Grading: Regular grades are awarded for this course: A B C D E

Offered: Spring Semester

MATH 223 and MATH 254 and PHYS 143 and PHYS 241 and ECE 175.

Numerical Recipes in C: The Art of Scientific Computing, WH Press, BP Flannery, SA Teukolsky, et al., Cambridge University Press, Cambridge, NY

Numerical and Analytical Methods with MATLAB for Electrical Engineers, W Bober and A Stevens, CRC Press (Taylor & Francis Group)

Advanced Engineering Mathematics, E Kreyszig, 9th Edition, John Wiley & Sons, Inc.

“Numerical Methods for Scientists and Engineers,” RW Hamming, Second Edition, Dover Publications, Inc., New York

Course Learning Outcomes: 

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. Solve systems of linear equations efficiently and invert matrices.
  7. Determine roots of functions numerically with several methods.
  8. Perform least squares optimization.
  9. Perform linear, polynomial, and general curve fits.
  10. Solve optimization problems amenable to linear programming.
  11. 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: 
  • Basic working knowledge of MATLAB.
  • Basic working knowledge of Gnuplot.
  • Basic introduction to Numerical Recipes and GNU Scientific Library.
  • Numerical differentiation: Two-Point formula and Three-point formula.
  • Numerical integration: Trapezoidal Rule, Simpson rule, Newton-Cotes Integration, Gauss-Legendre Integration.
    Transformation of differential equations and solution methods: Euler Method, Improved Euler Method, and Runge-Kutta Method.
  • Method of Successive Over-Relaxation for solving systems of linear equations: discretisation of second order differential equations and Liebmann Method.
  • Numerical Linear Algebra: Gaussian Elimination and Gauss-Jordan Elimination methods for solving systems of linear equations, and for matrix inversion.
  • Root Finding: Newton-Raphson method, the Regula Falsi, the Secant method, and the Bisection method.
  • Numerical Optimization: least squares, curve fitting, linear programming, and stochastic optimization techniques (simulated annealing and genetic algorithms).
Class/Laboratory Schedule: 

Two 75-minute lectures and one 50-minute recitation per week.

Approximately eight homework sets, including MATLAB exercises, during semester. Two midterm and one final written examinations.

Grading: Regular grades are awarded for this course: A B C D E

Offered: Spring Semester

Relationship to Student Outcomes: 

a) an ability to apply knowledge of mathematics, science, and engineering (H)

(b) an ability to design and conduct experiments, as well as to analyze and interpret data (L)

(e) an ability to identify, formulate, and solve engineering problems (M)

(i) a recognition of the need for, and an ability to engage in life-long learning (L)

(k) an ability to use the techniques, skills, and modern engineering tools necessary for engineering practice (H).

Prepared by: 
Wolfgang Fink
Prepared Date: 

University of Arizona College of Engineering