18.1. Overview#
18.1.1. Jump To A Task#
If you already know the data-loading API, use the table below to jump to the task you need.
Tutorial |
Use It When |
Main Outputs |
|---|---|---|
You need to load one EDI file, a line directory, or a recursive survey tree and inspect what pyCSAMT found. |
|
|
You want to review station coverage, usable frequencies, skew proxies, signal quality, and stations that need manual attention. |
QC tables, confidence tables, review CSV files, diagnostic plots. |
|
You need to decide whether two line surveys can start from the same first-pass QC and processing configuration. |
Line-comparison tables, frequency overlap, confidence distributions, processing decision table. |
|
You have inspected the survey and want a conservative static-shift correction workflow – on AMT, MT, or CSAMT data – before inversion preparation, including recognizing when correction should be rejected or is a no-op. |
Static-shift factors, corrected site collection, corrected EDIs, period-labeled static-shift radar plots. |
|
You have MT data with tipper and full impedance tensors and need a transparent conditioning workflow before inversion. |
Raw tensor/tipper plots, bad-frequency screen, filters, static shift, strike rose, phase tensor grid, rotated tensors. |
|
You have cleaned and reviewed a line survey and want to prepare a 2-D Occam2D inversion workspace. |
Occam2D data, model, startup, and run-directory files. |
|
You have Zonge AVG plus station files and need a coordinate-safe path through EDI, CSAMT-specific QC, Occam2D, and AI inversion. |
K1/K2 EDIs, midpoint-corrected coordinates, processing decisions, and reproducible classical/AI run recipes. |
|
You have corrected EDIs and want to use AI inversion instead of, or alongside, classical inversion, and want to know whether to trust the result before you do. |
Survey audit (dimensionality, strike, duplicate stations), a site-grounded geological prior, 2-D and 3-D AI inversion with real topography draping, and an out-of-distribution screen. |
|
You want to construct a genuine 3-D geology/topography hypothesis and Maxwell mesh, and determine whether the available backend may invert it. |
Reproducible 3-D prior slices, padded terrain-aware Maxwell mesh, and an explicit backend acceptance gate; no unsupported inversion block. |
|
You have a genuinely noisy, infrastructure-affected AMT survey and need the full correction-to-inversion chain, on two lines at once, for a real Cu-Mo porphyry exploration target. |
Correction diagnostics and parameter report, rotated/unrotated corrected EDIs, Occam2D and ModEM inputs, 2-D/3-D AI inversion with raw-versus-corrected RMS, topography-draped final sections. |
|
You want a repeatable processing workflow stored in YAML, JSON, or Python config files, method-aware presets for MT/AMT/CSAMT/CSUMT, and runnable from Python or the CLI. |
Processed EDIs, plots, |
18.1.2. Recommended Learning Path#
Start with Read an EDI Survey.
This page introduces
pycsamt.api.read_edis(), theAPISurveyobject, station summaries, duplicate policies, parser errors, and the basic EDI CLI commands – and shows a quick phase-tensor fingerprint that already hints at which stations will need review later.Continue with Inspect and QC a Survey.
Use this after loading the survey. It helps you decide whether the data are ready for correction, whether some stations should be reviewed, and which frequency bands look reliable.
Use Compare Survey Lines for QC when a project has several lines.
This page helps you decide whether one first-pass config can be reused across related lines, or whether each line needs separate QC parameters.
Move to Correct Static Shift when the QC pass is understood.
Static-shift correction should not be the first operation applied blindly. The tutorial shows how to estimate, inspect, apply, and export correction factors conservatively – worked through on AMT, MT, and CSAMT lines, so it also covers the case where a large factor should still be rejected and the case where correction is genuinely a no-op.
Use Condition an MT Line With Tipper and Rotation for advanced MT data.
KP-style MT data with tipper need a fuller pre-inversion review: raw tensor curves, tipper response, weak-frequency handling, static-shift review, phase tensors, strike, and rotation.
Use Prepare an Occam2D Inversion for a cleaned profile.
This tutorial connects the processing workflow to inversion preparation. It focuses on the files and checks needed before handing data to Occam2D.
Use AI Inversion From Corrected EDIs when choosing AI inversion.
This page runs a real corrected survey through an audit, a 2-D Maxwell AI inversion, and a graph-based 3-D AI inversion, then shows how to catch a confidently wrong prediction before trusting it.
Use Building a Defensible 3-D AI Inversion Problem to prepare and gate a topographic 3-D AI inversion problem.
This page separates a reproducible geological prior from an inferred model, constructs the current 3-D Maxwell mesh, and stops honestly when the bundled research backend cannot support its topography and size.
Use Map Porphyry Mineralization From Noisy AMT for a real, infrastructure-noisy field case study.
This page runs the full chain on two lines at once: powerline notching, near-field/source-overprint screening, dictionary-learned dimensionality, Groom-Bailey distortion, conditional static shift, EMAP filtering, strike and rotation, classical Occam2D/ModEM preparation, and 2-D/3-D AI inversion with a measured raw-versus-corrected RMS improvement.
Use Run a Pipeline From Config when the workflow should be repeated.
Once the steps are stable, move them into a config file. This gives you a reproducible processing chain that can be reviewed, rerun, and archived with the results.
18.1.3. Before You Start#
The tutorials assume that pyCSAMT is installed and that you have a folder of EDI files. If you are still setting up the environment or learning the data formats, read these pages first:
Most examples use paths such as data/edis and results/first_qc. Replace
them with your local project paths.
18.1.4. Workflow Conventions#
The tutorial pages use the same conventions:
surveyPublic survey object returned by
pycsamt.api.read_edis().sitesLower-level site or EDI collection passed into QC, editing, pipeline, and export helpers. In many examples it is obtained from
survey.collection.resultReturned object from an operation, such as a pipeline run or inversion preparation step.
outdirRoot output directory for generated files.
strict=FalseUsed during first inspection so the reader can continue past recoverable EDI issues.
strict=Trueor--on-error raiseUsed for production validation when the workflow should fail immediately on malformed input or processing errors.
18.1.5. Choosing Python or the CLI#
Use Python when you need to keep objects in memory, combine tables, make custom plots, or integrate pyCSAMT with notebooks and analysis scripts.
Use the CLI when you need quick inspection, reproducible batch processing, or a shell-friendly workflow:
1pycsamt edi info data/edis
2pycsamt edi validate data/edis
3pycsamt pipe init --preset basic_qc --name first_qc
4pycsamt pipe run --config first_qc.yaml --survey data/edis --out results/first_qc
The tutorials usually show both forms when a CLI command exists.