CS-101: Advanced information, computation, communication IDiscrete mathematics is a discipline with applications to almost all areas of study. It provides a set of indispensable tools to computer science in particular. This course reviews (familiar) topics as diverse as mathematical reasoning, combinatorics, disc ...
PHYS-467: Machine learning for physicistsMachine learning and data analysis are becoming increasingly central in sciences including physics. In this course, fundamental principles and methods of machine learning will be introduced and practised. ...
PHYS-216: Méthodes mathématiques (pour SPH)Ce cours est un complément aux cours d'analyse et d'algèbre linéaire qui apporte des méthodes et des techniques mathématiques supplémentaires requises pour les cours de physique de 3e année, notamment l'électrodynamique et la mécanique quantique. ...
COM-502: Dynamical system theory for engineersLinear and nonlinear dynamical systems are found in all fields of science and engineering. After a short review of linear system theory, the class will explain and develop the main tools for the qualitative analysis of nonlinear systems, both in discrete-t ...
CS-250: Algorithms IThe students learn the theory and practice of basic concepts and techniques in algorithms. The course covers mathematical induction, techniques for analyzing algorithms, elementary data structures, major algorithmic paradigms such as dynamic programming, s ...
MATH-410: Riemann surfacesThis course is an introduction to the theory of Riemann surfaces. Riemann surfaces naturally appear is mathematics in many different ways: as a result of analytic continuation, as quotients of complex domains under discontinuous group actions, as algebraic ...
ChE-312: Numerical methodsThis course introduces students to modern computational and mathematical techniques for solving problems in chemistry and chemical engineering. The use of introduced numerical methods will be demonstrated using the Python programming language. ...
MATH-351: Advanced numerical analysis IIThe student will learn state-of-the-art algorithms for solving differential equations. The analysis and implementation of these algorithms will be discussed in some detail. ...
COM-501: Advanced cryptographyThis course reviews some failure cases in public-key cryptography. It introduces some cryptanalysis techniques. It also presents fundamentals in cryptography such as interactive proofs. Finally, it presents some techniques to validate the security of crypt ...
CS-401: Applied data analysisThis course teaches the basic techniques, methodologies, and practical skills required to draw meaningful insights from a variety of data, with the help of the most acclaimed software tools in the data science world (pandas, scikit-learn, Spark, etc.) ...
PHYS-100: Physique avancée I (mécanique)La Physique Générale I (avancée) couvre la mécanique du point et du solide indéformable. Apprendre la mécanique, c'est apprendre à mettre sous forme mathématique un phénomène physique, en modélisant la situation et appliquant les lois de la physique. ...
MSE-352: Introduction à la microscopie + TPCe cours d'introduction à la microscopie a pour but de donner un apperçu des différentes techniques d'analyse de la microstructure et de la composition des matériaux, en particulier celles liées aux microscopies électronique et optique. Le cours comprend d ...
PHYS-512: Statistical physics of computationThe students understand tools from the statistical physics of disordered systems, and apply them to study computational and statistical problems in graph theory, discrete optimisation, inference and machine learning. ...
COM-309: Introduction to quantum information processingInformation is processed in physical devices. In the quantum regime the concept of classical bit is replaced by the quantum bit. We introduce quantum principles, and then quantum communications, key distribution, quantum entropy, and spin dynamics. No prio ...
ME-213: Programmation pour ingénieurMettre en pratique les bases de la programmation vues au semestre précédent. Développer un logiciel structuré. Méthode de debug d'un logiciel. Introduction à la programmation scientifique. Introduction à l'instrumentation virtuelle. ...