from IPython.display import Image
# @hidden_cell
Image("figures/00_aurora_backdrop_VbZDFnn.jpeg")

Image("figures/00a_aurora_backdrop_screenshot_with_credits.png")

Overview¶
- Objectives, Motivation, Core Packages, Development Principles, History & Software testing
Processing Outline¶
- TF Calculations (external notebook)
- High level flow, TF Kernel Concept, Main Interfaces
Processing Detail¶
- Code Flows
- Core data structures
Example Results¶
- Synthetic Data
- Field Data
Jupyter Notebook exercises¶
- Synthetic Data processing
- Earthscope Data
Here are some notes ...
Aurora¶
- EarthScope (IRIS) Sponsored Project
- Hosted by SimPEG (Geophysical tools developed at UBC)
Objectives:¶
- Provide Open-Source Magnetotelluric (MT) Time Series Processing in Python
- Produce transfer function (TF) objects in mt_metadata format from time series archived in mth5 format.
- Emulate Egbert’s EMTF legacy remote-reference FORTRAN and Matlab codes
Motivation¶
Allow researchers to spend more time on data analysis and interpretation, and less time worrying about:
- interfaces between metadata and processing
- time series wrangling
- digital filtering
- spectral leakage
- spectrogram transformations
- calibration (digital counts to SI units)
- complex-valued regression, regularization, etc.
- robust statistics
- noise level and error bar estimation
- rotations
Provide framework for:
- plugging-in new methods
- comparison of benchmark results with updated
- simple exploration of processing configurations
Image("figures/xkcd_standards.png")

Development Principles¶
- Open source
- Leverage existing tools and frameworks
- Extensibility
- Reusability
- Readability (PNCA)
- Parallelizability*
*Work in progress
History¶
- 2021: Translate EMTF to python and work with MTH5
- 2022: Workflows and examples, development
- 2023: Wide scale testing
- 2024: Fourier Coefficients layer tested, features layer in development
Image("figures/01_joss_manuscript_cover.png")

Software Testing¶
- Relatively well tested
- Uses a combination of unit-tests and integrated tests
Tests rely on Real and Synthetic Data:¶
EMTF came packaged with synthetic data time series from two stations, and we used these data to validate aurora’s results.
Provides a benchmark
Used for rapid integrated tests
Image("figures/github_tested.png")

MT Data Processing Outline¶
The Transfer function equations are described in terms of processing in a companion notebook:
auxiliary/tf_calculations.ipynb
(These links may work in jupyter-lab)
Image("figures/data_processing_ecosystem.png")

High Level Processing Flow¶
Image("../../../aurora/paper/aurora_workflow.png", width=3000, height=4400) # figures/00a_aurora_backdrop_screenshot_with_credits.png")

Image("figures/process_flow_high_level_paper_figure_2.png")

Image("figures/tf_kernel_paper_figure_1.png")

Image("figures/process_flow_main_interfaces.png")

Detailed Processing Flow¶
Image("figures/detailed_flow_1_of_2.png")

Image("figures/detailed_flow_2_of_2.png")

Image("figures/core_data_structures.png")

Image("figures/run_summary.png")

Image("figures/kernel_dataset.png")

Synthetic Data Processing Results¶
Image("figures/synthetic_rho_phi_curves.png")

Image("figures/synthetic_tabulated_results.png")

Image("figures/minimal_code_example.png")

Image("figures/tf_comparison_cas04_with_remote_reference.png")

Image("figures/widescale_tests_histograms.png")

Recent Updates¶
Processing Summary and Processing Pre-check:
- Processing Summary “melts” decimation levels over runs in Kernel Dataset
- One row per (decimation_level, run) pair
- Validiaty checks on each row before processing to ensure consistency between Data and Processing Parameters
- Provides an iterator for building FC layer
Fourier Coefficient (“FC”) Group in MTH5:
- Removes need to re-compute if testing weights and regression schemes
- Aurora checks for stored FCs consistent with the Processing Configuration
- If present, they are used for TF estimation
Wide scale testing on >1000 Time Series and TFs archived at Earthscope
PyPI release: pip install aurora=0.4.2
Now installs as part of MTPy
Limitations¶
Can only use a one remote reference station Vs. multiple station simultaneous processing (full matrix of spectral cross power)
Assumes 3-,4-,or 5-channel stations
Limited data cleaning algorithms
- Huber’s Regression M-Estimate implemented,
- Time domain cleaning not implemented
Limited data visualization capability
No handling for gaps / interpolation
Future Work¶
Plug-ins for:
- other open source MT codes, birrp-based TFs, etc.
- Weights: coherency sorting, polarization sorting, etc.
- ARMA prewhitening
- Data Imputation
Multiple station processing regression engine
Expand testing suite:
- Multiple benchmark datasets
- More synthetic data cases
Align with IAGA Div VI TaskForce for Data interoperability
Community testing on benchmark datasets
HPC Applications
Longer term future work¶
- Moving platform data
- Allow Natural Fields processing of Induced polarization and DC resistivity layouts
Conclusion:¶
Aurora provides an example workflow for obtaining robust TF estimates from data archived in MTH5.
Get involved:¶
Try it out
- Now comes installed with mtpy-v2,
File issues on github
Write tests
Add features
Back Up Slides¶
Image("figures/mt_sources_and_amplitudes.png")

Image("figures/standards_proliferate_translators.png")

Image("figures/what_do_the_time_series_look_like.png")

Image("figures/why_three_packages.png")

Image("figures/cascading_decimation.png")

Image("figures/potpourri.png")

Image("figures/schumann_01.png")

Image("figures/schumann_02.png")

Image("figures/why_three_packages.png")

Image("figures/recent_updates.png")

Image("figures/conclusion.png")

!ls figures/*png
figures/00a_aurora_backdrop_screenshot_with_credits.png
figures/01_joss_manuscript_cover.png
figures/aurora_backdrop.png
figures/cascading_decimation.png
figures/conclusion.png
figures/core_data_structures.png
figures/data_processing_ecosystem.png
figures/detailed_flow_1_of_2.png
figures/detailed_flow_2_of_2.png
figures/github_tested.png
figures/kernel_dataset.png
figures/minimal_code_example.png
figures/mt_sources_and_amplitudes.png
figures/potpourri.png
figures/process_flow_high_level_paper_figure_2.png
figures/process_flow_main_interfaces.png
figures/recent_updates.png
figures/run_summary.png
figures/schumann_01.png
figures/schumann_02.png
figures/standards_proliferate_translators.png
figures/synthetic_rho_phi_curves.png
figures/synthetic_tabulated_results.png
figures/tf_comparison_cas04_with_remote_reference.png
figures/tf_kernel_paper_figure_1.png
figures/what_do_the_time_series_look_like.png
figures/why_three_packages.png
figures/widescale_tests_histograms.png
figures/xkcd_standards.png
References:
Canberra Slides https://
2022 Workshop Slides https://
screenshots https://
EMIW 2024 Poster https://