Search result: Catalogue data in Spring Semester 2019

Computational Science and Engineering Bachelor Information
Bachelor Studies (Programme Regulations 2012 and 2016)
Core Courses
NumberTitleTypeECTSHoursLecturers
151-0116-00LHigh Performance Computing for Science and Engineering (HPCSE) for CSE Information O7 credits4G + 2PP. Koumoutsakos, S. M. Martin
AbstractThis 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.
ObjectiveThe 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
ContentHigh 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 notesLink
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, Devinderjit Sivia
- Machine Learning: A Bayesian and Optimization Perspective, S. Theodorides
Prerequisites / NoticeAttendance of HPCSE I
252-0232-00LSoftware Design Information O6 credits2V + 1UD. Gruntz
AbstractThe course Software Design presents and discusses design patterns regularly used to solve problems in object oriented design and object oriented programming. The presented patterns are illustrated with examples from the Java libraries and are applied in a project.
ObjectiveThe students
- know the principles of object oriented programming and can apply these.
- know the most important object oriented design patterns.
- can apply design patterns to solve design problems.
- discover in a given design the use of design patterns.
ContentThis course makes an introduction to object oriented programming. As programming language Java is used. The focus of this course however is object oriented design, in particular design patterns. Design patterns are solutions to recurring design problems. The discussed patterns are illustrated with examples from the Java libraries and are applied in the context of a project.
Lecture notesno script
Literature- Gamma, Helm, Johnson, Vlissides; Design Patterns: Elements of Reusable Object-Oriented Software; Prentice Hall;ISBN 978-0201633610
- Freeman, Freeman, Sierra; Head First Design Patterns, Head First Design Patterns; O'Reilly; ISBN 978-0596007126
Prerequisites / NoticeThe course Software Design is designed for students in the computational sciences program, but is open to students of all programs. The precondition is, that participants have knowledge in structured programming (e.g. with C, C++, C# or Java).
  •  Page  1  of  1