UNITOV
Dr. V. D’Orazi
INTRODUCTION TO NUMERICAL METHODS FOR ASTROPHYSICS
(S1, compulsory, 6 ECTS)
Learning Outcomes
The course aims to provide the basic numerical and IT tools to address problems of scientific calculation applied to the mathematical analysis and to the Astrophysics. The aims include the ability to analyse stability and efficiency of the independently developed software.
Knowledge and Understanding

Students must learn the Python language, which is necessary for developing numerical simulation programs and for the analysis of astrophysical data (images, spectra) and/or obtained from simulations.
Applying Knowledge and UnderstandingPossession of adequate skills and tools for communication and management of the IT topics. Solving some simple astrophysics problems using numerical analysis and simulation methods.
Making JudgementsAbility to carry out independent bibliographic searches using IT and technical content books, also developing familiarity with scientific journals.
Communication SkillsPresentation of algorithms and results obtained with own programs.
Learning SkillsUnderstanding of numerical models and their applications to different fields of physics and astrophysics.
PrerequisitesBasic Knowledge of general physics.
ProgramIntroduction to the concepts of computation, numerical simulation, logic, syntax and coding. Notion of algorithm, iterative methods, numerical sequences, Taylor’s theorem, mean value theorem, numerical errors. Methods for finding simple roots, bisection method, Newton’s method, convergence criteria for Newton’s method, order of convergence and error estimation. Numerical differentiation (first and second derivative, 2,3,5 point methods) and numerical integration (Riemann method, trapezium formula, Monte Carlo method). Introduction to numerical methods for ordinary differential equations (Euler method, Runge-Kutta methods). Numerical interpolation, Lagrange polynomial method, linear and cubic splines. Fitting procedures, linear fits (least squares regression, fitting with experimental errors, evaluation of goodness of fit, pseudo errors), non-linear fits (Levenberg-Marquardt algorithm). Introduction to machine-learning algorithms.
Description of how the course is conductedPower Point presentations, Jupyter notebooks, chalkboard and other didactic material.
Description of the didactic methodsClassroom lectures. Laboratory practice.
Description of the evaluation methodsPractical test on numerical exercises. Discussion about reports on numerical exercises. Oral test: questions on selected program topics.
Adopted TextbooksAn Introduction to Computational physics (T. Pang)
A Primer on Scientific Programming with Python (H.P. Langtangen)
A studendt’s guide to Python for physical modelling (J.M. Kinder)
Recommended readingsUpdated literature papers on the topics covered by the course are mentioned during the lectures.