Scientific Computing II - Summer 16: Difference between revisions

From Sccswiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:
| credits = 6 SWS (4V + 2Ü) / 8 Credits
| credits = 6 SWS (4V + 2Ü) / 8 Credits
| audience = see [https://campus.tum.de/tumonline/WBMODHB.wbShowMHBReadOnly?pKnotenNr=456346&pOrgNr=14189 module description (IN2001)] in TUMonline  
| audience = see [https://campus.tum.de/tumonline/WBMODHB.wbShowMHBReadOnly?pKnotenNr=456346&pOrgNr=14189 module description (IN2001)] in TUMonline  
| tutorials = [[Kilian_Röhner, M.Sc.|Kilian Röhner]], [[Denis Jarema, M.Sc. (hons)|Denis Jarema]]
| tutorials = [[Emily Mo-Hellenbrand, M.Sc.]], [[Angelika Schwarz, M.Sc.]]
| exam = repeat exam (written) on '''Thursday, Sep 24, 14.00 (MW 0350)''', 1 handwritten DinA4 page (both sides) is the only allowed helping material
| exam = tba
| tumonline = [https://campus.tum.de/tumonline/wblv.wbShowLvDetail?pStpSpNr=950180532 Algorithms of Scientific Computing]
| tumonline =  
}}
}}


== News & Announcements ==
== News & Announcements ==


* due to the student assembly, the '''tutorial on Apr 29 will be skipped'''
<!--
* repeat exam review: date ('''Mo October 28''', 2013), time ('''13.00-14.00'''), room ('''02.07.023''')
* Instead of a last tutorial, there will be a Q&A session with both tutors on Wednesday, July 17, 10-11.30am
* The time and place of the <b>exam</b> are announced above.
* On July 10/11, lecture and tutorial will be switched:
** '''July 10, 10-12: lecture in MI 02.07.023'''
** '''July 11, 10-12: tutorial in MI 01.10.011'''
* The '''Exam Review''' will take place on August 7th, 1pm - 2pm in room MI 02.05.058.
* Wed, Oct 15, '''10.15 - 11.00''' (MI 02.05.058)
* '''June 2&4: Change of lecture and tutorial'''
** Monday, June 2: tutorial in room MI 02.07.023
** Wednesday, June 4: lecture in room MI 02.07.023
* '''Easter Break:'''
** the lectures on Fri, Apr 18, and Mon, Apr 21, will be cancelled due to the Easter holidays
** the tutorial on Wed, Apr 23, will be skipped due to the student assembly (Math/Phys/Info)
-->


== What's ASC about? ==
== What's ASC about? ==
Line 50: Line 33:
** Sparse grids, wavelets, multi-grid methods
** Sparse grids, wavelets, multi-grid methods


== Material ==
== Lecture Slides and Supplementary Materials ==


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


* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/introduction.pdf Introduction] - Apr 13


=== Fast Fourier Transform ===
== Worksheets and Solutions ==


* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/dft.pdf Discrete Fourier Transform (DFT)] - Apr 17
Assignment sheets will be posted here. All in good time.
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/fft.pdf Fast Fourier Transform (FFT)] - Apr 17, 20
** Further Material: [http://www.fftw.org/ Website of FFTW] (a fast library to compute the DFT); in particular, see the chapter on [http://cnx.org/content/m16336/latest/ Implementing FFTs in Practice] by the FFTW developers
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/rdft.pdf FFT on real data] - Apr 24, 27
** additional info: paper [http://www.jstor.org/stable/2008098 Paul N. Swarztrauber - Symmetric FFTs] (access via LRZ proxy necessary, or see the [http://www.cisl.ucar.edu/css/staff/pauls/papers/symfft/mscpt.pdf preprint on the NCAR website])
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/dct.pdf Quarter-Wave-Fourier Transform and Discrete Cosine Transform] - Apr 27, May 4
** [http://www.mathworks.com/matlabcentral/fileexchange/4328-jpeg-compression matlab central: jpeg compression]
** an embarrassingly simple simple JPEG-simulator [http://www5.in.tum.de/lehre/vorlesungen/asc/ss12/JPEG_Sim.zip (Java program)]
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/dst.pdf Discrete Sine Transform] - May 4
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/fastPoisson.pdf Fast Poisson Solvers] - May 8
 
=== Hierarchical Methods ===
 
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/data_mining.pdf Towards Data Mining: Approximation and Classification] - May 11
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/archimedes_1d.pdf Archimedes' Quadrature 1D] - May 15
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/hierbas_1D.pdf Hierarchical Basis in 1D] - May 18
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/wavelets.pdf Wavelets] - May 18, 22, 27
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/fem_asc.pdf Finite Element Methods (parts I-III)] - May 29
** additional material: [http://www5.in.tum.de/lehre/vorlesungen/asc/ss13/Maple/fe.mws Maple worksheet for Poisson-FEM] ([http://www5.in.tum.de/lehre/vorlesungen/asc/ss12/Maple/fe.pdf and as PDF])
 
=== Space-Filling Curves ===
 
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/sfc_orders.pdf From Quadtrees to Space-Filling Order] - June 1
** [http://www5.in.tum.de/lehre/vorlesungen/asc/ss14/Hilbert_Plotter.ipynb IPython Notebook script for Hilbert curve grammar]
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/sfc_mapping.pdf Hilbert Curve (Construction, Definition, and Arithmetisation)] - Jun 5
** [http://www5.in.tum.de/lehre/vorlesungen/asc/ss14/sfc_hilbert_arith.ipynb IPython Notebook script for Hilbert curve arithmetization]
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/sfc_3Dcurves.pdf 2D and 3D Space-filling Curves] - Jun 8, 12
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/sfc_parallel.pdf Space-filling curves and parallelisation] - Jun 15, 19
** [http://www5.in.tum.de/lehre/vorlesungen/asc/ss14/sfc_hilbert_plotter_adp.ipynb IPython Notebook script Hilbert curve on a quadtree]
 
=== Sparse Grids ===
 
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/archimedes_dDim.pdf Archimedes Quadrature in d Dimensions] - Jun 22, 26
** further material (from lecture in 2012): [http://www5.in.tum.de/lehre/vorlesungen/asc/ss12/Maple/archimedes_dDim.mws Maple worksheet for d-Dim. archimedes] ([http://www5.in.tum.de/lehre/vorlesungen/asc/ss12/Maple/archimedes_dDim.pdf and as PDF])
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/hierarch_dDim.pdf Hierarchical Basis in d Dimensions] - Jun 26, 29
** [http://www5.in.tum.de/lehre/vorlesungen/asc/ss13/hierarch_integral_representation.pdf "separate proof"] for estimating surpluses (outlook, Jun 29)
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/sparsegrids_algo.pdf Data Structures for Sparse Grids] - Jul 6
* [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/fem_asc.pdf Finite Element Methods (part IV)] - Jul 10
 
== Worksheets and Solutions ==
{|class=wikitable
|-
! '''Number''' !! '''Topic''' !! '''Worksheet''' !! '''Date''' !! '''Solution'''
|-
| 1 || Discrete Fourier Transform I || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt1/blatt1.pdf Worksheet 1] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt1/Python.Introduction.pdf Python Introduction] || 15.4.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt1/solution1.pdf solution 1] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt1/Worksheet_1.ipynb IPyNb solution 1]


|-
| 2 || Discrete Fourier Transform II || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt2/blatt2.pdf Worksheet 2] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt2/Worksheet_2-Template.ipynb IPyNb template 2] || 22.4.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt2/solution2.pdf solution 2] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt2/Worksheet_2.ipynb IPyNb solution 2]
|-
| 3 || Discrete Cosine Transformation || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt3/blatt3.pdf Worksheet 3] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt3/Worksheet_3-Template.ipynb IPyNb template 3] || 6.5.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt3/solution3.pdf solution 3] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt3/Worksheet_3.ipynb IPyNb solution 3]
|-
| 4 || Discrete Sine Transformation <br> Numerical Quadrature for One-dimensional Functions || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt4/blatt4_a.pdf Worksheet 4a] <br> [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt4/blatt4_b.pdf Worksheet 4b] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt4/Worksheet_4b.tar.gz py/ipynb] || 13.5.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt4/solution4_a.pdf solution 4a] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt4/Worksheet_4b-solution.tar.gz solution 4b]
|-
| 5 || Archimedes Quadrature and Haar Wavelets || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt5/blatt5.pdf Worksheet 5] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt5/Worksheet_5.tar.gz py/ipynb] || 20.5.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt5/Worksheet_5_solution.tar.gz solution 5 Archimedes] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt5/solution_5_haar.pdf solution 5 Haar Wavelets]
|-
| 7 || Grammars for Space-filling Curves || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt7/blatt7.pdf Worksheet 7] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt7/Worksheet_7-Template.ipynb IPyNb template 7] || 3.6.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt7/solution7.pdf solution 7] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt7/Worksheet_7.ipynb IPyNb solution 7]
|-
| 8 ||  Arithmetization of Space-filling Curves || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt8/blatt8.pdf Worksheet 8] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt8/Worksheet_8-Template.ipynb IPyNb template 8] || 10.6.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt8/solution8.pdf solution 8] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt8/Worksheet_8.ipynb IPyNb solution 8]
|-
| 9 || Refinement Trees and Parallelization with Space-Filling Curves || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt9/blatt9.pdf Worksheet 9] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt9/Worksheet_9-Template.ipynb IPyNb template 9] || 17.6.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt9/solution9.pdf solution 9] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt9/Worksheet_9.ipynb IPyNb solution 9]
|-
| 10 || Multi-dimensional Quadrature || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt10/blatt10.pdf Worksheet 10], [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt10/arch2d_exercise.ods exercise10.ods] || 24.6.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt10/arch2d.pdf solution10.pdf]
|-
| 11 || Hierarchization in Higher Dimensions, Spatial Adaptivity || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt11/blatt11.pdf Worksheet 11], [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt11/Worksheet_11.tgz py/ipynb] || 1.7.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt11/Worksheet_11_2015_solution.py.tar.gz IPyNb solution 11] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt11/solution11.pdf Solution Ex. 2]
|-
| 12 || Spatial Adaptivity (Implementation), Combination Technique || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt12/blatt12.pdf Worksheet 12], [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt12/Worksheet_12_2015.tar.gz py/ipynb] || 8.7.2015 || [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt12/Worksheet_12_2015_solution.tar.gz IPyNb solution 12] [http://www5.in.tum.de/lehre/vorlesungen/asc/ss15/blatt12/solution12.pdf Solution Ex. 2]
|}


=== IPython Notebook ===
=== IPython Notebook ===
Line 131: Line 47:
** 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 ([http://www5.in.tum.de/lehre/vorlesungen/asc/ss13/startNotebook.bat download example], place it in the desired directory).
** 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 ([http://www5.in.tum.de/lehre/vorlesungen/asc/ss13/startNotebook.bat download example], place it in the desired directory).


== Repeat Exam ==
<!-- * exam review: Tue, Aug 4, '''10.00 - 11.30''' (MI 02.05.058) -->
* 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 ==
== 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 [http://www.ub.tum.de/ebooks ebooks website] of the library for details how to access the books.
Books that are labeled as "available as e-book" can be accessed as e-book via the TUM library - see the [http://www.ub.tum.de/ebooks ebooks website] of the library for details on how to access the books.


=== Fast Fourier Transform: ===
=== Fast Fourier Transform: ===

Revision as of 12:30, 18 December 2015

Term
Summer 2016
Lecturer
Michael Bader
Time and Place
Lecture: tba
Tutorial: tba
Audience
see module description (IN2001) in TUMonline
Tutorials
Emily Mo-Hellenbrand, M.Sc., Angelika Schwarz, M.Sc.
Exam
tba
Semesterwochenstunden / ECTS Credits
6 SWS (4V + 2Ü) / 8 Credits
TUMonline



News & Announcements

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 Supplementary Materials

Lecture slides will be published here as soon as they become available.


Worksheets and Solutions

Assignment sheets will be posted here. All in good time.


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).


Literature and Additional Material

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

Fast Fourier Transform:

The lecture is oriented on:

Hierarchical Methods and Sparse Grids

Wavelets

Space-filling Curves: