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