course ID





14 Weeks

Semester DD


Course details

Iterative methods, numerical sequences, Taylor theorem and Lagrange rest, mean value theorem.
Numerical errors: absolute and relative. Representation of integers and real numbers, conversion between numerical bases, IEEE 754 formats for Floating Point, machine numbers. The ASCII code.
Notion of algorithm: the sieve of Eratosthenes, bubble sort.
Methods for finding simple roots: Bisection method. Regula Falsi. Newton and secant method. Convergence criteria for Newton's method, convergence order, error estimation. Pseudo-random number generators: Linear congruent generators. Notes on T-machines. Mersenne Twister algorithm. Uniform and exponential distribution. Generators of pseudo-random and quasi-random numbers: Gauss distribution (Box-Muller method). Numerical differentiation: first and second derivative (2, 3 and 5 point methods). Numerical integration: Riemann method, Truncation error in Riemann integration. Trapezoid and Simpson formula. Gaussian quadrature formulas. Improper integrals, Kantorovich method for isolated singularities. Monte Carlo method.
Numerical methods for ordinary differential equations (ODE): Introduction, truncation and rounding error. Euler method (geometric and analytical approach) Truncation error Euler method, improved Euler method, Euler-Cauchy method and implicit methods (trapezoid). Predictor-corrector, Methods of Runge-Kutta. General Method 2 order (Eunn, Euler perfected). Runge-Kutta method 4 order. Adaptive pass control.
Introduction to deterministic chaos and non-linear dynamics. Trajectories, fixed points, attractors. Logistics map. May population growth. Feigenbaum's number. Fractal dimension: Hausdorff-Besicovitch dimension and box counting method. Taxicab geometry.
Cellular Automata (AC): Introduction Transition rules: totalistic, probabilistic, multipass. The iterative functions as 0-dimensional AC, modular Arithmetic, Shannon Entropy: application of Shannon's entropy to different AC 0-d. Function of Ulam. Automi 1-d, Management of the boundaries of the domain, Kernel of convolution. 2-d automata The rules for Life, evolution. 2-d automata for simulating complex systems. Percolation clusters. Forest-Fire and Sand Pile model. Dissipative Cellular Automata.

Introduction to the Python programming language


The aim of the course is to provide the basic numerical and computer tools to address the main problems of scientific calculation applied in simple problems of mathematical analysis (integration, solution of Ordinary Differential Equations, etc.), of physics (problems of classical Physics 1 and 2) or computational physics, and be able to analyze the stability and efficiency of the related software.

Students must learn some computer languages, e.g., Python, necessary to carry out simple numerical simulation programs and software to analyze data from numerical or laboratory experiments.


Students must have adequate skills and tools for information management and must be able to solve simple problems of physics through the application of numerical methods in mathematics and numerical simulation in physics.


Students must be able to critically analyze the obtained numerical results. They must also be able to do autonomous bibliographic research using books of computer science and technical content, also developing a familiarity with the scientific journals in the field. Finally they must be able to use the electronic archives of software libraries and data available on the WEB, making the necessary selection of the information available.


Students must be able to present the algorithms used and the results of their programs to an audience of both specialists and laymen. To this end it is important to have a sufficient knowledge of English to understand scientific texts, by participating in specific English courses for the Macro Area of Sciences.


Students must have acquired an understanding of the numerical methods applied to research in physics and how these are applicable to many fields, even different from physics itself, so as to be able to tackle new fields through independent study.