‘ALIVE’ ALGORITHMS FOR NUMERICAL ANALYSIS IN ENGINEERING EDUCATION
Numerical analysis for engineers is one of the key courses in most of the undergraduate engineering curricula. It is an important transition course allowing the future engineers realize at least these three issues: 1. Math foundations from previous courses are truly useful to solve “real life” problems; thus math finally makes sense for them, 2. It helps to understand how engineers should breakdown mathematical concepts in pieces in order for these to be read by computers; and 3. Computers are really necessary to scale methods up, if complexity is incorporated in analysis.
It has been always the main goal of the numerical analysis algorithms to get a solution for the problem at hand. A solution is nothing but a numerical value: a scalar, a vector, or a matrix. Thus, a solution is all what an engineer need to get his/her job done. However, for an engineering student this is not enough. He or she has to experiment what are each algorithm drawbacks and advantages. Then is necessary to see the insights of each one. Usually the algorithms are recursive formulas. A convenient way to follow closely what an algorithm does is by plotting intermediate steps and their partial results. This explain why while teaching numerical analysis, instructors usually are interested on the visual evolution to show how and why an algorithm might converge or not. However, plotting is a luxury when the instructor has to focus in teaching how to code properly the algorithm. Here a dilemma, to teach the algorithm or to visualize how it works? Well, currently, we are doing the best of both worlds with a single tool.
Applets are popular web-based tools to disseminate information allowing the user to interact by feeding parameters and tweaking some others; however to create them a great deal of knowledge in Java o similar programming is required. Coding is not always the main focus of many engineering curricula with the exception of computer sciences. In addition, in many instances these applets are in the form of black boxes. Users feed input, and get results but are not allowed to see the code. Wolfram Mathematica 9 is the ideal tool to create applets-like models.
All the authors in addition to have been involved in numerical analysis teaching, we recall the type of abstractions required to make those algorithms working. On one hand the mathematical notion and, on the other the coding process to feed the machine to get results. The current work summarizes how the teaching experience of numerical analysis has evolved and adapted to the current technologies for over 10 years at Civil Engineering Department in two Colombian Colleges: the Universidad Pontificia Bolivariana in Bucaramanga and the Pontificia Universidad Javeriana in Bogota. Several examples are illustrated in this document using different applications in its own highlights: MS-Excel, a combination of MATLAB and BEAMER to display dynamics, and Mathematica 9 to solve, visualize and interact with any algorithm in numerical analysis.