This repository contains all notebooks, data-access examples, and analysis workflows for the hands-on component of the Joint ISRO–ESA Heliophysics Workshop on Aditya-L1, Solar Orbiter, and Proba-3 (January 19–23, 2026, Thiruvananthapuram, India).
The goal is to provide a unified, Python-based environment where participants can explore and analyse heliophysics data from multiple missions using SunPy, mission-specific tools, and coordinated multi-instrument workflows.
Introductory notebooks contributed by each instrument team, including:
- Data access examples
- Basic workflows and visualisations
- Instrument-specific context
Instruments covered include:
- Solar Orbiter: EUI, STIX, SPICE, PHI, Metis, MAG, SWA, EPD
- Aditya-L1: SUIT, VELC, HEL1OS, ASPEX, SoLEXS, MAG
- Proba-3: ASPIICS
Focused, multi-mission analysis examples exploring:
- Solar flares
- Coronal structures and eruptions in the corona with multi-mission coronagraphs
- In-situ heliospheric variability (solar wind & energetic particles)
- Shared Python environment (
env/) - Utility functions and documentation links
Each instrument team is invited to contribute one or more Jupyter notebooks for the hands-on sessions. This section explains how to add your notebook to the repository.
A typical notebook should include:
- A short instrument introduction
- How to access data (examples + links)
- A basic plotting / quicklook example
- Suggested exercises or exploration ideas
- Links to documentation
Feel free to adapt or extend your tutorial as needed.
Most contributors will add notebooks locally and then open a Pull Request on GitHub.
Here is the simplest workflow:
Open the main repo:
https://github.com/ISRO-ESA-Heliophysics-Workshop/hands-on-materials
Click Fork (top right).
This creates a personal copy of the repository under your GitHub account.
On your own computer:
git clone https://github.com/<your-username>/hands-on-materials.git
cd hands-on-materialsUse a new branch for your contribution:
git checkout -b add-<instrument>-notebook
Example:
git checkout -b add-stix-notebook
Place your notebook inside the appropriate directory:
solar-orbiter/<instrument>/aditya-l1/<instrument>/proba-3/aspiics/
Example:
solar-orbiter/stix/stix_intro.ipynb
If your instrument folder is missing, feel free to create it.
Run:
git add .
git commit -m "Add <instrument> tutorial notebook"
git push origin add-<instrument>-notebook
On GitHub, open your fork.
A banner should appear offering “Open a Pull Request” — click it.
Your PR description should include:
- A brief overview of what the notebook covers
- Any environment notes or extra dependencies
- Links to relevant documentation
- Any known issues or potential follow-ups
We review PRs regularly and merge them as they come in.
To keep the repository lightweight:
- Do NOT upload large datasets.
- Instead:
- provide download links, or
- include code to retrieve data from archives (SOAR, SUIT, ISRO, Proba-3), or
- include only very small sample files (<1–2 MB) if necessary.
Large data should be downloaded at runtime.
Before submitting, please:
- Run your notebook from start to finish
- Ensure all cells execute without errors
- Confirm that plots and outputs appear correctly
- Avoid obscure or heavy Python packages if possible
In your Pull Request, please list the Python packages you used, e.g.:
Packages used: numpy, matplotlib, astropy, sunpy, ndcube
This helps the organisers keep the shared environment up to date.
You do not need to understand Conda or environments — just list the packages, and we will handle the rest.
If your notebook uses repeated helper functions, you may add:
solar-orbiter/<instrument>/helpers.py
(or the equivalent folder for your mission).
This keeps notebooks clean and easier for participants to follow.
If you run into any issues:
- Email me: laura.hayes@dias.ie
- Open an Issue in this repository, or
- Contact the workshop organisers
We are happy to help ensure your material integrates smoothly into the hands-on programme.