# Meeting Ludvig Lindahl Master Thesis 2023-01-17
## Formalities
- Proposal: Finished
- Planning report - Overleaf document: https://www.overleaf.com/project/639849f9adb6c796706bdaf8
- Planning report deadline Jan 31st
## Communication
- Try to meet in-person ~twice a week
- Other days, communicate over chat or zoom for 5-15 minutes, more if needed.
- Room/division access - check with Paul (Leonard)
- Check flight tickets to PSI (Leonard)
- Join SASTT meetings on Tuesday Jan 24:th (Ludvig)
## Planning report
### Project outline
- First step: Sphere discretization
- - Approach one: simple (Fibonacci Lattice, Kurihara mesh)
- - Approach two: optimal (more complicated; optimize for example nearest-neighbour distance)
- - Approach three: Data-driven (discretization tries to fit to data distribution)
- Second step: Sphere representation
- - Approach one: Nearest-neighbour/binning
- - Approach two: Correlation-length (spherical Gaussian or similar)
- - Approach three: Zonal functions/spherical harmonic delta functions (in principle wavelets)
- - Approach four: More exotic approaches (compact splines, needlets, etc)
- Third step: Implementation and testing
- - Test on experimental data, compare to spherical harmonics
- - Test on simulated data, compare to spherical harmonics
- - Simulate data represented using the above approaches?
- - Look at convergence as well as qualitative factors (apparent artefacts, what type of functions can be represented, etc)
### Getting started
- Clone from mumott repository branch `numba` and run setup.py
- - Look at Jupyter notebooks under `tutorials`, especially `Reconstruct and visualize` and `Projection and adjoint` tutorials
- - Download simulated data set with `wget https://zenodo.org/record/7326784/files/saxstt_dataset_M.h5` and run
- Packages for Python environment (Python 3.8 or 3.9 should both work):
``
colorcet
colorspacious
matplotlib
h5py
numpy
scipy
numba
ipython
jupyter
jupytext
jupyterlab
notebook
ipywidgets
ipympl
ipykernel
ipyevents
mayavi
PyQt5
``
- See if everything works for you
- We may need to look into a container environment to run rendering remotely
Proceed from results of above attempt to run code.