OASIS is a modular and open-access Python toolbox for processing multi-frequency GNSS data and computing ionospheric indices. It was developed to overcome limitations of proprietary or non-standardized tools and to promote scientific transparency and reproducibility in ionospheric research.
OASIS automates the detection and correction of cycle slips and outliers, performs arc-wise geometry-free (GF) leveling, and derives ionospheric indices directly from calibrated observations, without relying on external products such as Differential Code Biases (DCBs) or vertical TEC maps.
- Processes RINEX v2 and v3 files with 15- or 30-second sampling rates.
- Supports GPS and GLONASS constellations (Galileo and BeiDou coming soon).
- Fully autonomous detection of data gaps, cycle slips, and outliers.
- Arc-wise geometry-free leveling of carrier-phase combinations.
- Computation of ionospheric indices: ROTI, ΔTEC, and SIDX.
- No dependency on DCBs or global TEC maps.
- Python 3.8 or higher
- Required libraries (see
requirements.txtfor exact versions):numpypandasmatplotlibscipyastropygeorinexpyproj
To install all dependencies at once:
pip install -r requirements.txt- Input: RINEX and SP3 files.
- Orbit Interpolation: SP3 files are parsed and interpolated.
- IPP Calculation: Computes the coordinates of the ionospheric piercing point.
- MW Combination: Melbourne-Wübbena combination is used to identify cycle slips.
- Screening:
- Initial residual screening using ∆MW and polynomial fitting.
- Refined residual analysis defines mini-arcs by sign changes.
- Geometry-Free Leveling: Performed arc-wise on valid combinations.
- Index Derivation:
- ROTI: Standard deviation of ROT (rate of TEC).
- ΔTEC: Difference between 15-min and 60-min moving averages of GF combinations.
- SIDX: Mean absolute ROT in a 1-minute window.
- Define the station code, year, DOY, and directories in
main.py. - Run the complete pipeline:
python3 main.py- Results are saved in structured output folders, organized by station and satellite.
RNX_CLEAN.py– Prepares and organizes RINEX data.RNX_SCREENING.py– Detects outliers and cycle slips using MW combinations.RNX_LEVELLING.py– Performs arc-wise geometry-free leveling.DTEC_CALC.py– Calculates ΔTEC index.SIDX_CALC.py– Calculates the Sudden Ionospheric Disturbance Index.SP3_INTERPOLATE.py– Extracts and organizes SP3 orbit data.linear_combinations.py,gnss_freqs.py,settings.py,glonass_channels.dat, etc. – Support modules for GNSS frequency handling and coordinate transformation.
- Time series of leveled GF combinations.
- ROT, ROTI, ΔTEC and SIDX per satellite and station.
- Intermediate figures for screening and quality control.
If you use this software in your research, please cite:
APA
Picanço, G.A.S., Fagundes, P.R., Prol, F.S., Denardini, C.M., Mendoza, L.P.O., Pillat, V.G., Rodrigues, I., Christovam, A.L.,
Meza, A.M., Natali, M.P., Romero-Hernández, E., Aguirre-Gutierrez, R., Agyei-Yeboah, E., & Muella, M.T.A.H. (2025).
Introducing OASIS: An Open-Access System for Ionospheric Studies. GPS Solutions. (submitted)
ABNT
PICANÇO, G.A.S.; FAGUNDES, P.R.; PROL, F.S.; DENARDINI, C.M.; MENDOZA, L.P.O.; PILLAT, V.G.; RODRIGUES, I.;
CHRISTOVAM, A.L.; MEZA, A.M.; NATALI, M.P.; ROMERO-HERNÁNDEZ, E.; AGUIRRE-GUTIERREZ, R.; AGYEI-YEBOAH, E.;
MUELLA, M.T.A.H. Introducing OASIS: An Open-Access System for Ionospheric Studies. GPS Solutions, 2025.
Manuscrito submetido para publicação.
GitHub Repository
Picanço, G. A. S. (2025). OASIS: Open-Access System for Ionospheric Studies [Software]. GitHub.
Available at: https://github.com/giorgiopicanco/OASIS
Accessed: April 30, 2025.
Developed by Giorgio Picanço (Ph.D. in Space Geophysics).
For questions or contributions, please visit:
https://github.com/giorgiopicanco/OASIS
or email: [email protected]
The OASIS toolbox is open-source and free to use under the MIT license.
