Objectives: training students from different disciplines, such as applied mathematics, physics, engineering, to integrate theory and models in the study of some problems arising in applied sciences and which result in partial differential equation. Provide students with a mathematical background suitable to analyze them.
Computational Fluid Dynamics
Objective: providing expertise on the motion of fluids inside the human body, especially in the cardiovascular system, with focus on the evaluation in a clinical settings.
Objective: providing the basic knowledge of fluid dynamics at the environmental scale and of tools for numerical modeling.
Objective: provide knowledge of the fundamental properties of the dynamics and thermodynamics of the atmosphere, and the formulation and implementation of some simple analytical models of atmospheric dynamical systems.
Objective: providing a basic knowledge of the physical oceanography and how to integrate theoretical knowledge with experimental measurements.
Objective: introducing to the use of computational techniques to solve problems in fluid mechanics.
Objective: introducing the student to state of the art methods for the numerical simulation of partial differential equation.
Objective: introducing students to modern architectures for high performance computing. Students will learn how to properly test such architectures (computing power, bandwidth, latency, energy efficiency). Leveraging these skills, students will be introduced to the parallel programming based on MPI protocols (Message Passing Interface) and multi-threading with OpenMP.
Objective: introducing students to the principles of data analysis, to data mining, and to machine learning (supervised and unsupervised learning).
Objective: providing numerical analysis tools for scientific computing, with particular attention to linear algebra, polynomial approximation, numerical integration, numerical solution of ordinary differential equations and partial differential equations, approximation of eigenvalues and eigenvectors.
Objective: introducing concepts and techniques for collaborative development of large and complex software systems for industrial applications, including Java, software development lifecycle, best practices in software development as code testing, versioning, and design patterns.
Objective: providing advanced knowledge of both theoretical and practical programming in C / C ++ and Python, with particular regard to the principles of object oriented programming and best practices of software development (advanced use of version control systems, continuous integration, unit testing), and introducing the modern technology of algorithms development, in particular of parallel algorithms.
Objective: introducing students to the fundamentals and practice of stochastic modeling, simulation of stochastic models and inference of parameters starting from observations, with a focus on scalability for large models.
Objective: providing students with the methodological, theoretical and practical tools to formulate linear programming models and combinatorial optimization problems and to solve them, even for high dimensionality problems, using appropriate optimization software.
Objective: introducing the physical and mathematical principles of fluid dynamics.
Objective: introducing to the dynamics of highly non-linear processes (turbulence) in fluid dynamics, and to the computational techniques used to solve such models.