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. ...
EE-334: Digital systems designStudents will acquire basic knowledge about methodologies and tools for the design, optimization, and verification of custom digital systems/hardware.
They learn how to design synchronous digital circuits on register transfer level, analyse their timing a ...
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. ...
CS-320: Computer language processingWe teach the fundamental aspects of analyzing and interpreting computer languages, including the techniques to build compilers. You will build a working compiler from an elegant functional language into machine code using a popular backend called LLVM (htt ...
CS-202: Computer systemsThis course will teach operating systems and networks in an integrated fashion,emphasising the fundamental concepts and techniques that make their interaction possible/practical. Core lectures will be coupled with C programming lectures and assignments for ...
MATH-251(a): Numerical analysisThis course presents numerical methods to solve mathematical problems such as systems of linear and nonlinear equations, function approximation, integration and differentiation, and differential equations. ...
EE-320: Analog IC designIntroduction to the design of analog CMOS integrated circuits at the transistor level. Understanding and design of basic structures. ...
MATH-458: Programming concepts in scientific computingThe aim of this course is to provide the background in scientific computing. The class includes a brief introduction to basic programming in c++, it then focuses on object-oriented programming and c++ specific programming techniques. Typical class hierarch ...
CS-420: Advanced compiler constructionStudents learn several implementation techniques for modern functional and object-oriented programming languages. They put some of them into practice by developing key parts of a compiler and run time system for a simple functional programming language. ...
MATH-454: Parallel and high-performance computingThis course provides insight into a broad variety of High Performance Computing (HPC) concepts and the majority of modern HPC architectures. Moreover, the student will learn to have a feeling about what architectures are suited for several types of algorit ...
CS-438: Decentralized systems engineeringA decentralized system is one that works when no single party is in charge or fully trusted. This course teaches decentralized systems principles while guiding students through the engineering of their own decentralized system featuring messaging, file sha ...
BIOENG-399: ImmunoengineeringImmunoengineering is an emerging field where engineering principles are grounded in immunology. This course provides students a broad overview of how engineering approaches can be utilized to study immunology, model immune systems, modulate immune response ...
MSE-352: Introduction to microscopy + Laboratory workCe 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 ...
NX-423: Translational neuroengineeringThis course integrates knowledge in basic, systems, clinical and computational neuroscience, and engineering with the goal of translating this integrated knowledge into the development of novel methods, technology for the clinical application for patients ...
CS-214: Software constructionLearn how to design and implement reliable, maintainable, and efficient software using a mix of programming skills (declarative style, higher-order functions, inductive types, parallelism) and
fundamental software construction concepts (reusability, abstr ...
MICRO-727: Beyond CMOS devices and advanced computing architecturesThis course provides the trends in nanoelectronics for scaling, better performances and lower energy per function. It
covers fundamental phenomena of nanoscale devices, beyond CMOS steep slope switches, emerging architectures,
cryo electronics, non-volatile memories and energy efficient smart sensin
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.) ...
ENV-542: Advanced satellite positioningAll fundamental principles behind modern satellite positioning to acquire, track and evaluate direct and indirect satellite signals and process them in relation to example applications: Earth monitoring (landslides,...), high precision positioning (autom ...
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 ...
PHYS-454: Quantum optics and quantum informationThis lecture describes advanced concepts and applications of quantum optics. It emphasizes the connection with ongoing research, and with the fast growing field of quantum technologies. The topics cover some aspects of quantum information processing, quant ...