Algorithms for Scientific Computing - Summer 15

From Sccswiki
Jump to navigation Jump to search
Summer 2015
Michael Bader
Time and Place
Mondays 8:30-10:00 (MI HS 3) and Fridays 10-12 (MI HS 2), starting April 13 (at 9.00!)
Tutorial: Wednesdays 10-12, room MI 00.13.009A
see module description (IN2001) in TUMonline
Kilian Röhner, Denis Jarema
repeat exam (written) on Thursday, Sep 24, 14.00 (MW 0350), 1 handwritten DinA4 page (both sides) is the only allowed helping material
Semesterwochenstunden / ECTS Credits
6 SWS (4V + 2Ü) / 8 Credits
Algorithms of Scientific Computing

News & Announcements

  • due to the student assembly, the tutorial on Apr 29 will be skipped

What's ASC about?

Many applications in computer science require methods of (prevalently numerical) mathematics - especially in science and engineering, of course, but as well in surprisingly many areas that one might suspect to be directly at the heart of computer science:

Consider, for example, Fourier and wavelet transformations, which are indispensable in image processing and image compression. Space filling curves (which have been considered to be "topological monsters" and a useless theoretical bauble at the end of the 19th century) have become important methods used for parallelization and the implementation of data bases. Numerical methods for minimization and zero-setting are an essential foundation of Neural Networks in machine learning.

Essentially, these methods come down to the question of how to represent and process information or data as (multi-dimensional) continuous functions. Algorithms of Scientific Computing (former Algorithmen des Wissenschaftlichen Rechnens) provides a generally understandable and algorithmically oriented introduction into the foundations of such mathematical methods. Topics are:

  • The fast Fourier transformation (FFT) and some of its variants:
    • FCT (Fast Cosine Transform), real FFT, Application for compression of video and audio data
  • Space filling curves (SFCs):
    • Construction and properies of SFCs
    • Application for parallelization and to linearize multidimensional data spaces in data bases
  • Hierarchical and recursive methods in scientific computing
    • From Archimede's quadrature to the hierarchical basis
    • Cost vs. accuracy
    • Sparse grids, wavelets, multi-grid methods


Lecture slides and worksheets will be published here as soon as they become available. For future lectures, the respective slides from summer 2014 will be linked.

Fast Fourier Transform

Hierarchical Methods

Space-Filling Curves

Sparse Grids

Worksheets and Solutions

Number Topic Worksheet Date Solution
1 Discrete Fourier Transform I Worksheet 1 Python Introduction 15.4.2015 solution 1 IPyNb solution 1
2 Discrete Fourier Transform II Worksheet 2 IPyNb template 2 22.4.2015 solution 2 IPyNb solution 2
3 Discrete Cosine Transformation Worksheet 3 IPyNb template 3 6.5.2015 solution 3 IPyNb solution 3
4 Discrete Sine Transformation
Numerical Quadrature for One-dimensional Functions
Worksheet 4a
Worksheet 4b py/ipynb
13.5.2015 solution 4a solution 4b
5 Archimedes Quadrature and Haar Wavelets Worksheet 5 py/ipynb 20.5.2015 solution 5 Archimedes solution 5 Haar Wavelets
7 Grammars for Space-filling Curves Worksheet 7 IPyNb template 7 3.6.2015 solution 7 IPyNb solution 7
8 Arithmetization of Space-filling Curves Worksheet 8 IPyNb template 8 10.6.2015 solution 8 IPyNb solution 8
9 Refinement Trees and Parallelization with Space-Filling Curves Worksheet 9 IPyNb template 9 17.6.2015 solution 9 IPyNb solution 9
10 Multi-dimensional Quadrature Worksheet 10, exercise10.ods 24.6.2015 solution10.pdf
11 Hierarchization in Higher Dimensions, Spatial Adaptivity Worksheet 11, py/ipynb 1.7.2015 IPyNb solution 11 Solution Ex. 2
12 Spatial Adaptivity (Implementation), Combination Technique Worksheet 12, py/ipynb 8.7.2015 IPyNb solution 12 Solution Ex. 2

IPython Notebook

  • If you want to use a local installation of IPython Notebook on your laptop or home computer, just refer to the IPython Notebook website on how to install IPython Notebook on Linux, Windows or MAC platforms
    • If you install IPython Notebook for Windows, it might happen that starting it from the "Start" menue will open an IPython server website, but that you cannot create or import any new Python notebooks. In that case, try to start IPython Notebook from the command line via "ipython notebook --notebook-dir=.\" (from the directory where you want to store the Python notebooks); you can also create a batch file for this (download example, place it in the desired directory).

Repeat Exam

  • type: written exam, duration: 90 min
  • time, date, room: Thu, Sep 24, 2015, 14.00-15.45 (MW 0350)
    • note that the exam will start precisely on 14.00; please be in the exam room by 13.45, at the latest!
  • please make sure that you register in TUMonline
  • helping material:
    • you may use one hand-written sheet of paper (size A4, front and back may be used)
    • no other helping material of any kind is allowed

Literature and Additional Material

Books that are labeled as "available as e-book" can be accessed as e-book vi the TUM library - see the ebooks website of the library for details how to access the books.

Fast Fourier Transform:

The lecture is oriented on:

Hierarchical Methods and Sparse Grids


Space-filling Curves: