Search result: Catalogue data in Spring Semester 2020
Computational Science and Engineering Bachelor | ||||||
Bachelor Studies (Programme Regulations 2018) | ||||||
First Year Compulsory Courses | ||||||
First Year Examination Block 1 Offered in the Autumn Semester | ||||||
First Year Examination Block 2 | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
---|---|---|---|---|---|---|
401-0232-10L | Analysis 2 Students in BSc EEIT who registered for the course unit 401-1261-07L Analysis I in the Autumn Semester may instead register for 401-1262-07L Analysis II (for BSc Mathematics, BSc Physics and BSc Interdisciplinary Science (Phys Chem)) and take the performance assessment of the corresponding two-semester course. | O | 8 credits | 4V + 2U | P. Feller | |
Abstract | Introduction to differential calculus and integration in several variables. | |||||
Learning objective | Einführung in die Grundlagen der Analysis | |||||
Content | Differentiation in several variables, maxima and minima, the implicit function theorem, integration in several variables, integration over submanifolds, the theorems of Gauss and Stokes. | |||||
Lecture notes | Christian Blatter: Ingenieur-Analysis (Kapitel 4-6). Konrad Koenigsberger, Analysis II. | |||||
401-0302-10L | Complex Analysis as of 4 March 2020: The lecturer and many students are in the lecture hall, but some students are absent. The lecture is recorded. | O | 4 credits | 3V + 1U | A. Iozzi | |
Abstract | Basics of complex analysis in theory and applications, in particular the global properties of analytic functions. Introduction to the integral transforms and description of some applications | |||||
Learning objective | Erwerb von einigen grundlegenden Werkzeuge der komplexen Analysis. | |||||
Content | Examples of analytic functions, Cauchy‘s theorem, Taylor and Laurent series, singularities of analytic functions, residues. Fourier series and Fourier integral, Laplace transform. | |||||
Literature | J. Brown, R. Churchill: "Complex Analysis and Applications", McGraw-Hill 1995 T. Needham. Visual complex analysis. Clarendon Press, Oxford. 2004. M. Ablowitz, A. Fokas: "Complex variables: introduction and applications", Cambridge Text in Applied Mathematics, Cambridge University Press 1997 E. Kreyszig: "Advanced Engineering Analysis", Wiley 1999 J. Marsden, M. Hoffman: "Basic complex analysis", W. H. Freeman 1999 P. P. G. Dyke: "An Introduction to Laplace Transforms and Fourier Series", Springer 2004 A. Oppenheim, A. Willsky: "Signals & Systems", Prentice Hall 1997 M. Spiegel: "Laplace Transforms", Schaum's Outlines, Mc Graw Hill | |||||
Prerequisites / Notice | Prerequisites: Analysis I and II | |||||
402-0044-00L | Physics II | O | 4 credits | 3V + 1U | S. P. Quanz | |
Abstract | Introduction to the concepts and tools in physics with the help of demonstration experiments: electromagnetism, optics, introduction to modern physics. | |||||
Learning objective | The concepts and tools in physics, as well as the methods of an experimental science are taught. The student should learn to identify, communicate and solve physical problems in his/her own field of science. | |||||
Content | Electromagnetism (electric current, magnetic fields, electromagnetic induction, magnetic materials, Maxwell's equations) Optics (light, geometrical optics, interference and diffraction) Short introduction to quantum physics | |||||
Lecture notes | The lecture follows the book "Physik" by Paul A. Tipler. | |||||
Literature | Paul A. Tipler and Gene Mosca Physik Springer Spektrum Verlag | |||||
529-4000-00L | Chemistry | O | 4 credits | 3G | E. C. Meister | |
Abstract | Introduction to chemistry with aspects of inorganic, organic and physical chemistry. | |||||
Learning objective | - Understanding of simple models of chemical bonding and the three-dimensional molecular structure - Quantitative description of selected chemical systems by means of reaction equations and equilibria - Understanding of fundamental concepts of chemical kinetics (e.g. reaction order, rate law, rate constant) | |||||
Content | Chemical bonding (LCAO-MO) and molecular structure (VSEPR), reactions, equilibria, electrochemistry, chemical kinetics. | |||||
Lecture notes | Handouts of lecture presentations and additional supporting information will be offered. | |||||
Literature | C.E. Housecroft, E.C. Constable, Chemistry. An Introduction to Organic, Inorganic and Physical Chemistry, 4th ed., Pearson: Harlow 2010. C.E. Mortimer, U. Müller, Chemie, 11. Auflage, Thieme: Stuttgart 2014. | |||||
252-0002-00L | Data Structures and Algorithms | O | 8 credits | 4V + 2U | F. Friedrich Wicker | |
Abstract | This course is about fundamental algorithm design paradigms (such as induction, divide-and-conquer, backtracking, dynamic programming), classic algorithmic problems (such as sorting and searching), and data structures (such as lists, hashing, search trees). Moreover, an introduction to parallel programming is provided. The programming model of C++ will be discussed in some depth. | |||||
Learning objective | An understanding of the design and analysis of fundamental algorithms and data structures. Knowledge regarding chances, problems and limits of parallel and concurrent programming. Deeper insight into a modern programming model by means of the programming language C++. | |||||
Content | Fundamental algorithms and data structures are presented and analyzed. Firstly, this comprises design paradigms for the development of algorithms such as induction, divide-and-conquer, backtracking and dynamic programming and classical algorithmic problems such as searching and sorting. Secondly, data structures for different purposes are presented, such as linked lists, hash tables, balanced search trees, heaps and union-find structures. The relationship and tight coupling between algorithms and data structures is illustrated with geometric problems and graph algorithms. In the part about parallel programming, parallel architectures are discussed conceptually (multicore, vectorization, pipelining). Parallel programming concepts are presented (Amdahl's and Gustavson's laws, task/data parallelism, scheduling). Problems of concurrency are analyzed (Data races, bad interleavings, memory reordering). Process synchronisation and communication in a shared memory system is explained (mutual exclusion, semaphores, monitors, condition variables). Progress conditions are analysed (freedom from deadlock, starvation, lock- and wait-freedom). The concepts are underpinned with examples of concurrent and parallel programs and with parallel algorithms. The programming model of C++ is discussed in some depth. The RAII (Resource Allocation is Initialization) principle will be explained. Exception handling, functors and lambda expression and generic prorgamming with templates are further examples of this part. The implementation of parallel and concurrent algorithm with C++ is also part of the exercises (e.g. threads, tasks, mutexes, condition variables, promises and futures). | |||||
Literature | Cormen, Leiserson, Rivest, and Stein: Introduction to Algorithms, 3rd ed., MIT Press, 2009. ISBN 978-0-262-03384-8 (recommended text) Maurice Herlihy, Nir Shavit, The Art of Multiprocessor Programming, Elsevier, 2012. B. Stroustrup, The C++ Programming Language (4th Edition) Addison-Wesley, 2013. | |||||
Prerequisites / Notice | Prerequisites: Lecture Series 252-0835-00L Informatik I or equivalent knowledge in programming with C++. | |||||
Basic Courses | ||||||
Block G1 All course units within Block G1 are offered in the autumn semester. | ||||||
Block G2 All course units within Block G2 are offered in the autumn semester. | ||||||
Block G3 | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
401-0674-00L | Numerical Methods for Partial Differential Equations Not meant for BSc/MSc students of mathematics. | O | 10 credits | 2G + 2U + 2P + 4A | R. Hiptmair | |
Abstract | Derivation, properties, and implementation of fundamental numerical methods for a few key partial differential equations: convection-diffusion, heat equation, wave equation, conservation laws. Implementation in C++ based on a finite element library. | |||||
Learning objective | Main skills to be acquired in this course: * Ability to implement fundamental numerical methods for the solution of partial differential equations efficiently. * Ability to modify and adapt numerical algorithms guided by awareness of their mathematical foundations. * Ability to select and assess numerical methods in light of the predictions of theory * Ability to identify features of a PDE (= partial differential equation) based model that are relevant for the selection and performance of a numerical algorithm. * Ability to understand research publications on theoretical and practical aspects of numerical methods for partial differential equations. * Skills in the efficient implementation of finite element methods on unstructured meshes. This course is neither a course on the mathematical foundations and numerical analysis of methods nor an course that merely teaches recipes and how to apply software packages. | |||||
Content | 1 Second-Order Scalar Elliptic Boundary Value Problems 1.2 Equilibrium Models: Examples 1.3 Sobolev spaces 1.4 Linear Variational Problems 1.5 Equilibrium Models: Boundary Value Problems 1.6 Diffusion Models (Stationary Heat Conduction) 1.7 Boundary Conditions 1.8 Second-Order Elliptic Variational Problems 1.9 Essential and Natural Boundary Conditions 2 Finite Element Methods (FEM) 2.2 Principles of Galerkin Discretization 2.3 Case Study: Linear FEM for Two-Point Boundary Value Problems 2.4 Case Study: Triangular Linear FEM in Two Dimensions 2.5 Building Blocks of General Finite Element Methods 2.6 Lagrangian Finite Element Methods 2.7 Implementation of Finite Element Methods 2.7.1 Mesh Generation and Mesh File Format 2.7.2 Mesh Information and Mesh Data Structures 2.7.2.1 L EHR FEM++ Mesh: Container Layer 2.7.2.2 L EHR FEM++ Mesh: Topology Layer 2.7.2.3 L EHR FEM++ Mesh: Geometry Layer 2.7.3 Vectors and Matrices 2.7.4 Assembly Algorithms 2.7.4.1 Assembly: Localization 2.7.4.2 Assembly: Index Mappings 2.7.4.3 Distribute Assembly Schemes 2.7.4.4 Assembly: Linear Algebra Perspective 2.7.5 Local Computations 2.7.5.1 Analytic Formulas for Entries of Element Matrices 2.7.5.2 Local Quadrature 2.7.6 Treatment of Essential Boundary Conditions 2.8 Parametric Finite Element Methods 3 FEM: Convergence and Accuracy 3.1 Abstract Galerkin Error Estimates 3.2 Empirical (Asymptotic) Convergence of Lagrangian FEM 3.3 A Priori (Asymptotic) Finite Element Error Estimates 3.4 Elliptic Regularity Theory 3.5 Variational Crimes 3.6 FEM: Duality Techniques for Error Estimation 3.7 Discrete Maximum Principle 3.8 Validation and Debugging of Finite Element Codes 4 Beyond FEM: Alternative Discretizations [dropped] 5 Non-Linear Elliptic Boundary Value Problems [dropped] 6 Second-Order Linear Evolution Problems 6.1 Time-Dependent Boundary Value Problems 6.2 Parabolic Initial-Boundary Value Problems 6.3 Linear Wave Equations 7 Convection-Diffusion Problems [dropped] 8 Numerical Methods for Conservation Laws 8.1 Conservation Laws: Examples 8.2 Scalar Conservation Laws in 1D 8.3 Conservative Finite Volume (FV) Discretization 8.4 Timestepping for Finite-Volume Methods 8.5 Higher-Order Conservative Finite-Volume Schemes | |||||
Lecture notes | The lecture will be taught in flipped classroom format: - Video tutorials for all thematic units will be published online. - Tablet notes accompanying the videos will be made available to the audience as PDF. - A comprehensive lecture document will cover all aspects of the course. | |||||
Literature | Chapters of the following books provide supplementary reading (detailed references in course material): * D. Braess: Finite Elemente, Theorie, schnelle Löser und Anwendungen in der Elastizitätstheorie, Springer 2007 (available online). * S. Brenner and R. Scott. Mathematical theory of finite element methods, Springer 2008 (available online). * A. Ern and J.-L. Guermond. Theory and Practice of Finite Elements, volume 159 of Applied Mathematical Sciences. Springer, New York, 2004. * Ch. Großmann and H.-G. Roos: Numerical Treatment of Partial Differential Equations, Springer 2007. * W. Hackbusch. Elliptic Differential Equations. Theory and Numerical Treatment, volume 18 of Springer Series in Computational Mathematics. Springer, Berlin, 1992. * P. Knabner and L. Angermann. Numerical Methods for Elliptic and Parabolic Partial Differential Equations, volume 44 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * S. Larsson and V. Thomée. Partial Differential Equations with Numerical Methods, volume 45 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * R. LeVeque. Finite Volume Methods for Hyperbolic Problems. Cambridge Texts in Applied Mathematics. Cambridge University Press, Cambridge, UK, 2002. However, study of supplementary literature is not important for for following the course. | |||||
Prerequisites / Notice | Mastery of basic calculus and linear algebra is taken for granted. Familiarity with fundamental numerical methods (solution methods for linear systems of equations, interpolation, approximation, numerical quadrature, numerical integration of ODEs) is essential. Important: Coding skills and experience in C++ are essential. Homework assignments involve substantial coding, partly based on a C++ finite element library. The written examination will be computer based and will comprise coding tasks. | |||||
401-0614-00L | Probability and Statistics | O | 5 credits | 2V + 2U | J. Teichmann | |
Abstract | Einführung in die Wahrscheinlichkeitstheorie und Statistik | |||||
Learning objective | a) Fähigkeit, die behandelten wahrscheinlichkeitstheoretischen Methoden zu verstehen und anzuwenden b) Probabilistisches Denken und stochastische Modellierung c) Fähigkeit, einfache statistische Tests selbst durchzuführen und die Resultate zu interpretieren | |||||
Content | Wahrscheinlichkeitsraum, Wahrscheinlichkeitsmass, Zufallsvariablen, Verteilungen, Dichten, Unabhängigkeit, bedingte Wahrscheinlichkeiten, Erwartungswert, Varianz, Kovarianz, Gesetz der grossen Zahlen, Zentraler Grenzwertsatz, grosse Abweichungen, Chernoff-Schranken, Maximum-Likelihood-Schätzer, Momentenschätzer, Tests, Neyman-Pearson Lemma, Konfidenzintervalle | |||||
Lecture notes | Lernmaterialien sind erhältlich auf https://metaphor.ethz.ch/x/2019/fs/401-0614-00L/ | |||||
Block G4 | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
529-0431-00L | Physical Chemistry III: Molecular Quantum Mechanics | O | 4 credits | 4G | F. Merkt | |
Abstract | Postulates of quantum mechanics, operator algebra, Schrödinger's equation, state functions and expectation values, matrix representation of operators, particle in a box, tunneling, harmonic oscillator, molecular vibrations, angular momentum and spin, generalised Pauli principle, perturbation theory, electronic structure of atoms and molecules, Born-Oppenheimer approximation. | |||||
Learning objective | This is an introductory course in quantum mechanics. The course starts with an overview of the fundamental concepts of quantum mechanics and introduces the mathematical formalism. The postulates and theorems of quantum mechanics are discussed in the context of experimental and numerical determination of physical quantities. The course develops the tools necessary for the understanding and calculation of elementary quantum phenomena in atoms and molecules. | |||||
Content | Postulates and theorems of quantum mechanics: operator algebra, Schrödinger's equation, state functions and expectation values. Linear motions: free particles, particle in a box, quantum mechanical tunneling, the harmonic oscillator and molecular vibrations. Angular momentum: electronic spin and orbital motion, molecular rotations. Electronic structure of atoms and molecules: the Pauli principle, angular momentum coupling, the Born-Oppenheimer approximation. Variational principle and perturbation theory. Discussion of bigger systems (solids, nano-structures). | |||||
Lecture notes | A script written in German will be available. The script is, however, no replacement for personal notes during the lecture and does not cover all aspects discussed. | |||||
151-0102-00L | Fluid Dynamics I | O | 6 credits | 4V + 2U | T. Rösgen | |
Abstract | An introduction to the physical and mathematical foundations of fluid dynamics is given. Topics include dimensional analysis, integral and differential conservation laws, inviscid and viscous flows, Navier-Stokes equations, boundary layers, turbulent pipe flow. Elementary solutions and examples are presented. | |||||
Learning objective | An introduction to the physical and mathematical principles of fluid dynamics. Fundamental terminology/principles and their application to simple problems. | |||||
Content | Phenomena, applications, foundations dimensional analysis and similitude; kinematic description; conservation laws (mass, momentum, energy), integral and differential formulation; inviscid flows: Euler equations, stream filament theory, Bernoulli equation; viscous flows: Navier-Stokes equations; boundary layers; turbulence | |||||
Lecture notes | Lecture notes (extended formulary) for the course are made available electronically. | |||||
Literature | Recommended book: Fluid Mechanics, Kundu & Cohen & Dowling, 6th ed., Academic Press / Elsevier (2015). | |||||
Prerequisites / Notice | Voraussetzungen: Physik, Analysis | |||||
529-0483-00L | Statistical Physics and Computer Simulation | O | 4 credits | 2V + 1U | S. Riniker, P. H. Hünenberger | |
Abstract | Principles and applications of statistical mechanics and equilibrium molecular dynamics, Monte Carlo simulation, Stochastic dynamics. Exercises using a MD simulation program to generate ensembles and subsequently calculate ensemble averages. | |||||
Learning objective | Introduction to statistical mechanics with the aid of computer simulation, development of skills to carry out statistical mechanical calculations using computers and interpret the results. | |||||
Content | Principles and applications of statistical mechanics and equilibrium molecular dynamics, Monte Carlo simulation, Stochastic dynamics. Exercises using a MD simulation program to generate ensembles and subsequently calculate ensemble averages. | |||||
Literature | will be announced in the lecture | |||||
Prerequisites / Notice | Since the exercises on the computer do convey and test essentially different skills as those being conveyed during the lectures and tested at the written exam, the results of a small programming project will be presented in a 10-minutes talk by pairs of students who had been working on the project. Additional information will be provided in the first lecture. | |||||
Core Courses from Group I (Modules) | ||||||
Module A | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
151-0116-00L | High Performance Computing for Science and Engineering (HPCSE) for CSE | W | 7 credits | 4G + 2P | P. Koumoutsakos, S. M. Martin | |
Abstract | This course focuses on programming methods and tools for parallel computing on multi and many-core architectures. Emphasis will be placed on practical and computational aspects of Bayesian Uncertainty Quantification and Machine Learning including the implementation of these algorithms on HPC architectures. | |||||
Learning objective | The course will teach - programming models and tools for multi and many-core architectures - fundamental concepts of Uncertainty Quantification and Propagation (UQ+P) for computational models of systems in Engineering and Life Sciences. - fundamentals of Deep Learning | |||||
Content | High Performance Computing: - Advanced topics in shared-memory programming - Advanced topics in MPI - GPU architectures and CUDA programming Uncertainty Quantification: - Uncertainty quantification under parametric and non-parametric modeling uncertainty - Bayesian inference with model class assessment - Markov Chain Monte Carlo simulation Machine Learning - Deep Neural Networks and Stochastic Gradient Descent - Deep Neural Networks for Data Compression (Autoencoders) - Recurrent Neural Networks | |||||
Lecture notes | https://www.cse-lab.ethz.ch/teaching/hpcse-ii_fs20/ Class notes, handouts | |||||
Literature | - Class notes - Introduction to High Performance Computing for Scientists and Engineers, G. Hager and G. Wellein - CUDA by example, J. Sanders and E. Kandrot - Data Analysis: A Bayesian Tutorial, D. Sivia and J. Skilling - An introduction to Bayesian Analysis - Theory and Methods, J. Gosh, N. Delampady and S. Tapas - Bayesian Data Analysis, A. Gelman, J. Carlin, H. Stern, D. Dunson, A. Vehtari and D. Rubin - Machine Learning: A Bayesian and Optimization Perspective, S. Theodorides | |||||
Prerequisites / Notice | Attendance of HPCSE I | |||||
Module B | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
401-3670-00L | High-Performance Computing Lab for CSE | W | 7 credits | 4G + 1P | R. Käppeli, O. Schenk | |
Abstract | This HPC Lab for CSE will focus on the effective exploitation of state-of-the-art HPC systems with a special focus on Computational Science and Engineering. The content of the course is tailored for 3th year Bachelor students interested in both learning parallel programming models, scientific mathematical libraries, and having hands-on experience using HPC systems. | |||||
Learning objective | A goal of the course is that students will learn principles and practices of basic numerical methods and HPC to enable large-scale scientific simulations. This goal will be achieved within six to eight mini-projects with a focus on HPC and CSE. | |||||
Content | Despite the success of parallel programming languages standardization, there is growing evidence that future computational science applications will depend on a computational software stack. The computational software approach in this HPC Lab is based on building and using small, simple software parts with flexible, easy-to-use interfaces. These simple software parts are toolkits - libraries containing basic services commonly needed by applications - and they build the underlying software layer for computational science and engineering applications. This course will introduce some of the many ways in which mathematical HPC software and numerical algorithms in computer science and mathematics play a role in computational science. The students will learn within several mini-projects how these algorithms and software can be used to enable large-scale scientific applications. It covers topics such as single core optimization for the memory hierarchy, parallel large-scale graph partititoning, parallel mathematical linear solvers, large-scale nonlinear optimization, and parallel software for the mathematical solution of nonlinear partial differential equations. The course takes both an algorithmic and a computing approach, focusing on techniques that have a high level of applicability to engineering, computer science, and industrial mathematics. | |||||
Lecture notes | Link to Moodle course: https://moodle-app2.let.ethz.ch/course/view.php?id=12315#section-0 | |||||
Prerequisites / Notice | Solid knowledge of the C programming language, parallel programming paradigms such as OpenMP and MPI, and numerical methods in scientific computing in the area of linear algebra, mathematical optimization, and partial differential equations. The students might continue to study these HPC techniques within the annual USI-CSCS summer school on "Effective High-Performance Computing & Data Analytics Summer School". The content of the course is tailored for intermediate graduate students interested in both learning parallel programming models, and having hands-on experience using HPC systems. Starting from an introductory explanation of the available systems at CSCS, the course will progress to more applied topics such as parallel programming on accelerators, scientific libraries, and deep learning software frameworks. The following topics will be covered: GPU architectures, GPU programming, Message passing programming model (MPI), Performance optimization and scientific libraries, interactive supercomputing, Python libraries, Introduction to Machine Learning, and GPU optimized framework. The Summer School will be held from July 13 to 24, 2020 at the Steger Center in Riva San Vitale, located in the Italian area of Switzerland. More information about the summer school is available here: Link | |||||
Core Courses from Group II Recognition of 252-0220-00L Introduction to Machine Learning as a core course implies that this course unit cannot be recognised for the robotics field of specialisation. | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-0232-00L | Software Engineering | W | 6 credits | 2V + 1U | F. Friedrich Wicker, H. Lehner | |
Abstract | This course introduces both theoretical and applied aspects of software engineering. It covers: - Software Architecture - Informal and formal Modeling - Design Patterns - Software Engineering Principles - Code Refactoring - Program Testing | |||||
Learning objective | The course has two main objectives: - Obtain an end-to-end (both, theoretical and practical) understanding of the core techniques used for building quality software. - Be able to apply these techniques in practice. | |||||
Content | While the lecture will provide the theoretical foundations for the various aspects of software engineering, the students will apply those techniques in project work that will span over the whole semester - involving all aspects of software engineering, from understanding requirements over design and implementation to deployment and change requests. | |||||
Lecture notes | no lecture notes | |||||
Literature | Will be announced in the lecture | |||||
252-0220-00L | Introduction to Machine Learning Limited number of participants. Preference is given to students in programmes in which the course is being offered. All other students will be waitlisted. Please do not contact Prof. Krause for any questions in this regard. If necessary, please contact studiensekretariat@inf.ethz.ch | W | 8 credits | 4V + 2U + 1A | A. Krause | |
Abstract | The course introduces the foundations of learning and making predictions based on data. | |||||
Learning objective | The course will introduce the foundations of learning and making predictions from data. We will study basic concepts such as trading goodness of fit and model complexitiy. We will discuss important machine learning algorithms used in practice, and provide hands-on experience in a course project. | |||||
Content | - Linear regression (overfitting, cross-validation/bootstrap, model selection, regularization, [stochastic] gradient descent) - Linear classification: Logistic regression (feature selection, sparsity, multi-class) - Kernels and the kernel trick (Properties of kernels; applications to linear and logistic regression); k-nearest neighbor - Neural networks (backpropagation, regularization, convolutional neural networks) - Unsupervised learning (k-means, PCA, neural network autoencoders) - The statistical perspective (regularization as prior; loss as likelihood; learning as MAP inference) - Statistical decision theory (decision making based on statistical models and utility functions) - Discriminative vs. generative modeling (benefits and challenges in modeling joint vy. conditional distributions) - Bayes' classifiers (Naive Bayes, Gaussian Bayes; MLE) - Bayesian approaches to unsupervised learning (Gaussian mixtures, EM) | |||||
Literature | Textbook: Kevin Murphy, Machine Learning: A Probabilistic Perspective, MIT Press | |||||
Prerequisites / Notice | Designed to provide a basis for following courses: - Advanced Machine Learning - Deep Learning - Probabilistic Artificial Intelligence - Seminar "Advanced Topics in Machine Learning" | |||||
Bachelor's Thesis If you wish to have recognised 402-2000-00L Scientific Works in Physics instead of 401-2000-00L Scientific Works in Mathematics (as allowed for the CSE programme), take contact with the Study Administration Office (www.math.ethz.ch/studiensekretariat) after having passed the performance assessment. | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
401-2000-00L | Scientific Works in Mathematics Target audience: Third year Bachelor students; Master students who cannot document to have received an adequate training in working scientifically. | O | 0 credits | Ö. Imamoglu, E. Kowalski | ||
Abstract | Introduction to scientific writing for students with focus on publication standards and ethical issues, especially in the case of citations (references to works of others.) | |||||
Learning objective | Learn the basic standards of scientific works in mathematics. | |||||
Content | - Types of mathematical works - Publication standards in pure and applied mathematics - Data handling - Ethical issues - Citation guidelines | |||||
Lecture notes | Moodle of the Mathematics Library: https://moodle-app2.let.ethz.ch/course/view.php?id=519 | |||||
Prerequisites / Notice | Directive Link | |||||
401-2000-01L | Lunch Sessions – Thesis Basics for Mathematics Students Details and registration for the optional MathBib training course: https://www.math.ethz.ch/mathbib-schulungen | Z | 0 credits | Speakers | ||
Abstract | Optional course "Recherchieren in der Mathematik" (held in German) by the Mathematics Library. | |||||
Learning objective | ||||||
402-2000-00L | Scientific Works in Physics Target audience: Master students who cannot document to have received an adequate training in working scientifically. Directive Link | W | 0 credits | C. Grab | ||
Abstract | Literature Review: ETH-Library, Journals in Physics, Google Scholar; Thesis Structure: The IMRAD Model; Document Processing: LaTeX and BibTeX, Mathematical Writing, AVETH Survival Guide; ETH Guidelines for Integrity; Authorship Guidelines; ETH Citation Etiquettes; Declaration of Originality. | |||||
Learning objective | Basic standards for scientific works in physics: How to write a Master Thesis. What to know about research integrity. | |||||
401-3990-18L | Bachelor's Thesis Only for Computational Science and Engineering BSc, Programme Regulations 2018. Successful participation in the course unit 401-2000-00L Scientific Works in Mathematics or 402-2000-00L Scientific Works in Physicsis is required. For more information, see www.math.ethz.ch/intranet/students/study-administration/theses.html | O | 14 credits | 30D | Supervisors | |
Abstract | The BSc thesis concludes the curriculum. In their BSc thesis, students should demonstrate their ability to carry out independent, structured scientific work. The purpose of the BSc thesis is to deepen knowledge in a certain subject and to bring students into closer contact with applications in an existing computational group. The BSc thesis requires approximately 420 hours of work. | |||||
Learning objective | In their Bsc thesis students should demonstrate their ability to carry out independent, structured scientific work. The purpose is to deepen knowledge in a certain subject and to enable students to collaborate in an existing scientific group to take a computational approach to problems encountered in applications. | |||||
Prerequisites / Notice | The supervisor responsible for the Bachelor thesis defines the task and determines the start and the submission date. The Bachelor thesis concludes with a written report. The Bachelor thesis is graded. | |||||
Bachelor Studies (Programme Regulations 2016) | ||||||
Basic Courses | ||||||
Block G2 The other course units within Block G2 are offered in the autumn semester. | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
252-0834-00L | Information Systems for Engineers Wird ab HS20 nur in Herbstsemester angeboten. | O | 4 credits | 2V + 1U | G. Fourny | |
Abstract | This course provides the basics of relational databases from the perspective of the user. We will discover why tables are so incredibly powerful to express relations, learn the SQL query language, and how to make the most of it. The course also covers support for data cubes (analytics). | |||||
Learning objective | This lesson is complementary with Big Data for Engineers as they cover different time periods of database history and practices -- you can even take both lectures at the same time. After visiting this course, you will be capable to: 1. Explain, in the big picture, how a relational database works and what it can do in your own words. 2. Explain the relational data model (tables, rows, attributes, primary keys, foreign keys), formally and informally, including the relational algebra operators (select, project, rename, all kinds of joins, division, cartesian product, union, intersection, etc). 3. Perform non-trivial reading SQL queries on existing relational databases, as well as insert new data, update and delete existing data. 4. Design new schemas to store data in accordance to the real world's constraints, such as relationship cardinality 5. Explain what bad design is and why it matters. 6. Adapt and improve an existing schema to make it more robust against anomalies, thanks to a very good theoretical knowledge of what is called "normal forms". 7. Understand how indices work (hash indices, B-trees), how they are implemented, and how to use them to make queries faster. 8. Access an existing relational database from a host language such as Java, using bridges such as JDBC. 9. Explain what data independence is all about and didn't age a bit since the 1970s. 10. Explain, in the big picture, how a relational database is physically implemented. 11. Know and deal with the natural syntax for relational data, CSV. 12. Explain the data cube model including slicing and dicing. 13. Store data cubes in a relational database. 14. Map cube queries to SQL. 15. Slice and dice cubes in a UI. And of course, you will think that tables are the most wonderful object in the world. | |||||
Content | Using a relational database ================= 1. Introduction 2. The relational model 3. Data definition with SQL 4. The relational algebra 5. Queries with SQL Taking a relational database to the next level ================= 6. Database design theory 7. Databases and host languages 8. Databases and host languages 9. Indices and optimization 10. Database architecture and storage Analytics on top of a relational database ================= 12. Data cubes Outlook ================= 13. Outlook | |||||
Literature | - Lecture material (slides). - Book: "Database Systems: The Complete Book", H. Garcia-Molina, J.D. Ullman, J. Widom (It is not required to buy the book, as the library has it) | |||||
Prerequisites / Notice | For non-CS/DS students only, BSc and MSc Elementary knowledge of set theory and logics Knowledge as well as basic experience with a programming language such as Pascal, C, C++, Java, Haskell, Python | |||||
Block G3 227-0014-10L Operating Systems and Networks was offered for the last time in the Spring Semester 2019. | ||||||
Number | Title | Type | ECTS | Hours | Lecturers | |
401-0674-00L | Numerical Methods for Partial Differential Equations Not meant for BSc/MSc students of mathematics. | O | 10 credits | 2G + 2U + 2P + 4A | R. Hiptmair | |
Abstract | Derivation, properties, and implementation of fundamental numerical methods for a few key partial differential equations: convection-diffusion, heat equation, wave equation, conservation laws. Implementation in C++ based on a finite element library. | |||||
Learning objective | Main skills to be acquired in this course: * Ability to implement fundamental numerical methods for the solution of partial differential equations efficiently. * Ability to modify and adapt numerical algorithms guided by awareness of their mathematical foundations. * Ability to select and assess numerical methods in light of the predictions of theory * Ability to identify features of a PDE (= partial differential equation) based model that are relevant for the selection and performance of a numerical algorithm. * Ability to understand research publications on theoretical and practical aspects of numerical methods for partial differential equations. * Skills in the efficient implementation of finite element methods on unstructured meshes. This course is neither a course on the mathematical foundations and numerical analysis of methods nor an course that merely teaches recipes and how to apply software packages. | |||||
Content | 1 Second-Order Scalar Elliptic Boundary Value Problems 1.2 Equilibrium Models: Examples 1.3 Sobolev spaces 1.4 Linear Variational Problems 1.5 Equilibrium Models: Boundary Value Problems 1.6 Diffusion Models (Stationary Heat Conduction) 1.7 Boundary Conditions 1.8 Second-Order Elliptic Variational Problems 1.9 Essential and Natural Boundary Conditions 2 Finite Element Methods (FEM) 2.2 Principles of Galerkin Discretization 2.3 Case Study: Linear FEM for Two-Point Boundary Value Problems 2.4 Case Study: Triangular Linear FEM in Two Dimensions 2.5 Building Blocks of General Finite Element Methods 2.6 Lagrangian Finite Element Methods 2.7 Implementation of Finite Element Methods 2.7.1 Mesh Generation and Mesh File Format 2.7.2 Mesh Information and Mesh Data Structures 2.7.2.1 L EHR FEM++ Mesh: Container Layer 2.7.2.2 L EHR FEM++ Mesh: Topology Layer 2.7.2.3 L EHR FEM++ Mesh: Geometry Layer 2.7.3 Vectors and Matrices 2.7.4 Assembly Algorithms 2.7.4.1 Assembly: Localization 2.7.4.2 Assembly: Index Mappings 2.7.4.3 Distribute Assembly Schemes 2.7.4.4 Assembly: Linear Algebra Perspective 2.7.5 Local Computations 2.7.5.1 Analytic Formulas for Entries of Element Matrices 2.7.5.2 Local Quadrature 2.7.6 Treatment of Essential Boundary Conditions 2.8 Parametric Finite Element Methods 3 FEM: Convergence and Accuracy 3.1 Abstract Galerkin Error Estimates 3.2 Empirical (Asymptotic) Convergence of Lagrangian FEM 3.3 A Priori (Asymptotic) Finite Element Error Estimates 3.4 Elliptic Regularity Theory 3.5 Variational Crimes 3.6 FEM: Duality Techniques for Error Estimation 3.7 Discrete Maximum Principle 3.8 Validation and Debugging of Finite Element Codes 4 Beyond FEM: Alternative Discretizations [dropped] 5 Non-Linear Elliptic Boundary Value Problems [dropped] 6 Second-Order Linear Evolution Problems 6.1 Time-Dependent Boundary Value Problems 6.2 Parabolic Initial-Boundary Value Problems 6.3 Linear Wave Equations 7 Convection-Diffusion Problems [dropped] 8 Numerical Methods for Conservation Laws 8.1 Conservation Laws: Examples 8.2 Scalar Conservation Laws in 1D 8.3 Conservative Finite Volume (FV) Discretization 8.4 Timestepping for Finite-Volume Methods 8.5 Higher-Order Conservative Finite-Volume Schemes | |||||
Lecture notes | The lecture will be taught in flipped classroom format: - Video tutorials for all thematic units will be published online. - Tablet notes accompanying the videos will be made available to the audience as PDF. - A comprehensive lecture document will cover all aspects of the course. | |||||
Literature | Chapters of the following books provide supplementary reading (detailed references in course material): * D. Braess: Finite Elemente, Theorie, schnelle Löser und Anwendungen in der Elastizitätstheorie, Springer 2007 (available online). * S. Brenner and R. Scott. Mathematical theory of finite element methods, Springer 2008 (available online). * A. Ern and J.-L. Guermond. Theory and Practice of Finite Elements, volume 159 of Applied Mathematical Sciences. Springer, New York, 2004. * Ch. Großmann and H.-G. Roos: Numerical Treatment of Partial Differential Equations, Springer 2007. * W. Hackbusch. Elliptic Differential Equations. Theory and Numerical Treatment, volume 18 of Springer Series in Computational Mathematics. Springer, Berlin, 1992. * P. Knabner and L. Angermann. Numerical Methods for Elliptic and Parabolic Partial Differential Equations, volume 44 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * S. Larsson and V. Thomée. Partial Differential Equations with Numerical Methods, volume 45 of Texts in Applied Mathematics. Springer, Heidelberg, 2003. * R. LeVeque. Finite Volume Methods for Hyperbolic Problems. Cambridge Texts in Applied Mathematics. Cambridge University Press, Cambridge, UK, 2002. However, study of supplementary literature is not important for for following the course. | |||||
Prerequisites / Notice | Mastery of basic calculus and linear algebra is taken for granted. Familiarity with fundamental numerical methods (solution methods for linear systems of equations, interpolation, approximation, numerical quadrature, numerical integration of ODEs) is essential. Important: Coding skills and experience in C++ are essential. Homework assignments involve substantial coding, partly based on a C++ finite element library. The written examination will be computer based and will comprise coding tasks. |
- Page 1 of 6 All