Tutorials
This section contains tutorials and examples for using Goku-ELG.
Available Notebooks
The emu/notebooks/ directory contains many Jupyter notebooks demonstrating various features:
Halo Mass Function
hmf.ipynb: Basic HMF computations
hmf_emu.ipynb: Training HMF emulators
hmf_emu_multifid.ipynb: Multi-fidelity HMF emulation
hmf_comp_kernel.ipynb: Comparing different GP kernels
Correlation Functions
xi_on_grid.ipynb: Computing correlation functions on a grid
fft_corr.ipynb: FFT-based correlation function computations
xi_dim_reduc_gp.ipynb: Dimensionality reduction for correlation functions
Power Spectrum
power.ipynb: Linear power spectrum calculations
p_m.ipynb: Matter power spectrum
pk.ipynb: Power spectrum emulation
Galaxy Clustering
corr_for_pigs.ipynb: Galaxy correlation functions
single_fid.ipynb: Single-fidelity emulation
false_positive.ipynb: Validation and testing
Advanced Topics
play_gpflow.ipynb: Exploring GPflow features
linear_SVGP.ipynb: Stochastic Variational GPs
additive_gp.ipynb: Additive Gaussian Processes
pca_weighted.ipynb: Weighted PCA for dimensionality reduction
Tutorial Structure
Each tutorial covers:
Objective: What you’ll learn
Prerequisites: Required knowledge and packages
Step-by-step guide: Detailed instructions with code
Results: Expected outputs and interpretation
Exercises: Practice problems (where applicable)
Getting Started
We recommend following the tutorials in this order:
Basic Usage Tutorial - Start here if you’re new to Goku-ELG
HMF Emulation Tutorial - Learn about HMF emulation
Galaxy Clustering Tutorial - Compute galaxy clustering statistics
Advanced Topics - Dive into advanced features
Running the Notebooks
To run the example notebooks:
cd emu/notebooks
jupyter notebook
Then navigate to the notebook you want to explore.
Contributing Tutorials
We welcome tutorial contributions! If you’ve developed a useful workflow or example:
Fork the repository
Add your notebook to
emu/notebooks/Document it clearly with markdown cells
Submit a pull request
Questions?
If you have questions about the tutorials:
Open an issue on GitHub
Check the API Reference for detailed API documentation
Contact the developers (see Citation)