• Level of education

    Master's degree

  • ECTS

    5 credits

  • Training structure

    Faculty of Science

  • Hours per week

    39h

Description

This module introduces advanced practices in atomistic simulation methods, particularly Molecular Dynamics.

It thus includes the expansion of methods already acquired, both in terms of physics (ab initio simulations, density functional theory) , as well as in terms of implementation (optimization, parallelization) and application (introduction to the practice of simulations in a high-performance computing environment).

Read more

Objectives

Understand the challenges of ab initio simulations, such as their theoretical foundations and areas of application, as well as the approximations and simplifications associated with their implementation. Understand how highly optimized algorithms work (compilation, profiling, compiler optimization, caching, loop vectorization, etc.); understand how parallel code works (MPI and/or OpenMP), and in particular know how to manipulate the code of a molecular dynamics simulation in order to optimize its performance, by implementing the concepts of parallelization taught. Basic concepts on the use of machine learning approaches in atomistic simulations.

Read more

Mandatory prerequisites

Knowledge of statistical physics; understanding of molecular dynamics; knowledge of a programming language; quantum mechanics.

Recommended prerequisites:

Knowledge of a compiled programming language (C, C++, Fortran).

 

Read more

Knowledge assessment

Continuous assessment

Read more

Syllabus

Code optimization: performance analysis of compiled code; compilation flags; cost of simple operations; efficient iteration on multidimensional arrays; cache optimization; concepts of algorithmic complexity; parallelization libraries (MPI vs. OpenMP); scalability of parallel programs; neighbor list, identification of invariants.

Simple parallelization strategies in molecular dynamics code (atomic decomposition vs. spatial decomposition)

Introductory concepts on the use of machine learning approaches for atomistic simulations

Practice of atomistic simulations in a high-performance computing environment.

Introduction to ab initio simulations: understand the distinction between classical and ab initio atomistic modeling and the basic principles of density functional theory; know how to identify the main simplifications and approximations underlying an ab initio simulation and become familiar with an ab initio code.

Read more