Course teached as: B030633 - NUMERICAL METHODS FOR SCIENTIFIC COMPUTING Second Cycle Degree in GEO-ENGINEERING
Teaching Language
English
Course Content
Basics concepts of numerical analysis. Numerical solution of linear systems. Data and function approximation. Numerical solution of ordinary differential equations: methods for initial value and boundary value problems. Introduction to Matlab for the implementation of numerical methods.
Chapra, S., Canale, R., Numerical methods for engineers, Mc-Graw Hill.
Kahaner, D., Moler, C., Nash, S., Numerical methods and software, Prentice Hall.
W. Palm III, Introduction to Matlab for engineers, Mc-Graw Hill, 2005.
Learning Objectives
The course aims at providing the students the basic notions to theoretically understand and apply numerical methods for the solution of linear systems, ordinary differential equations and for the approximation of data.
At the end of the course, the student will be able to:
- understand and present the mathematical formulation of the proposed problems and the relation with the corresponding numerical solution;
- understand and present the mathematical aspects guaranteeing the efficiency and accuracy of the numerical methods;
- solve some test problems by writing in Matlab programs implementing the studied methods.
Prerequisites
Basic linear algebra: vectors, matrices, linear systems. Basic Mathematical Analysis: sequences and their convergence, limits and continuity for real functions, basic concepts of differentiation and integration for univariate and multivariate functions.
Teaching Methods
Lectures and training sessions in the computer lab.
Lectures: presentation of the theory described in the course program, with teacher-student direct interaction, to facilitate and ensure a full understanding of the subject.
Training sessions in the computer lab: training sessions to learn how to numerically solve mathematical problems in the Matlab envinronment.
The training has the goal of:
-- helping the students to develop skills to apply the theoretical knowledge;
-- encouraging criticism in the students, particularly in assessing the numerical results obtained.
Moodle learning platform: online teacher-student interaction, posting of additional
Further information
Frequency of lectures, practice and lab: Strongly recommended
During the course 3 packages of exercises will be assigned (the first contains exercises about the machine representation of numbers, the others concern the implementation of numerical methods in Matlab), and each student must solve and send the exercises. The final written test instead contains questions to verify the knowledge of the theoretical mathematical aspects of the numerical methods. The evaluation, which takes into account the results of the assigned exercise and of the final test, is focused on assessing the knowledge of the mathematical concepts the methods are based on and of the ability to use them to solve problem by employing Matlab programming.
Course program
Basic concepts: conditioning of a problem, stability and convergence of numerical methods, sources of errors in computational models, fundamental aspects of numerical algorithms.
Scientific computing: floating-point representation of numbers, machine precision and arithmetic operations, rounding errors.
Linear systems: solution of triangular systems, gaussian elimination, LU factorization and pivoting techniques.
Data and functions approximation: problem of polynomial interpolation, piecewise polynomial interpolation, basics of univariate spline functions and cubic spline interpolants. Data fitting by least squares method.
Basics of ordinary differential equations (ODEs) and systems of ODEs. Initial value and boundary value problems, theoretical and numerical solutions. Explicit one step method for initial value problems, finite difference methods for boundary value problems, convergence and implementation issues.
Basic Matlab rules and commands. Representing and saving data, basic operations and functions, creating and handling arrays. Programming with Matlab: scripts and functions, conditional and repetition instructions, logical operators. Plotting and program output. Matlab predefined(graphical) functions. Introduction to the use of tools for image analysis.