Laboratory Class in Computational Methods
Beschrijving
Content
This course is organized by Jason Frank, j.e.frank@uu.nl.
Schedule. Friday 13:15-17:00.
This course offers mathematical theory and practical experience with computational modelling, in particular with data. The course combines topics from analysis, numerical mathematics, stochastics/statistics and modelling, but focuses on the practical side: students learn how to translate mathematical concepts into computer code. The course fits the Applied Mathematics track of the Mathematical Sciences master's program.
Learning goals. This course covers the trajectory from modelling and analysis to implementation, experimentation and reporting. The central goal of the course is to develop computational modelling skills.
The student will learn how to convert theoretical concepts to implementations in code, with attention to efficiency, experiment with different ideas, and tune their algorithmic parameters. A part of the course is to learn how to report on the results that are obtained with experimentation. The student will work on their writing skills, be able to explain their findings coherently and comprehensibly, and be able to discuss them within a wider body of scientific literature.
Content. Topics covered in the course may vary, but some examples are:
- Sampling methods and Monte Carlo integration
- High dimensional data: reduction, interpolation, integration
- Deriving dynamical models from time series data
- Distance measures on distributions and generative modelling
- Bayesian inference and data assimilation
- Rare event sampling
The course is guided by theory, example code and assignments. A subset of the assignments will be handed in for grading. After the students have completed the assignments and code, they need to investigate the theoretical findings by performing experiments with the programs they have written.
Prerequisites. Basic programming knowledge in a procedural or object-oriented language, for example in C, Python or Matlab. Knowledge of numerical methods, in particular numerical errors and integration techniques may prove helpful but is not required.
Format. The course consists of weekly sessions, each of a four-hour duration. The first 60-90 minutes is lectured, and the remaining time is used by the students to work on their code assignments or reports. Students are to bring their own laptops to class. Course material will be provided online.
Examination. The final grade is based on a series of 4-5 monthly projects involving coding and experimentation, submitted in report form. Students are not allowed to use (partial) text or code that is written by their fellow students. Proper quotation and citation must be provided at all times, including modified source snippets found on-line. Reports and hand-ins have to be written in English, and reports must be typesetted with LaTeX.
Evaluation matrix.
| Reports 100% | |
| Theory: Shows understanding of concepts in analysis and probability theory/statistics, numerical analysis and Monte-Carlo methods. | x |
| Implementation: Is able to develop advanced algorithms in Python. Is able to use external libraries written by third parties, and know how to write accessible code. | x |
| Experimentation: Is able to obtain insight on how to judge on the quality and applicability of methods and their implementations. | x |
| Writing: Is able to write coherent and concise reports. | x |
Reviews0 reviews
Heb jij dit vak gevolgd?
Deel je ervaring met toekomstige studenten. Inloggen met je Universiteit Utrecht mailadres duurt één minuut.
Schrijf een review