Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation

All Contributors

CosmoStat Tutorials

CosmoStat is committed to the philosophy of reproducible research, endeavouring to provide source code and data for all publications. In this spirit, we have additionally put significant effort into providing useful educational materials. The aim being to provide other researchers with an in-depth understanding of the various tools we use in our work.

We always welcome new tutorial requests, just click here.


  1. Career Development
  2. Cosmology
  3. Data Science
  4. Software Carpentries

Career Development

  1. Presentation Tips | github youtube
    Authors: @pettorin
    This tutorial provides tips on how to adapt presentations for different goals. The tutorial is mainly meant for scientists, but several tips can be useful for other types of talks.


  1. Cosmology with Python wrappers for Einstein-Boltzmann Codes | github youtube
    Authors: @santiagocasas
    This tutorial is comprised of a series of Jupyter notebooks with simple demonstrations and exercises on how to use CAMB and CLASS using python wrappers. The code is designed for non-experts in the field, therefore it includes relatively simple explanations of cosmological concepts. It intends to show a general overview of the things that are possible with Einstein-Boltzmann codes and python.

  2. Power Spectrum | github Open In Colab
    Authors: @b-remy, @dlanzieri, @EiffL
    This tutorial presents how to compute a power spectrum from a lensing map (in the flat sky approximation) and how to compute the corresponding theory spectrum using a cosmology code.

Data Science

  1. Introduction to Python | github youtube Binder
    Authors: @sfarrens, @santiagocasas
  • Tutorial 1: Beginner Topics The objective of this tutorial is to provide a first look at Python for beginners. The level is aimed at individuals with little or no experience whatsoever with Python. Experienced users are unlikely to benefit from this tutorial.
  • Tutorial 2: Intermediate and Advanced Topics The objective of this tutorial is to provide a more in-depth look at object-oriented and pythonic coding. The level is aimed at individuals with some experience with Python and good knowledge of basic object types. This tutorial will likely benefit all except the most advanced users.
  1. Python Optimisation and Memory Management | github
    Authors: @sfarrens
    This tutorial introduces some techniques for determinisitic and memory profiling of Python scripts, followed by some tips on how to implement some basic optimisation.

  2. C++ | github youtube
    Authors: @kansal9
    This tutorial aims to help newcomers learn C++ and solve their programming problems. It is assumed that readers are already familiar with C, or at least that they do not have any difficulty reading C code. In other words, those who have experience in C and peoΒ·ple who desire to quickly understand the features of modern C++ in a short period of time are well suited to follow this tutorial.

  3. Sparsity | github Binder
    Authors: @sfarrens
    This tutorial is comprised of a series of Jupyter notebooks that demonstrate how the tools implemented in sparsity work as well as showing the applicability of these tools to various simple problems.

  4. Low-Rank | github Binder
    Authors: @sfarrens
    The objective is to provide a beginner level introduction to the concept of low-rank approximation, in particular as a regularisation method for solving linear inverse problems.

  5. TensorFlow | github
    Authors: @zaccharieramzi, @EiffL

    • First Steps with TensorFlow: youtube Open In Colab
      A short introduction to the basic concepts underpinning TensorFlow, in particular automatic differentation.
    • MRI reconstruction with TensorFlow: youtube Open In Colab
      An illustration of how to use TensorFlow to solve a toy MRI reconstruction problem using classical iterative reconstructions, and a deep learning approach.
  6. Blind Source Separation | github Binder
    Authors: @RCarloniGertosio
    The goal of this tutorial is to present Blind Source Separation (BSS) problems and the main methods to solve them. This tutorial does not provide in-depth mathematical explanations for every methods; the emphasis is rather on illustrations and intuition.

  7. Introduction to MCMC and Bayesian inference | youtube Open In Colab
    Authors: @EiffL
    This tutorial is a practical introduction to Bayesian inference using emcee and touching on questions related to measurement errors and covariance.

  8. Brief tutorial on importance sampling | github
    Authors: @martinkilbinger
    One-page tutorial to show how a sample of points can be importance sampled to obtain a new sampled under a combined posterior distribution.

Software Carpentries

  1. Git Tutorial | github slides youtube
    Authors: @zaccharieramzi
    This tutorial will help you practice the basics of the GitHub flow and how to work on open source projects.

  2. Jekyll Tutorial | github youtube
    Authors: @sfarrens
    The objective of this tutorial is to introduce Jekyll and show you how to build a website that you can host on GitHub for free.

  3. Make and CMake Tutorial | github youtube
    Authors: @sfarrens
    This tutorial is designed to provide a first look at using Make and CMake to build C/C++ projects.

  4. Introduction to Docker for Data Scientists | github youtube
    Authors: @EiffL
    This tutorial demonstrates how to create a Docker container to distribute a complete Jupyter notebook environment.

  5. Bash and Scripting Tutorial for Researchers | github youtube Binder

    Authors: @fadinammour, @JulienNGirard(screen segment) This tutorial gives the key concepts of bash and its scripts to help researchers manage and process their data with more ease.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Samuel Farrens

πŸ–‹ πŸ€” 🚧

Santiago Casas

πŸ–‹ πŸ€”

Zaccharie Ramzi

πŸ–‹ πŸ€”

Francois Lanusse

πŸ€” 🚧 πŸ–‹

Vanshika Kansal



πŸ€” πŸ–‹


πŸ€” πŸ–‹

Julien N Girard




This project follows the all-contributors specification. Contributions of any kind welcome!


Educational materials for topics related to CosmoStat activities.






No releases published


No packages published