11. EM Tools Guide#
pycsamt.emtools is the science-facing toolbox for MT, AMT, and CSAMT
processing. Use this page as a task map: start with loading and inspection,
then move through quality control, frequency editing, noise/static-shift
conditioning, tensor/strike analysis, source diagnostics, survey design, and
publication plots. Each page opens a narrative guide with examples, figures,
and links to the public API. The same workflows are also available as
runnable gallery examples in EM tools examples. For
the complete callable reference, see pycsamt.emtools.
- 11.1. First-Look Survey Inspection
- 11.1.1. Why Inspect First
- 11.1.2. Load The Survey
- 11.1.3. The Inspection Workflow
- 11.1.4. Per-Site Summary
- 11.1.5. Choose Summary Columns
- 11.1.6. Missing Sections
- 11.1.7. Check Tipper Availability Explicitly
- 11.1.8. Frequency Coverage Tables
- 11.1.9. Plot Frequency Coverage
- 11.1.10. Quick Rho And Phase Curves
- 11.1.11. Pseudo-Sections
- 11.1.12. Control The Pseudo-Section Scale
- 11.1.13. Tipper Components
- 11.1.14. Full Station Response
- 11.1.15. Overlay A Model Response
- 11.1.16. Build A First-Look Report Bundle
- 11.1.17. Reading The Inspection Results
- 11.1.18. Worked Example
- 11.2. Quality-Control Confidence Scoring
- 11.2.1. Why QC Is More Than Coverage
- 11.2.2. Load A Survey
- 11.2.3. The Confidence Ratio
- 11.2.4. Compute A Confidence Ratio Directly
- 11.2.5. Station QC Summary
- 11.2.6. Station Flags
- 11.2.7. Presence Confidence Versus Composite Confidence
- 11.2.8. Customize Confidence Weights
- 11.2.9. Frequency-Level Confidence
- 11.2.10. Build A Mask From Confidence
- 11.2.11. Survey-Scale Confidence Views
- 11.2.12. Station Confidence Profile
- 11.2.13. Frequency Confidence Pseudo-Section
- 11.2.14. Single-Station Spectrum
- 11.2.15. Single-Station Dashboard
- 11.2.16. Period-Band Summary
- 11.2.17. Coverage And SNR Quicklook
- 11.2.18. Coverage Pseudo-Section And SNR Histogram
- 11.2.19. Consistency Fan
- 11.2.20. XY/YX Crossover Map
- 11.2.21. Propagation To Inversion
- 11.2.22. Reading QC Results
- 11.2.23. Worked Example
- 11.3. Frequency Editing, Resampling, And QC
- 11.3.1. Why Frequency Editing Matters
- 11.3.2. Data Contract
- 11.3.3. Selecting A Band
- 11.3.4. Removing Duplicate Frequencies
- 11.3.5. Frequency Confidence
- 11.3.6. Drop Or Mask Low-Confidence Rows
- 11.3.7. Recover Low-Confidence Rows
- 11.3.8. High-Level Editing Workflow
- 11.3.9. Station-Level Report
- 11.3.10. Decision Table
- 11.3.11. Plot Edit Results
- 11.3.12. Regrid To A Target Grid
- 11.3.13. Build A Log-Spaced Grid
- 11.3.14. Decimation And Moving Average Smoothing
- 11.3.15. Align Station Grids
- 11.3.16. Coverage And Quality Heatmap
- 11.3.17. Apparent Depth Pseudo-Section
- 11.3.18. Band Microstrips
- 11.3.19. Recommended Processing Pattern
- 11.3.20. Common Failure Modes
- 11.3.21. Worked Example
- 11.4. Noise Removal And Spatial Filtering
- 11.4.1. Loading A Survey Safely
- 11.4.2. SNR Diagnostics
- 11.4.3. Remote Reference And EMI Reporting
- 11.4.4. Power-Line Notching
- 11.4.5. Log-Frequency Smoothing
- 11.4.6. Rho/Phase Trend Smoothing
- 11.4.7. Outlier And Spatial Denoising
- 11.4.8. Off-Diagonal Consistency
- 11.4.9. Masking And Manual Frequency Drops
- 11.4.10. Group-Trend Shrinkage
- 11.4.11. Static Shift And EMAP Filters
- 11.4.12. EMAP Reports And Plots
- 11.4.13. Confidence-Gated EMAP Filtering
- 11.4.14. Full Pipeline
- 11.4.15. QC Figures For Noise Removal
- 11.4.16. Choosing A Treatment
- 11.4.17. Reproducible Bundle
- 11.4.18. Worked Example
- 11.5. Static-Shift Correction
- 11.5.1. Load The Survey
- 11.5.2. Estimate AMA Factors
- 11.5.3. Read Factor Signs Correctly
- 11.5.4. Apply Factors
- 11.5.5. Compare Estimators
- 11.5.6. QC Plots In One Call
- 11.5.7. Before/After Plots From Existing Sites
- 11.5.8. Publication Comparison Figures
- 11.5.9. Radar View
- 11.5.10. A Different Line, A Different Shift
- 11.5.11. When Static-Shift Numbers Are Not Real Static Shift
- 11.5.12. Near-Surface Versus Static Shift
- 11.5.13. Recommended Processing Pattern
- 11.5.14. Common Pitfalls
- 11.5.15. Worked Example
- 11.6. Groom-Bailey Galvanic Distortion
- 11.6.1. When To Use Groom-Bailey
- 11.6.2. Core Assumptions
- 11.6.3. Fit A Distortion Table
- 11.6.4. Table Columns
- 11.6.5. Reading The Parameters
- 11.6.6. Rank Stations For Review
- 11.6.7. Use A Strike Rotation
- 11.6.8. Apply A Precomputed Table
- 11.6.9. Estimate And Apply In One Step
- 11.6.10. Compare Robust And Non-Robust Fits
- 11.6.11. Synthetic Sanity Check
- 11.6.12. Integrate With Pre-2D Assessment
- 11.6.13. Reading The Results
- 11.6.14. Common Failure Modes
- 11.6.15. Saving A Reproducible Bundle
- 11.6.16. Worked Example
- 11.7. Phase Tensor And Impedance Tensor Tools
- 11.7.1. Load Data
- 11.7.2. Build The Phase-Tensor Table
- 11.7.3. Filter By Period
- 11.7.4. Read Dimensionality From Skew And Ellipticity
- 11.7.5. Simple Phase-Tensor Views
- 11.7.6. Phase-Tensor Ellipse Pseudosection
- 11.7.7. A Full Tensor Is Not Optional
- 11.7.8. Strike As A Director Field
- 11.7.9. Rose And Stability Plots
- 11.7.10. Skew-Ellipticity Density
- 11.7.11. Summary Figure
- 11.7.12. Geographic Phase-Tensor Map
- 11.7.13. Real Tipper On A Real Map
- 11.7.14. When Header Coordinates Are Noisy
- 11.7.15. Per-Station Ellipse Strips
- 11.7.16. Standalone Legend
- 11.7.17. Impedance-Tensor Editing
- 11.7.18. Fixed-Angle Rotation
- 11.7.19. Station-Specific Rotation
- 11.7.20. Tensor Rotation To Strike
- 11.7.21. Antisymmetrize And Balance
- 11.7.22. Sensor Orientation
- 11.7.23. Sigma Clip Outliers
- 11.7.24. Invert Tensor
- 11.7.25. Audit Edits With Phase-Tensor Tables
- 11.7.26. Recommended Interpretation Workflow
- 11.7.27. Common Pitfalls
- 11.7.28. Worked Example
- 11.8. Geoelectric Strike
- 11.8.1. Load Data
- 11.8.2. Station-Level Estimators
- 11.8.3. Compare Axial Angles Correctly
- 11.8.4. Choose A Period Band
- 11.8.5. Rotate Data Onto Strike
- 11.8.6. Per-Frequency Strike Curve
- 11.8.7. Ribbon Plot
- 11.8.8. Rose Diagrams
- 11.8.9. Frequency-Band Roses
- 11.8.10. Profile And Map-Stick Views
- 11.8.11. Combined Strike Analysis
- 11.8.12. Recommended Workflow
- 11.8.13. Common Pitfalls
- 11.8.14. Worked Example
- 11.9. Dimensionality Assessment
- 11.9.1. Why Dimensionality Comes First
- 11.9.2. Core Features
- 11.9.3. Rule-Based Labels
- 11.9.4. Build The Feature Table
- 11.9.5. Inspect One Station
- 11.9.6. Classify The Survey
- 11.9.7. Read The Rule In Feature Space
- 11.9.8. Threshold Sensitivity
- 11.9.9. Plot The Dimensionality Grid
- 11.9.10. Plot Period-Band Occupancy
- 11.9.11. Map Dimensionality At One Period
- 11.9.12. Pre-2D Inversion Assessment
- 11.9.13. Masking 3-D Samples
- 11.9.14. Projecting To A 2-D Tensor Form
- 11.9.15. Sparse Dictionary Workflow
- 11.9.16. Compare Rule Labels And Dictionary Labels
- 11.9.17. Dictionary Masking And Atom Plots
- 11.9.18. Reading The Results
- 11.9.19. Common Failure Modes
- 11.9.20. Saving A Reproducible Bundle
- 11.9.21. Worked Example
- 11.10. Skew Diagnostics
- 11.10.1. Two Skew Measures
- 11.10.2. Workflow Map
- 11.10.3. Loading The Survey
- 11.10.4. Phase-Tensor Skew Table
- 11.10.5. Bahr Skewness
- 11.10.6. Bahr Skew Plot
- 11.10.7. Masking By Skew
- 11.10.8. Counting Surviving Rows
- 11.10.9. Longest Low-Skew Run
- 11.10.10. Closing Small Gaps
- 11.10.11. Survey-Wide Low-Skew Band
- 11.10.12. Traffic-Light Pseudo-Section
- 11.10.13. Percentile Ribbon
- 11.10.14. Vote-Band Plot
- 11.10.15. Suggested Interpretation Pattern
- 11.10.16. Pitfalls
- 11.10.17. Worked Example
- 11.11. Anisotropy Diagnostics
- 11.11.1. Why This Matters
- 11.11.2. The Core Quantities
- 11.11.3. Data Contract
- 11.11.4. Workflow Overview
- 11.11.5. Per-Frequency Detail
- 11.11.6. Single-Station Inspection
- 11.11.7. Per-Station Summary
- 11.11.8. Pseudo-Section Plotting
- 11.11.9. Comparing Neighboring Lines
- 11.11.10. Ratio And Skew Are Complementary
- 11.11.11. Reading The Results
- 11.11.12. Common Failure Modes
- 11.11.13. Saving A Reproducible Diagnostic Bundle
- 11.11.14. Worked Example
- 11.12. Impedance-Tensor Diagnostics
- 11.12.1. What The Module Uses
- 11.12.2. Load A Survey Once
- 11.12.3. Choose The Right Diagnostic
- 11.12.4. The Phasor Wheel
- 11.12.5. Use Period Bands
- 11.12.6. Include The Diagonal Terms
- 11.12.7. Compute Component Magnitudes
- 11.12.8. Off-Diagonal Antisymmetry
- 11.12.9. Rank Stations By Residual
- 11.12.10. Compare With Anisotropy Or Skew
- 11.12.11. Determinant Track
- 11.12.12. Compare Two Stations
- 11.12.13. Measure Determinant Band Width
- 11.12.14. Compare Neighbouring Lines
- 11.12.15. Common Interpretation Checks
- 11.12.16. Saving A Reproducible Bundle
- 11.12.17. Worked Example
- 11.13. Transfer Functions And Tipper Diagnostics
- 11.13.1. Use A Dataset With Tipper
- 11.13.2. What The Tipper Stores
- 11.13.3. Choose Periods And Bands
- 11.13.4. Single-Station Hodograms
- 11.13.5. Single-Station Polar View
- 11.13.6. Induction Map At One Period
- 11.13.7. Compare Several Periods On One Axis
- 11.13.8. Sign Conventions
- 11.13.9. Period Pseudosection
- 11.13.10. Induction Rose
- 11.13.11. Multi-Period Map
- 11.13.12. Spectra-Direct Workflows
- 11.13.13. Recommended Workflow
- 11.13.14. Common Pitfalls
- 11.13.15. Worked Example
- 11.14. AFMAG Tilt-Angle Diagnostics And Motion-Coupling Physics
- 11.14.1. Use A Dataset With Tipper
- 11.14.2. What The Tilt Angle Represents
- 11.14.3. Tilt-Angle Profile
- 11.14.4. Tilt-Angle Pseudosection
- 11.14.5. Single-Station Tilt Polar View
- 11.14.6. Motion-Induced Noise: The Rotation-Matrix Method
- 11.14.7. Motion-Coupling Susceptibility
- 11.14.8. Flagging A Motion-Susceptible Band
- 11.14.9. Two Response Families, On Real Airborne Data
- 11.14.10. Building A Comparator Response
- 11.14.11. Building An AirMt Response
- 11.14.12. Reading The Sample Surveys
- 11.14.13. Tilt Tables From Real Data
- 11.14.14. Dual-Frequency Crossover Profile
- 11.14.15. AirMt Tilt Pseudosection
- 11.14.16. Azimuth Across The Target
- 11.14.17. Flight-Line Geometry
- 11.14.18. Amplification Parameter Behavior
- 11.14.19. Common Pitfalls
- 11.14.20. Recommended Workflow
- 11.14.21. References
- 11.15. ZTEM Total-Divergence, Phase-Rotation, And Map-View Diagnostics
- 11.15.1. Building A ZTEM Response
- 11.15.2. Reading The Sample Surveys
- 11.15.3. Raw In-Phase/Quadrature Crossover
- 11.15.4. Total Divergence And Phase Rotation
- 11.15.5. Total Divergence Pseudosection
- 11.15.6. Flight-Line Map
- 11.15.7. Map-View Grids
- 11.15.8. Masking The Usable Band
- 11.15.9. Recommended Workflow
- 11.15.10. References
- 11.16. MobileMT Admittance, Apparent Conductivity, And Skew Diagnostics
- 11.17. Cross-Spectra Analysis
- 11.17.1. When To Use This Page
- 11.17.2. Workflow Map
- 11.17.3. Loading Spectra
- 11.17.4. Coherence Matrix
- 11.17.5. PSD Table
- 11.17.6. Coherence Table
- 11.17.7. Coherence-Derived SNR
- 11.17.8. Band Selection
- 11.17.9. Coherence Masks
- 11.17.10. Spectra Summary
- 11.17.11. PSD Plot
- 11.17.12. Coherence Plot
- 11.17.13. Full Spectral Matrix
- 11.17.14. Recovering Impedance From Spectra
- 11.17.15. Recovering Tipper From Spectra
- 11.17.16. Multiple-Station Sections
- 11.17.17. Practical QC Recipe
- 11.17.18. Pitfalls
- 11.17.19. Worked Example
- 11.18. Source Effects And Near-Field Correction
- 11.18.1. Why Offset Matters
- 11.18.2. Workflow Map
- 11.18.3. Loading A Survey
- 11.18.4. Overprint Beta
- 11.18.5. Per-Frequency Overprint Detection
- 11.18.6. Station-Level Summary
- 11.18.7. Overprint Pseudo-Section
- 11.18.8. Normalized Response
- 11.18.9. Normalized-Response Plot
- 11.18.10. Near-Field Correction
- 11.18.11. Comparing Before And After
- 11.18.12. Combining The Two Diagnostics
- 11.18.13. Choosing Offsets
- 11.18.14. Suggested Review Sequence
- 11.18.15. Pitfalls
- 11.18.16. Worked Example
- 11.19. Phased-Array Source Design
- 11.19.1. Concepts And Angles
- 11.19.2. Workflow Map
- 11.19.3. Earth Wavenumber
- 11.19.4. Single-Dipole Element Pattern
- 11.19.5. Array Factor
- 11.19.6. High-Frequency Check
- 11.19.7. Beam Steering
- 11.19.8. Combined PAS Pattern
- 11.19.9. Directivity
- 11.19.10. SNR Gain
- 11.19.11. Plotting Patterns
- 11.19.12. Design Checklist
- 11.19.13. Applying The Checklist To A Real CSAMT Survey
- 11.19.14. Common Pitfalls
- 11.19.15. Worked Example
- 11.20. CSAMT Field-Zone Classification
- 11.20.1. The Field-Zone Parameter
- 11.20.2. Zone Rules
- 11.20.3. Offset Inputs
- 11.20.4. Classify Field Zones
- 11.20.5. Single-Station Curve
- 11.20.6. Near-Field Factor
- 11.20.7. Plot Field Zones
- 11.20.8. Station-Specific Offsets
- 11.20.9. Offset Sensitivity
- 11.20.10. Comparing Offsets Side By Side
- 11.20.11. Illustrative Near-Field Correction
- 11.20.12. Reading The Results
- 11.20.13. Common Failure Modes
- 11.20.14. Saving A Reproducible Bundle
- 11.20.15. Worked Example
- 11.21. CSUMT Bostick Depth And Survey Design
- 11.21.1. The Bostick Transform
- 11.21.2. When To Use This Page
- 11.21.3. Planning With No EDI Data
- 11.21.4. Inverting Depth To Frequency
- 11.21.5. Designing A Frequency Schedule
- 11.21.6. Resolution Between Two Frequencies
- 11.21.7. Measured Data Workflow
- 11.21.8. Bostick Depth Table
- 11.21.9. One Station Curve
- 11.21.10. Measured Vertical Resolution
- 11.21.11. Depth Coverage Table
- 11.21.12. Depth Pseudo-Section
- 11.21.13. Resolution Coarsening With Depth
- 11.21.14. Comparing Neighboring Lines
- 11.21.15. Reading The Results
- 11.21.16. Common Failure Modes
- 11.21.17. Saving A Reproducible Bundle
- 11.21.18. Worked Example
- 11.22. Gradient-Based Pseudo-Sections
- 11.22.1. Why Use Gradients
- 11.22.2. The Three Quantities
- 11.22.3. Station Position And Spacing
- 11.22.4. Spatial Gradient
- 11.22.5. Frequency Gradient
- 11.22.6. Joint Gradient
- 11.22.7. Plot Gradient Sections
- 11.22.8. Choosing The Impedance Component
- 11.22.9. Single-Pair And Single-Station Curves
- 11.22.10. Does The Joint Gradient Suppress Background?
- 11.22.11. Compare Neighboring Lines
- 11.22.12. Reading The Results
- 11.22.13. Common Failure Modes
- 11.22.14. Saving A Reproducible Bundle
- 11.22.15. Worked Example
- 11.23. L-Curve Regularization Selection
- 11.23.1. What The L-Curve Means
- 11.23.2. Inputs Expected By The Module
- 11.23.3. A Minimal Synthetic Example
- 11.23.4. Read The Table
- 11.23.5. Use A Dictionary Result
- 11.23.6. Sorting And Sweep Order
- 11.23.7. Corner Methods
- 11.23.8. Smoothing And Endpoint Skipping
- 11.23.9. Plot A Single Curve
- 11.23.10. Plot Multiple Curves
- 11.23.11. Show Sweep Direction
- 11.23.12. Use L-Curve With A Real Smoothing Sweep
- 11.23.13. Inspect What Lambda Does
- 11.23.14. Reading Real Inversion Logs
- 11.23.15. Compare Corner Methods On Real Data
- 11.23.16. Common Failure Modes
- 11.23.17. Save A Reproducible L-Curve Bundle
- 11.23.18. Worked Example
- 11.24. Multi-Station Diagnostic Panels
- 11.24.1. Where This Module Fits
- 11.24.2. Load Once, Plot Many
- 11.24.3. Quick Station Panels
- 11.24.4. Choose Rho Or Impedance Magnitude
- 11.24.5. Phase Range And X Axis
- 11.24.6. Raw Full-Tensor Panels
- 11.24.7. Force Component Colours
- 11.24.8. Shared Labels Or Axis Labels
- 11.24.9. Use Display Control
- 11.24.10. Response Plus Tipper
- 11.24.11. Compact Tipper Rows
- 11.24.12. Before And After Comparison
- 11.24.13. Compare Impedance Instead Of Rho
- 11.24.14. Measured Versus Predicted Fit Grid
- 11.24.15. Understand TE And TM Fit Colours
- 11.24.16. Full-Response Station Overview
- 11.24.17. A Full-Range Ellipse Colouring
- 11.24.18. Choosing The Right Figure
- 11.24.19. Common Pitfalls
- 11.24.20. Save A Multi-Figure Plot Bundle
- 11.24.21. Worked Example
- 11.25. Advanced EM Tools
- 11.25.1. When To Use This Module
- 11.25.2. Implementation Pattern
- 11.25.3. Functional Groups
- 11.25.4. Single-Station Tensor Diagnostics
- 11.25.5. Dimensionality And Distortion
- 11.25.6. Pseudosections And Survey Summaries
- 11.25.7. Strike Stability And Coherence
- 11.25.8. Detailed Function Guide
- 11.25.8.1. Impedance Mohr Circles
- 11.25.8.2. Argand Trajectories
- 11.25.8.3. Bode Rho-Phase Consistency
- 11.25.8.4. Apparent-Resistivity Polar Diagram
- 11.25.8.5. Phase-Tensor Period Clock
- 11.25.8.6. Dimensionality Ternary
- 11.25.8.7. Distortion Radar
- 11.25.8.8. Sensitivity-Depth Section
- 11.25.8.9. Apparent-Anisotropy Section
- 11.25.8.10. Dimensionality-Depth Profile
- 11.25.8.11. Z Rotation-Invariants Section
- 11.25.8.12. Survey Fingerprint
- 11.25.8.13. MT Composite Section
- 11.25.8.14. SNR Section
- 11.25.8.15. Strike-Stability Bands
- 11.25.8.16. Transfer-Function Coherence Network
- 11.25.8.17. Embedding Advanced Plots
- 11.25.8.18. Failure Modes And Checks
- 11.25.9. Worked Example
- 11.26. Polar Uncertainty Diagnostics
- 11.26.1. What The Diagnostics Measure
- 11.26.2. Inputs You Must Provide
- 11.26.3. Pure Coverage Score
- 11.26.4. Building Example Bounds
- 11.26.5. Per-Frequency Coverage
- 11.26.6. Single-Station Inspection
- 11.26.7. Per-Station Coverage Table
- 11.26.8. Coverage Visualization
- 11.26.9. Width Drift
- 11.26.10. Point-Prediction Error
- 11.26.11. Comparing Calibration Scenarios
- 11.26.12. Reading The Results
- 11.26.13. Common Failure Modes
- 11.26.14. Saving A Reproducible Diagnostic Bundle
- 11.26.15. Worked Example