API reference#

This is the public class and function reference for pycsamt. Use the search field to find an object by name, package, or description. For conceptual guidance and worked examples, see the User Guide. Runtime settings and the configure_* / reset_* pattern are documented separately in API configuration. Private objects and test modules are not included. Each entry links to the object’s canonical generated reference; public facade paths are used when an object is implemented in a private module. The owning public module is shown beneath its description and is searchable; only supported public import paths are displayed. The catalogue is rebuilt from each subpackage’s current public exports, including the IoT field stack.

pycsamt.agents.AgentResult

Standardised output returned by every pycsamt agent.

pycsamt.agents.ai_inversion.AIInversionAgent

Train an AI inverter on synthetic data then predict on observed sites.

pycsamt.agents.anomaly_agent.AnomalyDetectionAgent

Detect anomalous (station, frequency) observations in MT data.

pycsamt.agents.BaseAgent

Abstract base class for all pycsamt agents.

pycsamt.agents.batch_survey.BatchSurveyAgent

Process multiple MT profiles through a shared agent chain.

pycsamt.agents.code_gen.CodeGenerationAgent

Generate a reproducible Python script from a completed workflow.

pycsamt.agents.context.ContextInputAgent

Parse a natural-language MT workflow request into a structured config.

pycsamt.agents.coordinator.AgentCoordinator

Orchestrate a sequence of pycsamt agents as a named workflow.

pycsamt.agents.coordinator.WorkflowStep

One step in an AgentCoordinator workflow.

pycsamt.agents.denoising.DenoisingAgent

Denoise MT impedance data using classical or AI-based methods.

pycsamt.agents.edi_export.EDIExportAgent

Write processed Sites to EDI files on disk.

pycsamt.agents.ensemble_agent.EnsembleAgent

Ensemble 1-D MT inversion with uncertainty bands.

pycsamt.agents.estimate_cost

Compute the USD cost for one LLM call.

pycsamt.agents.format_cost

Return a human-readable cost string.

pycsamt.agents.forward.ForwardModelAgent

Run a 1-D, 2-D, or 3-D MT forward model.

pycsamt.agents.freq_decimation.FrequencyDecimationAgent

Select optimal periods from MT data for inversion.

pycsamt.agents.get_rate

Return the resolved {"input": …, "output": …} rate.

pycsamt.agents.hybrid_agent.HybridInversionAgent

Two-stage AI + physics MT inversion.

pycsamt.agents.interpretation.InterpretationAgent

Interpret a resistivity model in terms of geological formations.

pycsamt.agents.inv2d_agent.Inv2DAgent

2-D MT profile inversion using a U-Net convolutional architecture.

pycsamt.agents.inv3d_agent.Inv3DAgent

3-D MT profile inversion using a graph-convolutional network (GCN).

pycsamt.agents.inversion_backend.InversionBackendAgent

Drive pycsamt.inversion physics-based backends.

pycsamt.agents.inversion_comparison.InversionComparisonAgent

Compare two resistivity inversion results.

pycsamt.agents.inversion_eval.InversionEvaluationAgent

Evaluate inversion quality: RMS, residual PT, misfit section.

pycsamt.agents.inversion_prep.InversionPrepAgent

Prepare MT data files for 2-D / 3-D inversion codes.

pycsamt.agents.iot_agent.IoTFieldAgent

Assess and monitor an IoT-enabled EM field acquisition.

pycsamt.agents.joint_agent.JointInversionAgent

Multi-modal MT joint inversion using DRCNN.

pycsamt.agents.loader.MTLoaderAgent

Load MT data from any pycsamt-supported format and assess quality.

pycsamt.agents.mare2dem_agent.Mare2DEMAgent

Orchestrate a complete MARE2DEM 2.5-D EM inversion workflow.

pycsamt.agents.master.AgentMaster

Plain-language entry point to the agent workflows.

pycsamt.agents.model_zoo_agent.ModelZooAgent

Browse, download, and run pre-trained EM inverters from the model zoo.

pycsamt.agents.modem_agent.ModEmAgent

Write a ModEM3D MT data file from EDI sources.

pycsamt.agents.occam2d_agent.Occam2DAgent

Generate a complete Occam2D inversion input file set.

pycsamt.agents.orchestrator.WorkflowOrchestratorAgent

Intelligently route an NL request to the correct agent chain.

pycsamt.agents.package_qa.PackageQAAgent

Answer free-form questions about pycsamt v2.

pycsamt.agents.phase_analysis.PhaseAnalysisAgent

Run a full phase tensor, strike, and dimensionality survey analysis.

pycsamt.agents.pinn_agent.PINNInversionAgent

PINN-based MT inversion without labelled data.

pycsamt.agents.pipeline_agent.PipelineAgent

LLM-assisted MT processing pipeline selection and interpretation.

pycsamt.agents.qc.DataQCAgent

Run data quality control on a MT/AMT dataset.

pycsamt.agents.report.ReportAgent

Generate a structured MT survey report from agent results.

pycsamt.agents.resistivity_map.ResistivityMapAgent

Build horizontal resistivity depth-slice maps from 1-D inversion results.

pycsamt.agents.router.IntentRouter

Classify a chat message into a RouterDecision.

pycsamt.agents.sensitivity.SensitivityAgent

Bostick sensitivity kernels and vertical resolution analysis.

pycsamt.agents.static_shift.StaticShiftAgent

Detect and correct galvanic static shift in MT/AMT data.

pycsamt.agents.tensor_rotation.TensorRotationAgent

Rotate impedance tensors and tipper vectors by a fixed strike angle.

pycsamt.agents.tipper_analysis.TipperAnalysisAgent

Analyse tipper vectors and plot induction arrows.

pycsamt.agents.validate_workflow_plan

Validate plan and optionally raise on errors.

pycsamt.agents.WorkflowPlan

Validated intermediate representation of a workflow request.

pycsamt.ai.add_colorbar

Attach a right-side colorbar to ax using make_axes_locatable.

pycsamt.ai.BaseEMNet

Abstract base class for EM neural network estimators.

pycsamt.ai.BaseEMProcessor

Abstract base class for ML-based EM data processing tasks.

pycsamt.ai.download_checkpoint

Download a pre-trained checkpoint to the local cache.

pycsamt.ai.em_context

Lightweight context manager shorthand.

pycsamt.ai.EMCheckpoint

Minimal checkpoint for saving/loading EM network state.

pycsamt.ai.EMStyle

Context manager that applies the shared EM plot style.

pycsamt.ai.get_pretrained_info

Return metadata for a registered pre-trained model.

pycsamt.ai.inversion.calibration.ConformalPredictor

Split conformal prediction wrapper for calibrated regression intervals.

pycsamt.ai.inversion.calibration.PosteriorCalibrator

Gaussianization normalising flow for calibrated posterior sampling.

pycsamt.ai.inversion.ensemble.EnsembleInverter

Deep ensemble of EMInverter1D models.

pycsamt.ai.inversion.inv1d.EMInverter1D

1-D EM neural-network inverter.

pycsamt.ai.inversion.inv2d.EMInverter2D

U-Net–based 2-D MT inversion estimator.

pycsamt.ai.inversion.inv3d.GCNInverter3D

Graph-convolutional 3-D MT inversion estimator.

pycsamt.ai.inversion.joint.JointInverter

Multi-modal joint inversion estimator based on DRCNN.

pycsamt.ai.list_pretrained

Return a dict of available pre-trained models.

pycsamt.ai.nets.cnn1d.CNN1DNet

Factory wrapper — call build() to get an nn.Module.

pycsamt.ai.nets.drcnn.DRCNNNet

Factory wrapper for the Dense Residual CNN.

pycsamt.ai.nets.fcn.FCN1DNet

Factory wrapper for the fully-convolutional 1-D EM network.

pycsamt.ai.nets.gcn.build_adjacency

Build a symmetric adjacency matrix from 2-D station coordinates.

pycsamt.ai.nets.gcn.GCNNet

Factory that builds a PyTorch or TensorFlow GCN.

pycsamt.ai.nets.resnet.ResNet1DNet

Factory wrapper for the 1-D residual CNN.

pycsamt.ai.nets.unet.UNet2DNet

Factory wrapper for the 2-D U-Net.

pycsamt.ai.plot.compare.plot_compare

Multi-panel comparison of true and predicted 1-D resistivity profiles.

pycsamt.ai.plot.compare.plot_profile_pair

Plot a single true/predicted resistivity–depth pair on ax.

pycsamt.ai.plot.convergence.plot_convergence

Plot train / validation loss curves from a trainer history dict.

pycsamt.ai.plot.convergence.plot_lr_schedule

Standalone learning-rate schedule plot.

pycsamt.ai.plot.diagnostics.plot_confusion_matrix

Plot a confusion matrix for a classification model.

pycsamt.ai.plot.diagnostics.plot_feature_importance

Horizontal bar chart of feature importances.

pycsamt.ai.plot.diagnostics.plot_layer_errors

Per-layer mean absolute error bar chart.

pycsamt.ai.plot.diagnostics.plot_residuals

Scatter plots of predicted vs. true for each model parameter.

pycsamt.ai.plot.diagnostics.plot_uncertainty_bands

1-D prediction curve with uncertainty bands.

pycsamt.ai.plot.section.plot_pseudo_section

Apparent-resistivity or phase pseudo-section plot.

pycsamt.ai.plot.section.plot_section

Plot a 2-D resistivity section.

pycsamt.ai.plot.section.plot_section_pair

Side-by-side comparison of true and predicted 2-D resistivity sections.

pycsamt.ai.processing.anomaly.AnomalyDetector

Profile-level unsupervised anomaly detector.

pycsamt.ai.processing.classify.DimensionalityClassifier

MLP classifier for MT data dimensionality (1-D / 2-D / 3-D).

pycsamt.ai.processing.denoise.EMDenoiser

Convolutional autoencoder for MT impedance tensor denoising.

pycsamt.ai.processing.denoise.prepare_z_features

Extract an impedance feature array from a site collection.

pycsamt.ai.processing.qc.EMQCScorer

ML-based per-frequency QC scorer for MT impedance data.

pycsamt.ai.training.augment.AugmentFreqDrop

Randomly zero-out a fraction of frequency channels.

pycsamt.ai.training.augment.AugmentMixup

Mixup augmentation (Zhang et al. 2018).

pycsamt.ai.training.augment.AugmentNoise

Add multiplicative log-Gaussian noise to feature amplitudes.

pycsamt.ai.training.augment.AugmentStaticShift

Apply a random static shift to amplitude features.

pycsamt.ai.training.augment.Compose

Sequentially apply a list of augmenters.

pycsamt.ai.training.augment.RandomApply

Apply an augmenter with probability p.

pycsamt.ai.training.dataset.EMDataset

PyTorch Dataset-compatible wrapper for a ForwardDataset.

pycsamt.ai.training.dataset.Normalizer

Z-score normaliser that handles NaN values.

pycsamt.ai.training.metrics.depth_rmse

RMSE on the resistivity sub-vector only (first n_layers columns), optionally weighted by layer index so that deeper (harder) layers have less influence on the score.

pycsamt.ai.training.metrics.layer_rmse

Per-column RMSE vector.

pycsamt.ai.training.metrics.mae

Mean absolute error, ignoring NaN.

pycsamt.ai.training.metrics.masked_mse_loss

MSE loss that ignores NaN (padding) entries in target.

pycsamt.ai.training.metrics.r2

Coefficient of determination R², ignoring NaN.

pycsamt.ai.training.metrics.relative_rmse

Normalised RMSE: sqrt(mean((y_true - y_pred)² / y_true²)).

pycsamt.ai.training.metrics.rmse

Root mean square error, ignoring NaN.

pycsamt.ai.training.metrics.summarise

Compute all scalar metrics and return as a dict.

pycsamt.ai.training.trainer.EMTrainer

Training loop manager for EM 1-D inversion networks.

pycsamt.api.agents.AgentConfig

Global LLM configuration singleton for all pycsamt agents.

pycsamt.api.agents.BudgetExceededError

Raised when an LLM call would be made after the session budget is used.

pycsamt.api.agents.configure_agents

Configure AGENT_CONFIG in one call and return it.

pycsamt.api.agents.reset_agents

Reset AGENT_CONFIG to its unconfigured state.

pycsamt.api.cli.config.BuildConfig

Build / processing execution settings.

pycsamt.api.cli.config.configure_cli

Configure PYCSAMT_CLI with dotted-path arguments.

pycsamt.api.cli.config.LogConfig

Logging / verbosity settings.

pycsamt.api.cli.config.OutputConfig

Output format and destination settings.

pycsamt.api.cli.config.PyCSAMTCLI

Package-wide CLI configuration container.

pycsamt.api.cli.config.reset_cli

Reset PYCSAMT_CLI to package defaults.

pycsamt.api.cli.options.common_options

Attach verbose, no-color, format, and output-dir to a command.

pycsamt.api.cli.params.EDIDir

A Click Path type for a directory that contains EDI files.

pycsamt.api.cli.params.EDIPath

A Click Path type that additionally requires a .edi extension.

pycsamt.api.cli.params.FreqRange

Parse a fmin:fmax frequency-range string into (float, float).

pycsamt.api.cli.params.StationList

Parse a comma-separated list of station identifiers.

pycsamt.api.control.configure_control

Configure PYCSAMT_CONTROL with dotted-path arguments.

pycsamt.api.control.FrequencyAxisControl

Control the 1-D frequency/period axis.

pycsamt.api.control.PhaseViewControl

Control how phase values are wrapped and displayed.

pycsamt.api.control.PyCSAMTControl

Package-wide plotting-view control container.

pycsamt.api.control.reset_control

Reset PYCSAMT_CONTROL to package defaults.

pycsamt.api.control.RhoViewControl

Control apparent-resistivity display scale.

pycsamt.api.control.wrap_phase

Wrap phase values into phase_range.

pycsamt.api.format_option

Add the text, JSON, or CSV output-format option to a Click command.

pycsamt.api.interp.configure_interp

Configure PYCSAMT_INTERP using dotted-path keys.

pycsamt.api.interp.HydroProfileStyle

Visual parameters for 1-D hydrogeophysical profile plots.

pycsamt.api.interp.HydroSectionStyle

Visual parameters for 2-D hydrogeophysical colour sections.

pycsamt.api.interp.InterpStyle

Complete visual bundle for one hydrogeophysical interpretation preset.

pycsamt.api.interp.PyCSAMTInterp

Package-wide visual control container for hydro-geophysical plots.

pycsamt.api.interp.reset_interp

Reset PYCSAMT_INTERP to package defaults.

pycsamt.api.interp.use_interp

Activate a named preset in PYCSAMT_INTERP.

pycsamt.api.n_jobs_option

Add the positive --jobs parallel-worker option to a Click command.

pycsamt.api.no_cache_option

Add the --no-cache processing option to a Click command.

pycsamt.api.no_color_option

Add the --no-color terminal-output option to a Click command.

pycsamt.api.output_dir_option

Add the writable --output-dir path option to a Click command.

pycsamt.api.overwrite_option

Add the --overwrite confirmation-bypass option to a Click command.

pycsamt.api.pipe.config.configure_pipe

Configure the global PYCSAMT_PIPE singleton.

pycsamt.api.pipe.config.PipelineAPIConfig

Runtime configuration for the pyCSAMT pipeline engine.

pycsamt.api.pipe.config.reset_pipe

Reset PYCSAMT_PIPE to package defaults.

pycsamt.api.plot.load_plot_config

(Re-)load a config file into PLOT_CONFIG.

pycsamt.api.plot.PlotConfig

Global plot-export configuration singleton for pyCSAMT.

pycsamt.api.plot.reset_plot_config

Reset PLOT_CONFIG to package defaults.

pycsamt.api.plot.save_fig

Save a pyCSAMT figure using the global PLOT_CONFIG settings.

pycsamt.api.plot.set_dpi

Set the global raster DPI on PLOT_CONFIG.

pycsamt.api.plot.set_fmt

Set the global export format(s) on PLOT_CONFIG.

pycsamt.api.plot.set_savedir

Set the global output directory on PLOT_CONFIG.

pycsamt.api.plot.write_default_config

Write a template config file with the current PLOT_CONFIG values.

pycsamt.api.property.MetadataMixin

Small mixin for attaching free-form object metadata.

pycsamt.api.property.PyCSAMTObject

Root object for lightweight pyCSAMT API behavior.

pycsamt.api.RoseStyle

Visual style bundle shared by all pycsamt rose diagram functions.

pycsamt.api.section.configure_section

Configure PYCSAMT_SECTION.

pycsamt.api.section.PyCSAMTSection

Package-wide section-view control container.

pycsamt.api.section.reset_section

Reset PYCSAMT_SECTION to package defaults.

pycsamt.api.section.SectionAxisStyle

Axis behavior for section-like plots.

pycsamt.api.section.SectionColorbarStyle

Colorbar geometry and tick-density controls.

pycsamt.api.section.SectionFigureStyle

Figure geometry for section-like plots.

pycsamt.api.section.SectionStyle

Complete visual-control bundle for one section preset.

pycsamt.api.station.configure_station_rendering

Configure PYCSAMT_STATION_RENDERING.

pycsamt.api.station.PyCSAMTStationRendering

Package-wide station rendering control container.

pycsamt.api.station.reset_station_rendering

Reset PYCSAMT_STATION_RENDERING to package defaults.

pycsamt.api.station.StationAxisStyle

Station-axis tick, label, and marker configuration.

pycsamt.api.station.StationMarkerStyle

Marker style used to draw stations along a profile axis.

pycsamt.api.style.configure_style

Configure PYCSAMT_STYLE with dotted-path keyword arguments.

pycsamt.api.style.CorrectionStyle

Consistent before/after visual pair for any 1-D correction workflow.

pycsamt.api.style.MTComponentStyle

Consistent colours and markers for MT impedance components and modes.

pycsamt.api.style.MultilineStyle

Gradient-first coloring for multi-line (multi-station / multi-profile) plots.

pycsamt.api.style.PhaseTensorEllipseStyle

Visual style for phase-tensor ellipse plots (psection, map, summary).

pycsamt.api.style.PyCSAMTStyle

Global visual-style container for pyCSAMT.

pycsamt.api.style.RawDataStyle

Visual style for raw, unprocessed EM observations.

pycsamt.api.style.reset_style

Reset PYCSAMT_STYLE to package defaults.

pycsamt.api.style.use_style

Apply a named full-package style preset to PYCSAMT_STYLE.

pycsamt.api.verbose_option

Add the repeatable --verbose logging option to a Click command.

pycsamt.api.view.config.APIViewConfig

Package-wide policy for dataframe-like public API views.

pycsamt.api.view.config.configure_api_view

Configure the global API view backend.

pycsamt.api.view.config.reset_api_view

Reset the global API view backend.

pycsamt.api.view.frame.api_frame

Decorate a function so dataframe-like returns become APIFrame.

pycsamt.api.view.frame.APIFrame

A pyCSAMT dataframe view that keeps pandas behavior intact.

pycsamt.api.view.frame.FrameProfile

Small immutable profile describing a dataframe.

pycsamt.api.view.frame.maybe_wrap_frame

Conditionally wrap data as an APIFrame.

pycsamt.api.view.frame.wrap_frame

Wrap dataframe-like data using the configured API view backend.

pycsamt.api.view.io.read_edi

Read one EDI file and return an EDIFile.

pycsamt.api.view.io.read_edis

Read many EDI files and return a public survey view.

pycsamt.api.view.io.read_sites

Alias for read_edis().

pycsamt.api.view.progress.iter_progress

Yield items, optionally wrapped by tqdm.

pycsamt.api.view.progress.progress_enabled

Return whether progress should be displayed.

pycsamt.api.view.progress.ProgressConfig

Configuration for terminal progress display.

pycsamt.api.view.result.APIResult

Container for named result parts, including one or more tables.

pycsamt.api.view.result.wrap_result

Wrap a mapping of result parts as an APIResult.

pycsamt.api.view.survey.APISurvey

Friendly public facade over an EDICollection.

pycsamt.api.view.tables.geology_dataframe

Return a public APIFrame for a geology catalog.

pycsamt.api.view.tables.geology_table

Alias for geology_dataframe().

pycsamt.api.view.tables.quality_dataframe

Return a public APIFrame wrapper around metadata quality rows.

pycsamt.api.view.tables.quality_table

Alias for quality_dataframe().

pycsamt.api.view.tables.sites_summary

Return a public APIFrame wrapper around emtools site summary.

pycsamt.backends.auto_detect

Detect the best available backend and activate it.

pycsamt.backends.detect_available_backends

Return a list of available deep-learning backends.

pycsamt.backends.get_backend

Return the name of the currently active backend.

pycsamt.backends.get_backend_instance

Return the concrete NeuralBackend instance for the active backend, or None when no DL framework is installed.

pycsamt.backends.get_backend_versions

Return version strings for installed backends.

pycsamt.backends.list_backends

Return availability status for all known backends.

pycsamt.backends.probe_backend

Return True if name is importable in the current environment.

pycsamt.backends.set_backend

Set the active AI backend.

pycsamt.core.base.CoreObject

Minimal base class for PyCSAMT objects and mixins.

pycsamt.core.base.MTBase

Common electromagnetic and MT utilities.

pycsamt.core.base.TFBundle

Lightweight, neutral payload for transfer functions.

pycsamt.core.base.to_edi

Dispatch source to a registered adapter and return EDI.

pycsamt.core.config.config_context

Context manager for temporary configuration overrides.

pycsamt.core.config.configure

Update configuration fields with validation.

pycsamt.core.config.CoreConfig

Global configuration container for pycsamt.

pycsamt.core.config.get_adapter

Return the adapter factory for a key.

pycsamt.core.config.get_config

Return the live CoreConfig singleton.

pycsamt.core.config.list_adapters

List registered adapters with readable names.

pycsamt.core.config.register_adapter

Register a format adapter that yields an EDI object or collection.

pycsamt.core.config.reset_config

Reset the global configuration to factory defaults.

pycsamt.core.config.StationNamePolicy

Rules to validate and synthesize station names.

pycsamt.core.config.to_dict

Serialize the current configuration to a plain dict.

pycsamt.core.FileManifestStore

Disk-backed Manifest persistence utilities.

pycsamt.core.guess_kind

Best-effort classification for common MT/EM artefacts.

pycsamt.core.Manifest

Container mapping record ids to Record objects.

pycsamt.core.ManifestStore

Interface for loading and saving Manifest objects.

pycsamt.core.mixins.bundle_from_edi

Build a TFBundle from an EDI-like object.

pycsamt.core.mixins.BundleContainerMixin

Mixin for containers of items that implement to_bundle.

pycsamt.core.mixins.BundleMixin

Mixin for single items convertible to and from bundles.

pycsamt.core.Record

A single registry item with identifiers and metadata.

pycsamt.core.Registry

High-level helper to manage a file-backed registry.

pycsamt.core.registry.get_packer

Return the registered packer for kind or None.

pycsamt.core.registry.list_packers

List available packers as a mapping of kind to signatures.

pycsamt.core.registry.pack_to_file

Serialize an object to .npz using a registered packer.

pycsamt.core.registry.register_packer

Register a serializer/deserializer pair for a given kind.

pycsamt.core.registry.RegistryAPI

Convenience façade over Registry.

pycsamt.core.registry.unpack_from_file

Deserialize an object from .npz using a registered packer.

pycsamt.core.RegistryError

Error raised for registry and manifest operations.

pycsamt.core.TransformerMixin

Template utilities for AVG/J -> EDI transformations.

pycsamt.emtools.anisotropy.analyze_anisotropy

Per-frequency anisotropy metrics for a set of CSAMT sites.

pycsamt.emtools.anisotropy.anisotropy_table

Per-station summary of anisotropy metrics.

pycsamt.emtools.anisotropy.plot_anisotropy

Plot anisotropy metric pseudo-section (station × frequency).

pycsamt.emtools.csumt.bostick_depth

Bostick depth estimate per station per frequency from measured data.

pycsamt.emtools.csumt.bostick_depth_from_rho

Bostick depth estimate D(f) from apparent resistivity.

pycsamt.emtools.csumt.depth_coverage_table

Summary depth-coverage statistics per station.

pycsamt.emtools.csumt.frequency_for_depth

Invert the Bostick formula: return the frequency (Hz) that maps to a given depth for a background resistivity rho.

pycsamt.emtools.csumt.frequency_schedule

Design a CSUMT frequency schedule that samples a set of target depths.

pycsamt.emtools.csumt.plot_depth_section

Pseudosection of Bostick depth across stations and periods/frequencies.

pycsamt.emtools.csumt.vertical_resolution

Vertical resolution ΔD between adjacent frequencies per station.

pycsamt.emtools.csumt.vertical_resolution_pair

Vertical resolution ΔD between two adjacent frequencies.

pycsamt.emtools.diag.coverage_score

Empirical coverage fraction of a prediction interval (kouadio2025 eq.

pycsamt.emtools.diag.coverage_table

Per-station coverage summary.

pycsamt.emtools.diag.plot_polar_coverage

Polar coverage plot: angle ∝ log₁₀(f), radius ∝ ρ_a,obs.

pycsamt.emtools.diag.plot_polar_errors

Polar rose diagram of relative residuals (ε = (ρ_pred − ρ_obs)/ρ_obs × 100 %).

pycsamt.emtools.diag.plot_width_drift

Mean relative interval width per frequency band (horizon-drift analogue).

pycsamt.emtools.diag.rho_coverage

Per-frequency coverage of observed ρ_a within predicted quantile bounds.

pycsamt.emtools.diag.rho_error_stats

Per-frequency relative error between observed and predicted ρ_a.

pycsamt.emtools.dimensionality.classify_dimensionality

pycsamt.emtools.dimensionality.encode_dimensionality

pycsamt.emtools.dimensionality.learn_dim_dictionary

pycsamt.emtools.dimensionality.mask_by_dictionary

pycsamt.emtools.dimensionality.mask_by_dimensionality

pycsamt.emtools.dimensionality.phase_features_table

pycsamt.emtools.dimensionality.plot_atom_psection

pycsamt.emtools.dimensionality.plot_dim_confidence_grid

pycsamt.emtools.dimensionality.plot_dim_map

pycsamt.emtools.dimensionality.plot_dim_occupancy_area

pycsamt.emtools.dimensionality.pre2d_inversion_assessment

Summarise dimensionality and strike checks before 2-D inversion.

pycsamt.emtools.dimensionality.project_to_2d

pycsamt.emtools.ensure_sites

Normalize arbitrary user input to a Sites object.

pycsamt.emtools.fieldzone.classify_field_zones

Classify CSAMT measurement zones per station per frequency.

pycsamt.emtools.fieldzone.near_field_factor

Near-field correction factor for apparent resistivity (equatorial HED).

pycsamt.emtools.fieldzone.plot_field_zones

Pseudosection of CSAMT field zones across stations and frequencies.

pycsamt.emtools.frequency.align_grid

pycsamt.emtools.frequency.decimate_step

pycsamt.emtools.frequency.drop_duplicates

pycsamt.emtools.frequency.drop_low_confidence_frequencies

Drop rows whose frequency confidence is below threshold.

pycsamt.emtools.frequency.edit_frequencies_by_confidence

Edit frequency rows and return diagnostics in one workflow.

pycsamt.emtools.frequency.frequency_edit_decision_table

Return one row per original station-frequency edit decision.

pycsamt.emtools.frequency.frequency_edit_report

Summarize station-level changes after frequency editing.

pycsamt.emtools.frequency.FrequencyEditResult

Container returned by confidence-based frequency editing.

pycsamt.emtools.frequency.mask_low_confidence_frequencies

Set low-confidence frequency rows to NaN without changing the grid.

pycsamt.emtools.frequency.plot_apparent_depth_psection

pycsamt.emtools.frequency.plot_band_microstrips

pycsamt.emtools.frequency.plot_coverage_quality_heatmap

pycsamt.emtools.frequency.plot_frequency_edit_decisions

Plot dropped, masked, recovered, and kept frequency decisions.

pycsamt.emtools.frequency.plot_frequency_edit_summary

Plot station-level before/after frequency-edit summary.

pycsamt.emtools.frequency.recover_low_confidence_frequencies

Recover recoverable frequency rows using trusted neighboring rows.

pycsamt.emtools.frequency.regrid_logspace

pycsamt.emtools.frequency.regrid_to

pycsamt.emtools.frequency.select_band

pycsamt.emtools.frequency.smooth_mavg

pycsamt.emtools.gb.apply_groom_bailey

Remove fitted Groom-Bailey galvanic distortion from impedance tensors.

pycsamt.emtools.gb.groom_bailey_decomposition

Estimate, and optionally apply, Groom-Bailey distortion correction.

pycsamt.emtools.gb.groom_bailey_table

Estimate Groom-Bailey-style galvanic distortion parameters.

pycsamt.emtools.gb.GroomBaileyResult

Container returned by groom_bailey_decomposition().

pycsamt.emtools.gradient_imaging.plot_gradient_section

Pseudo-section of a gradient apparent resistivity quantity.

pycsamt.emtools.gradient_imaging.rho_frequency_gradient

Vertical (log-frequency) apparent resistivity gradient.

pycsamt.emtools.gradient_imaging.rho_joint_gradient

Joint vertical-transverse apparent resistivity gradient.

pycsamt.emtools.gradient_imaging.rho_spatial_gradient

Transverse (along-line) apparent resistivity gradient.

pycsamt.emtools.impedance.plot_determinant_track

pycsamt.emtools.impedance.plot_offdiag_antisym_residual

pycsamt.emtools.impedance.plot_phasor_wheel

pycsamt.emtools.inspect.frequency_coverage

pycsamt.emtools.inspect.list_missing_sections

pycsamt.emtools.inspect.plot_coverage

pycsamt.emtools.inspect.plot_rhoa_phi

pycsamt.emtools.inspect.plot_station_response

Full four-component impedance tensor + tipper response for one station.

pycsamt.emtools.inspect.plot_tipper_components

pycsamt.emtools.inspect.pseudosection

Draw a period-vs-station pseudosection.

pycsamt.emtools.inspect.sites_summary

pycsamt.emtools.lcurve.lcurve_table

pycsamt.emtools.lcurve.plot_lcurve

pycsamt.emtools.plot.plot_raw_sites_1d

Plot raw or processed 1-D rho/phase panels by station.

pycsamt.emtools.plot.plot_response_tipper

Plot impedance response panels with station-level tipper rows.

pycsamt.emtools.plot.plot_sites_compare

pycsamt.emtools.plot.plot_sites_fit_grid

pycsamt.emtools.plot.plot_sites_panels

pycsamt.emtools.qc.build_qc_table

pycsamt.emtools.qc.confidence_ratio

Compute the composite confidence ratio from diagnostic scores.

pycsamt.emtools.qc.frequency_confidence_table

Return frequency-level confidence scores for EM stations.

pycsamt.emtools.qc.overlay_noise_cone

Overlay lower and upper noise envelopes on an existing period axis.

pycsamt.emtools.qc.overlay_spectral_holes

Highlight gaps in spectral coverage on an existing QC plot.

pycsamt.emtools.qc.plot_confidence_band_summary

Plot line-wide confidence statistics for each period sample.

pycsamt.emtools.qc.plot_confidence_profile

Profile confidence-ratio (CR) scatter plot along the survey line.

pycsamt.emtools.qc.plot_consistency_fan

Plot cross-station response consistency as a fan diagram.

pycsamt.emtools.qc.plot_coverage_psection

Plot frequency coverage and data availability as a pseudosection.

pycsamt.emtools.qc.plot_frequency_confidence_psection

Plot frequency confidence as a station-period pseudo-section.

pycsamt.emtools.qc.plot_qc_quicklook

Create a compact multi-panel quality-control summary for a survey.

pycsamt.emtools.qc.plot_snr_hist

Plot the distribution of signal-to-noise ratios across survey data.

pycsamt.emtools.qc.plot_station_confidence_dashboard

Plot a 2-by-3 confidence dashboard for one station.

pycsamt.emtools.qc.plot_station_confidence_spectrum

Plot confidence components versus period for one station.

pycsamt.emtools.qc.plot_xyyx_crossover_map

Map XY/YX crossover behaviour across stations and frequencies.

pycsamt.emtools.qc.qc_flags

pycsamt.emtools.qc.station_confidence_table

Return station-level confidence scores for EM transfer functions.

pycsamt.emtools.remove_noise.apply_emap_filter

Apply one EMAP-style spatial filter to MT/AMT sites.

pycsamt.emtools.remove_noise.confidence_gated_emap_filter

Apply EMAP filtering only as strongly as confidence requires.

pycsamt.emtools.remove_noise.correct_static_shift

Remove static shift via Hanning adaptive moving-average (AMA) spatial filter.

pycsamt.emtools.remove_noise.drop_freqs_manual

Drop Z (and tipper) rows at user-specified frequencies.

pycsamt.emtools.remove_noise.emap_filter_report

Summarize station-level changes after an EMAP-style filter.

pycsamt.emtools.remove_noise.EMAPFilterResult

Container returned by confidence-gated EMAP filtering.

pycsamt.emtools.remove_noise.enforce_offdiag_consistency

pycsamt.emtools.remove_noise.fixed_length_moving_average

Apply a fixed-length EMAP moving average along a profile.

pycsamt.emtools.remove_noise.hampel_filter_freq

Remove frequency-domain outliers with a sliding Hampel filter.

pycsamt.emtools.remove_noise.mask_incoherent_freqs

Mask frequencies that fail the requested cross-station SNR vote.

pycsamt.emtools.remove_noise.notch_powerline

Suppress mains-frequency harmonics in impedance and tipper data.

pycsamt.emtools.remove_noise.nr_qc_delta_offdiag_psection

Plot denoising changes in off-diagonal impedance as a pseudosection.

pycsamt.emtools.remove_noise.nr_qc_harmonic_waterfall

Plot harmonic-noise reduction by station and mains harmonic.

pycsamt.emtools.remove_noise.nr_qc_snr_gain_profile

Plot the station-by-station SNR gain produced by denoising.

pycsamt.emtools.remove_noise.nr_qc_station_offdiag_curves

Compare raw and denoised off-diagonal curves for one station.

pycsamt.emtools.remove_noise.plot_emap_filter_profile

Plot a before/after EMAP filter station profile.

pycsamt.emtools.remove_noise.plot_emap_filter_psection

Plot before/after/delta pseudo-sections for an EMAP filter.

pycsamt.emtools.remove_noise.remove_noise_pipeline

pycsamt.emtools.remove_noise.rpca_offdiag_denoise

pycsamt.emtools.remove_noise.shrink_to_group_trend

pycsamt.emtools.remove_noise.smooth_logfreq

pycsamt.emtools.remove_noise.smooth_rho_phase

Smooth apparent resistivity and phase trends, then rebuild Z.

pycsamt.emtools.remove_noise.spatial_median_filter

pycsamt.emtools.remove_noise.trimmed_moving_average

Apply a trimmed EMAP moving average along a profile.

pycsamt.emtools.resolve_rose_style

Resolve style to a RoseStyle, then apply overrides.

pycsamt.emtools.RoseStyle

Visual style bundle shared by all pycsamt rose diagram functions.

pycsamt.emtools.skew.bahr_skewness

pycsamt.emtools.skew.close_skew_gaps

pycsamt.emtools.skew.keep_longest_low_skew

pycsamt.emtools.skew.mask_by_skew

pycsamt.emtools.skew.plot_skew_percentile_ribbon

pycsamt.emtools.skew.plot_skew_traffic_psection

pycsamt.emtools.skew.plot_skew_vote_band

pycsamt.emtools.skew.plot_skewness

pycsamt.emtools.skew.select_low_skew_band

pycsamt.emtools.skew.skew_table

pycsamt.emtools.source_array.array_factor

Normalised array factor AF_n for an N-element linear PAS (eq.

pycsamt.emtools.source_array.beam_steer

Inter-element phase shift β [rad] to steer the main lobe to θ_m (eq.

pycsamt.emtools.source_array.pas_pattern

Total normalised far-field pattern of an N-element PAS.

pycsamt.emtools.source_array.plot_radiation_pattern

Plot one or more radiation patterns in polar or Cartesian format.

pycsamt.emtools.source_array.sdas_directivity

2-D horizontal-plane directivity D₀ = 2π U_max / ∫ U(θ) dθ (eq.

pycsamt.emtools.source_array.sdas_element_pattern

Far-field element pattern for a single finite-length SDAS (eq.

pycsamt.emtools.source_array.snr_gain_db

SNR improvement of an N-element PAS relative to a single SDAS [dB].

pycsamt.emtools.source_array.steering_angles

All main-lobe broadside angles [degrees] for the given PAS configuration.

pycsamt.emtools.source_array.wavenumber

Effective real wavenumber k [m⁻¹] for CSAMT or free-space propagation.

pycsamt.emtools.source_effects.correct_near_field

Correct impedance tensor for CSAMT near-field contamination.

pycsamt.emtools.source_effects.detect_source_overprint

Per-frequency source overprint β index for a set of CSAMT sites.

pycsamt.emtools.source_effects.normalize_response

Normalized apparent resistivity and subtracted phase (Wang & Lin 2023).

pycsamt.emtools.source_effects.overprint_beta

Ground-wave / surface-wave amplitude ratio β_Ey (%).

pycsamt.emtools.source_effects.plot_normalized_response

Pseudosection of normalized ρ_a and subtracted phase (Wang & Lin 2023).

pycsamt.emtools.source_effects.plot_overprint_section

Plot source overprint β pseudo-section (station × frequency).

pycsamt.emtools.source_effects.source_overprint_table

Per-station summary of source overprint metrics.

pycsamt.emtools.spectra.band_select

Return a new Spectra restricted to the frequency band [f_min, f_max] Hz.

pycsamt.emtools.spectra.coherence_matrix

Compute the inter-channel coherence matrix.

pycsamt.emtools.spectra.coherence_table

Inter-channel squared coherence as a tidy DataFrame.

pycsamt.emtools.spectra.mask_low_coherence

Boolean mask of frequencies with sufficient coherence.

pycsamt.emtools.spectra.plot_coherence

Plot squared coherence for selected channel pairs.

pycsamt.emtools.spectra.plot_coherence_section

Pseudo-section of coherence across stations (station × period).

pycsamt.emtools.spectra.plot_psd

Plot the power spectral density per channel.

pycsamt.emtools.spectra.plot_psd_section

Pseudo-section of PSD across stations (station × period).

pycsamt.emtools.spectra.plot_spectra_matrix

Visualise the full cross-spectral density matrix at one frequency.

pycsamt.emtools.spectra.plot_tipper_from_spectra

Plot the induction tipper magnitude and phase from spectra.

pycsamt.emtools.spectra.plot_z_from_spectra

Plot apparent resistivity and phase recovered from spectra.

pycsamt.emtools.spectra.psd_table

Power spectral density per channel as a tidy DataFrame.

pycsamt.emtools.spectra.snr_table

Signal-to-noise ratio estimated from squared coherence.

pycsamt.emtools.spectra.spectra_summary

Compact per-frequency summary table.

pycsamt.emtools.ss.apply_ss_factors

Apply pre-computed static-shift correction factors to sites.

pycsamt.emtools.ss.correct_ss_ama

Correct static shift by the AMA method.

pycsamt.emtools.ss.detect_near_surface

Detect and classify near-surface distortion in CSAMT/MT apparent resistivity curves.

pycsamt.emtools.ss.estimate_ss_ama

Estimate AMA static-shift correction factors.

pycsamt.emtools.ss.estimate_ss_bilateral

Estimate static-shift factors via bilateral filtering.

pycsamt.emtools.ss.estimate_ss_loess

Estimate static-shift factors via locally-weighted regression (LOESS).

pycsamt.emtools.ss.estimate_ss_refmedian

Estimate static-shift factors via reference-median method.

pycsamt.emtools.ss.plot_ns_detection

Bar chart of the NS index per station, colored by distortion type.

pycsamt.emtools.ss.plot_ss_1d_curves

Per-station 1-D apparent-resistivity curves: before and after correction.

pycsamt.emtools.ss.plot_ss_comparison_psection

Two- or three-panel pseudo-section comparison for static-shift correction.

pycsamt.emtools.ss.plot_ss_delta_profile

Plot per-station static-shift correction amplitudes as a bar chart.

pycsamt.emtools.ss.plot_ss_delta_psection

Plot pseudosection of static-shift change (corrected minus original).

pycsamt.emtools.ss.plot_ss_radar

Plot apparent resistivity against period on a polar grid.

pycsamt.emtools.ss.plot_ss_station_curves

Plot before-and-after apparent-resistivity curves for a single station.

pycsamt.emtools.ss.plot_ss_summary

Four-panel summary figure for static-shift correction.

pycsamt.emtools.ss.ss_comparison_psection

Correct sites for static shift and plot a comparison pseudo-section.

pycsamt.emtools.ss.ss_qc_profile

Estimate correction and plot per-station shift profile.

pycsamt.emtools.ss.ss_qc_psection

Estimate static-shift correction and plot delta pseudosection.

pycsamt.emtools.ss.ss_qc_station_curves

Estimate correction and plot before/after curves for one station.

pycsamt.emtools.strike.estimate_strike_consensus

pycsamt.emtools.strike.estimate_strike_phase_tensor

pycsamt.emtools.strike.estimate_strike_sweep

pycsamt.emtools.strike.plot_strike_analysis

Three-panel rose diagram: Strike (Z), PT Azimuth, and Tipper Strike.

pycsamt.emtools.strike.plot_strike_mapsticks

pycsamt.emtools.strike.plot_strike_profile

pycsamt.emtools.strike.plot_strike_ribbon

pycsamt.emtools.strike.plot_strike_rose

Publication-quality rose diagram of geoelectric strike direction.

pycsamt.emtools.strike.plot_strike_rose_by_line

pycsamt.emtools.strike.rotate_to_strike

pycsamt.emtools.strike.strike_curve_sweep

pycsamt.emtools.tensor.antisymmetrize

pycsamt.emtools.tensor.balance_offdiag

pycsamt.emtools.tensor.build_phase_tensor_table

pycsamt.emtools.tensor.invert

pycsamt.emtools.tensor.orient_from_sensors

pycsamt.emtools.tensor.phase_tensor_legend

pycsamt.emtools.tensor.plot_dimensionality_grid

pycsamt.emtools.tensor.plot_dimensionality_psection

pycsamt.emtools.tensor.plot_ellipticity_psection

pycsamt.emtools.tensor.plot_phase_tensor_map

Publication-quality phase-tensor map at a single period.

pycsamt.emtools.tensor.plot_phase_tensor_psection

Phase-tensor ellipse pseudo-section (Caldwell et al. 2004 style).

pycsamt.emtools.tensor.plot_phase_tensor_rose

Publication-quality phase-tensor θ rose diagram.

pycsamt.emtools.tensor.plot_phase_tensor_skewmap

pycsamt.emtools.tensor.plot_phase_tensor_strip

Single-station phase-tensor ellipse strip vs period.

pycsamt.emtools.tensor.plot_phase_tensor_strip_grid

Phase-tensor ellipse strips for several stations, grouped by profile.

pycsamt.emtools.tensor.plot_skew_ellipt_density

pycsamt.emtools.tensor.plot_strike_director_field

Geoelectric-strike director field over station and period.

pycsamt.emtools.tensor.plot_theta_rose_grid

Phase-tensor θ rose grid — one pycsamt-styled rose per frequency decade.

pycsamt.emtools.tensor.plot_theta_stability_stripe

pycsamt.emtools.tensor.plot_theta_vs_period

pycsamt.emtools.tensor.rotate

pycsamt.emtools.tensor.rotate_by_map

pycsamt.emtools.tensor.rotate_to_strike

pycsamt.emtools.tensor.sigma_clip_z

pycsamt.emtools.tf.plot_induction_arrows

pycsamt.emtools.tf.plot_induction_convention

2×2 panel: Parkinson/Wiese × Real/Imaginary conventions.

pycsamt.emtools.tf.plot_induction_map

Map-view induction arrows at one period.

pycsamt.emtools.tf.plot_induction_map_from_spectra

Map-view induction arrows from Spectra.

pycsamt.emtools.tf.plot_induction_multiperiod_map

Stacked multi-period induction vector map.

pycsamt.emtools.tf.plot_induction_rose

Rose diagram of induction arrow azimuths (all stations & periods).

pycsamt.emtools.tf.plot_induction_rose_from_spectra

Rose diagram of induction arrow directions from Spectra objects.

pycsamt.emtools.tf.plot_induction_section

Period × station pseudo-section coloured by |T| magnitude.

pycsamt.emtools.tf.plot_tipper_hodograms

pycsamt.emtools.tf.plot_tipper_polar

Polar view: tipper azimuth (angle) and magnitude (radius) vs period.

pycsamt.emtools.tf.plot_tipper_polar_from_spectra

Polar tipper from a Spectra object.

pycsamt.exceptions.ZError

General ZError.

pycsamt.forward.batch.ForwardDataset

Numpy container for a batch of (features, targets) EM samples.

pycsamt.forward.batch.generate_dataset

Generate a batch of synthetic (data, model) pairs for ML training.

pycsamt.forward.batch.generate_dataset_3d

Generate a pseudo-3D synthetic dataset for GCNInverter3D training.

pycsamt.forward.batch.SurveyDataset3D

Numpy container for a pseudo-3D multi-station survey dataset.

pycsamt.forward.config.ForwardConfig

Collect settings that define a 1-D forward modelling / dataset run.

pycsamt.forward.config2d.ForwardConfig2D

Collect settings for a 2-D MT finite-difference forward run.

pycsamt.forward.config3d.ForwardConfig3D

Collect settings for a quasi-3D MT forward modelling run.

pycsamt.forward.em1d.CSAMT1DForward

1-D controlled-source AMT forward solver.

pycsamt.forward.em1d.ForwardResponse

Container for the output of a 1-D forward solver.

pycsamt.forward.em1d.MT1DForward

1-D magnetotelluric forward solver (plane-wave, isotropic earth).

pycsamt.forward.em1d.TEM1DForward

1-D central-loop TEM forward solver (step-off waveform).

pycsamt.forward.em2d.ForwardResponse2D

Output of the 2-D MT forward solver.

pycsamt.forward.em2d.MT2DForward

2-D magnetotelluric finite-difference forward solver.

pycsamt.forward.em3d.ForwardResponse3D

Full (approximate) impedance tensor from the 3-D MT forward solver.

pycsamt.forward.em3d.MT3DForward

Quasi-3D magnetotelluric forward solver.

pycsamt.forward.grid2d.Grid2D

Non-uniform 2-D finite-difference grid for MT forward modelling.

pycsamt.forward.grid2d.make_padding

Return cell widths for one padding strip.

pycsamt.forward.grid3d.Grid3D

Non-uniform 3-D finite-difference grid for MT forward modelling.

pycsamt.forward.noise.add_gaussian_noise

Convenience wrapper: add Gaussian noise at a given relative level.

pycsamt.forward.noise.add_noise

Apply a named or pre-built noise model to a forward response.

pycsamt.forward.noise.FieldRealisticNoise

Frequency-dependent noise model for MT/CSAMT training data.

pycsamt.forward.noise.GaussianNoise

Add relative Gaussian noise to an EM forward response.

pycsamt.forward.noise.MultiplicativeNoise

Log-space (multiplicative) Gaussian noise.

pycsamt.forward.plot.plot_model_1d

Plot one or more 1-D layered earth models as resistivity-depth profiles.

pycsamt.forward.plot.plot_model_2d

Plot the 2-D resistivity model on a colour map.

pycsamt.forward.plot.plot_model_3d

Three orthogonal slice panels for a 3-D resistivity model.

pycsamt.forward.plot.plot_pseudosection_2d

Plot a 2-D MT pseudo-section (period × station distance).

pycsamt.forward.plot.plot_response_1d

Plot 1-D MT/CSAMT apparent resistivity and phase vs period (or frequency).

pycsamt.forward.plot.plot_response_and_model_1d

3-panel figure combining model depth profile, ρ_a, and phase.

pycsamt.forward.plot.plot_response_map_3d

Map-view scatter of ρ_a or phase at one frequency.

pycsamt.forward.plot.plot_response_profiles

Plot ρ_a (or phase) vs station distance at selected frequencies.

pycsamt.forward.plot.plot_response_section_3d

Period × station pseudo-section for one 3-D response component.

pycsamt.forward.plot.plot_tensor_components_3d

2 × 2 map panel showing all four impedance tensor components.

pycsamt.forward.synthetic.LayeredModel

1-D layered earth model.

pycsamt.interp.borehole.Borehole

Borehole / well log with depth-interval data.

pycsamt.interp.borehole.Interval

A single depth interval in a borehole log.

pycsamt.interp.calibrate.ModelCalibrator

Constrain a 2-D EM resistivity model with borehole TRES values.

pycsamt.interp.constraints.ConstrainedCalibrator

Calibrate petrophysical parameters to match hydrogeological field data.

pycsamt.interp.constraints.ECConstraint

Electrical conductivity of formation water (e.g., from an EC log or sample).

pycsamt.interp.constraints.PumpingTestConstraint

Transmissivity (and optionally storativity) from a pumping test.

pycsamt.interp.constraints.SlugTestConstraint

Hydraulic conductivity K from a slug test or bail test.

pycsamt.interp.constraints.WaterLevelConstraint

Piezometer or well water-level measurement.

pycsamt.interp.fusion.FusionDiagnostics

Metadata about a completed fusion operation.

pycsamt.interp.fusion.MultiMethodEMModel

Fuse two EM resistivity models onto a single depth grid.

pycsamt.interp.hydro.AquiferZone

Contiguous aquifer-favourable interval at one station/profile column.

pycsamt.interp.hydro.HydroGeophysicalModel

Hydrogeological interpretation product for one resistivity model.

pycsamt.interp.hydro.HydroInterpreter

Rule-based hydrogeophysical interpreter for EM resistivity sections.

pycsamt.interp.hydro.HydroUnit

One classified hydrogeophysical cell.

pycsamt.interp.hydromodel.EMHydroModel

Quantitative hydrogeological model from an EM resistivity section.

pycsamt.interp.hydromodel.EMHydroResult

Quantitative hydrogeological output of one EM resistivity section.

pycsamt.interp.hydromodel.PetrophysicalConfig

All petrophysical and hydraulic parameters needed by EMHydroModel.

pycsamt.interp.lithology.Layer

One geological unit in a pseudo-stratigraphic log.

pycsamt.interp.lithology.RockDatabase

Extensible rock physics database for EM resistivity interpretation.

pycsamt.interp.lithology.RockEntry

A single entry in the rock physics database.

pycsamt.interp.lithology.StratigraphicLog

Per-station pseudo-stratigraphic depth profile.

pycsamt.interp.ResistivityModel

Unified 2-D resistivity model container.

pycsamt.interp.timelapse.assert_compatible_grids

Raise ValueError if surveys have incompatible grids.

pycsamt.interp.timelapse.TimeLapseEM

Time-lapse EM analysis for hydrogeological change detection.

pycsamt.interp.uncertainty.MonteCarloHydro

Monte Carlo uncertainty propagation for a quantitative EM hydro model.

pycsamt.interp.uncertainty.UncertaintyBounds

Prior distribution specification for Monte Carlo sampling.

pycsamt.interp.uncertainty.UncertaintyResult

Ensemble statistics from a MonteCarloHydro run.

pycsamt.inversion.backends.available_backends

Return registered backend names.

pycsamt.inversion.backends.get_backend

Return the backend class for name using lazy imports.

pycsamt.inversion.config.InversionConfig

Source-of-truth configuration for pycsamt.inversion.

pycsamt.inversion.data.EMData

Normalized EM observation container.

pycsamt.inversion.mesh.build_1d_tensor_mesh

Build a 1-D TensorMesh-like object and positive-downward centres.

pycsamt.inversion.mesh.build_3d_tensor_mesh

Build a 3-D TensorMesh-like object around station coordinates.

pycsamt.inversion.mesh.build_fd2d_grid

Build the finite-difference 2-D grid used by built-in inversion.

pycsamt.inversion.mesh.core_rho_from_start

Expand a layered starting model into a 2-D core resistivity grid.

pycsamt.inversion.mesh.depth_widths

Return geometrically growing positive depth cell widths.

pycsamt.inversion.mesh.InversionMesh

Lightweight mesh/grid descriptor.

pycsamt.inversion.model.StartingModel

Starting or recovered layered-earth model.

pycsamt.inversion.mt.inv1d.MT1DInversion

Built-in 1-D MT inversion workflow.

pycsamt.inversion.mt.inv2d.MT2DInversion

Built-in stitched 2-D MT inversion workflow.

pycsamt.inversion.mt.inv3d.MT3DInversion

ModEM 3-D MT inversion workflow.

pycsamt.inversion.mt.inv3d.SimPEGMT3DInversion

SimPEG 3-D MT inversion workflow.

pycsamt.inversion.objective.component_errors

Return errors for one data component using config settings.

pycsamt.inversion.objective.component_mask

Return a boolean mask for one component using config mask settings.

pycsamt.inversion.objective.error_model_from_config

Build an ErrorModel from inversion config options.

pycsamt.inversion.objective.ErrorModel

Component-aware data-error settings for inversion backends.

pycsamt.inversion.regularization.pygimli_lambda

Return the pyGIMLi lambda value using shared option names.

pycsamt.inversion.regularization.Regularization

Backend-neutral regularization settings.

pycsamt.inversion.regularization.regularization_from_config

Build backend-neutral controls from a config object.

pycsamt.inversion.regularization.regularization_residual

Return unweighted residual terms for smooth/damped/blocky penalties.

pycsamt.inversion.regularization.regularization_weight

Return the scalar penalty weight for least-squares backends.

pycsamt.inversion.results.InversionHistory

Common convergence-history container.

pycsamt.inversion.results.InversionResult

Backend-neutral post-inversion result.

pycsamt.inversion.results.InversionUncertainty

Backend-neutral uncertainty and sensitivity diagnostics.

pycsamt.inversion.workflow.InversionWorkflow

Execute a configured EM inversion backend.

pycsamt.inversion.workflow.run_inversion

Run an inversion in one call.

pycsamt.io.config.Config

Container of un‐modifiable I/O settings and lookup tables.

pycsamt.io.parsers.read_any

Read a table‐like file into a pandas object using the Config parser map.

pycsamt.io.parsers.write_any

Write a pandas‐like object to disk using Config writers.

pycsamt.iot.bridge.build_edifile

Assemble an in-memory EDIFile from an impedance tensor.

pycsamt.iot.bridge.deployment_from_edis

Seed a DeploymentConfig from an EDI survey.

pycsamt.iot.bridge.edi_survey_table

Return an EDI-survey summary as a pyCSAMT table.

pycsamt.iot.bridge.emtools_qc

Route IoT-acquired impedance through pycsamt.emtools QC.

pycsamt.iot.bridge.field_session_from_edis

Seed a FieldSession from an EDI survey.

pycsamt.iot.bridge.field_session_to_edifiles

Build per-station EDIs from a session plus impedance estimates.

pycsamt.iot.bridge.impedance_to_z

Build a Z from edge impedance estimates.

pycsamt.iot.bridge.read_edi_survey

Read an EDI survey into per-station summary records.

pycsamt.iot.bridge.z_to_edi

Write an impedance tensor to a .edi file and return its path.

pycsamt.iot.bridge.z_to_site

Return an EDI-backed Site for z.

pycsamt.iot.core.deployment_report

Return one row per device describing declared IoT capabilities.

pycsamt.iot.core.DeploymentConfig

Survey-level IoT deployment metadata.

pycsamt.iot.core.DeviceConfig

Configuration for one field IoT node or recorder gateway.

pycsamt.iot.core.DeviceRole

Role of an IoT device in a field deployment.

pycsamt.iot.core.IoTCapability

IoT capability flags used in deployment reports.

pycsamt.iot.core.PacketKind

Telemetry packet categories used by pyCSAMT IoT workflows.

pycsamt.iot.core.TelemetryPacket

A timestamped message emitted by an IoT-enabled field node.

pycsamt.iot.edge.edge_summary_table

Return one row per channel from edge-processing results.

pycsamt.iot.edge.EdgeChannelSummary

Quality-control summary for one edge data channel.

pycsamt.iot.edge.EdgeDecision

Acceptance state assigned by edge-side quality control.

pycsamt.iot.edge.EdgeProcessingConfig

Configuration for lightweight field-side processing.

pycsamt.iot.edge.EdgeProcessingResult

Summary returned by EdgeProcessor.

pycsamt.iot.edge.EdgeProcessor

Small edge-processing block for telemetry payload reduction.

pycsamt.iot.edge_amt.amt_edge_report

Run the core AMT edge diagnostics on one channel and collate them.

pycsamt.iot.edge_amt.amt_edge_table

Flatten one or more amt_edge_report() results into a table.

pycsamt.iot.edge_amt.assess_impedance_stability

Assess the stability of per-window impedance estimates.

pycsamt.iot.edge_amt.check_channel_saturation

Detect ADC clipping / saturation in a channel.

pycsamt.iot.edge_amt.check_contact_resistance

Proxy assessment of electrode contact quality.

pycsamt.iot.edge_amt.compute_live_spectra

Return {"frequency_hz": ..., "psd": ...} for live display.

pycsamt.iot.edge_amt.detect_powerline_harmonics

Detect mains-frequency harmonics in a time series.

pycsamt.iot.edge_amt.detect_sensor_dropout

Detect NaN gaps and stuck-value (flatline) runs in a channel.

pycsamt.iot.edge_amt.estimate_channel_snr

Estimate channel SNR in decibels.

pycsamt.iot.edge_amt.estimate_frequency_coverage

Estimate the resolvable frequency band of a recording.

pycsamt.iot.edge_amt.estimate_static_shift

Flag a static shift between the two apparent-resistivity modes.

pycsamt.iot.edge_amt.FrequencyCoverage

Result of estimate_frequency_coverage().

pycsamt.iot.edge_amt.HarmonicPeak

Contamination measured at one powerline harmonic.

pycsamt.iot.edge_amt.ImpedanceStability

Result of assess_impedance_stability().

pycsamt.iot.edge_amt.PowerlineHarmonics

Result of detect_powerline_harmonics().

pycsamt.iot.edge_amt.StaticShift

Result of estimate_static_shift().

pycsamt.iot.edge_csamt.assess_source_stability

Assess transmitter current (and optional voltage) steadiness.

pycsamt.iot.edge_csamt.classify_field_zones

Classify each frequency as near, transition, or far field.

pycsamt.iot.edge_csamt.csamt_edge_report

Run the core CSAMT edge diagnostics on one channel and collate them.

pycsamt.iot.edge_csamt.csamt_edge_table

Flatten one or more csamt_edge_report() results into a table.

pycsamt.iot.edge_csamt.detect_transmitter_frequencies

Check that recorded energy is present at each transmitted frequency.

pycsamt.iot.edge_csamt.FieldZone

Wave-propagation regime of a CSAMT measurement at one frequency.

pycsamt.iot.edge_csamt.FieldZoneCoverage

Result of classify_field_zones().

pycsamt.iot.edge_csamt.skin_depth_m

Electromagnetic skin depth in metres.

pycsamt.iot.edge_csamt.SourceLine

Detection result for one expected transmitter frequency.

pycsamt.iot.edge_csamt.SourceStability

Result of assess_source_stability().

pycsamt.iot.edge_csamt.TransmitterComb

Result of detect_transmitter_frequencies().

pycsamt.iot.edge_csem.csem_edge_report

Run the CSEM offset-domain diagnostics for one frequency.

pycsamt.iot.edge_csem.csem_edge_table

Flatten one or more csem_edge_report() results into a table.

pycsamt.iot.edge_csem.field_vs_offset

Build a magnitude/phase-versus-offset curve and QC it.

pycsamt.iot.edge_csem.OffsetResponse

Result of field_vs_offset() -- one MVO/PVO curve.

pycsamt.iot.methods.method_profile

Return the MethodProfile for method.

pycsamt.iot.methods.MethodProfile

Canonical acquisition characteristics for one EM method.

pycsamt.iot.methods.target_bands_for_method

Return per-decade sub-bands spanning a method's frequency band.

pycsamt.iot.monitoring.assess_telemetry

Convenience wrapper around TelemetryMonitor.

pycsamt.iot.monitoring.EMMethod

Electromagnetic survey methods recognised by IoT monitoring.

pycsamt.iot.monitoring.monitoring_status_table

Return monitoring statuses as a pyCSAMT table.

pycsamt.iot.monitoring.MonitoringConfig

Thresholds used to monitor AMT/MT/CSAMT telemetry streams.

pycsamt.iot.monitoring.MonitoringLevel

Overall status level for a monitored telemetry stream.

pycsamt.iot.monitoring.MonitoringStatus

Status returned by TelemetryMonitor.

pycsamt.iot.monitoring.packet_table

Return telemetry packets as a pyCSAMT table.

pycsamt.iot.monitoring.telemetry_summary

Summarise telemetry packet counts by device and topic.

pycsamt.iot.monitoring.TelemetryMonitor

Monitor field telemetry from AMT, MT, CSAMT, and related surveys.

pycsamt.iot.plot.plot_edge_qc_summary

Plot edge quality-control decisions and channel metrics.

pycsamt.iot.plot.plot_field_dashboard

Plot a compact IoT acquisition dashboard.

pycsamt.iot.plot.plot_power_budget

Plot IoT energy budget, runtime, and power-state summaries.

pycsamt.iot.plot.plot_sync_quality

Plot clock offset, drift, jitter, GPS lock, and quality grades.

pycsamt.iot.power.DevicePowerProfile

Named power profile for a field node or recorder.

pycsamt.iot.power.EnergyConfig

Power-budget inputs for a field IoT device.

pycsamt.iot.power.EnergyEstimate

Estimated runtime and power draw.

pycsamt.iot.power.estimate_deployment_energy

Estimate and tabulate energy budgets for multiple devices.

pycsamt.iot.power.estimate_energy_budget

Estimate runtime from battery, duty cycle, and optional solar input.

pycsamt.iot.power.power_summary_table

Return energy estimates as a pyCSAMT table.

pycsamt.iot.power.PowerState

Energy status for an IoT field device.

pycsamt.iot.protocols.base.BaseTelemetryClient

Common behaviour for telemetry transports.

pycsamt.iot.protocols.base.IoTProtocol

Supported telemetry protocol identifiers.

pycsamt.iot.protocols.base.TelemetryAck

Acknowledgement returned by a telemetry client.

pycsamt.iot.protocols.base.TelemetryClient

Generic recorder used for dry-run simulation and unmapped protocols.

pycsamt.iot.protocols.base.TelemetryError

Raised when a telemetry transport operation fails.

pycsamt.iot.protocols.build_telemetry_client

Construct a telemetry client for protocol.

pycsamt.iot.protocols.file.FileTelemetryClient

Append/replay telemetry packets to a JSON-lines file.

pycsamt.iot.protocols.http.HTTPTelemetryClient

POST telemetry packets to an HTTP(S) endpoint.

pycsamt.iot.protocols.mqtt.MQTTTelemetryClient

Publish/subscribe telemetry over MQTT.

pycsamt.iot.protocols.serial.SerialTelemetryClient

Send/receive telemetry over a serial port.

pycsamt.iot.protocols.store_forward.StoreAndForwardClient

Wrap a telemetry client with a persistent offline send buffer.

pycsamt.iot.protocols.websocket.WebSocketTelemetryClient

Send/receive telemetry over a WebSocket connection.

pycsamt.iot.provenance.AcquisitionManifest

Reproducible manifest describing one IoT acquisition session.

pycsamt.iot.provenance.build_acquisition_manifest

Assemble an AcquisitionManifest from session components.

pycsamt.iot.provenance.export_acquisition_manifest

Build an acquisition manifest and write it to path.

pycsamt.iot.provenance.export_reproducibility_bundle

Write a manifest and per-station audits into out_dir.

pycsamt.iot.provenance.export_station_audit

Write a single-station provenance audit to path (JSON).

pycsamt.iot.provenance.hash_bytes

Return the hex digest of data using algo.

pycsamt.iot.provenance.hash_chain

Return a tamper-evident hash chain over entries.

pycsamt.iot.provenance.hash_mapping

Return a stable hash of mapping (key-sorted JSON, UTF-8).

pycsamt.iot.provenance.hash_raw_file

Hash a raw acquisition file and return its integrity record.

pycsamt.iot.provenance.log_qc_decision

Return a normalised QC-decision record for the audit trail.

pycsamt.iot.provenance.ProvenanceRecord

Per-station occupation provenance for one field session.

pycsamt.iot.provenance.sign_mapping

Return an HMAC signature over the canonical JSON of mapping.

pycsamt.iot.provenance.verify_hash_chain

Return whether a hash_chain() sequence is intact and in order.

pycsamt.iot.provenance.verify_manifest

Verify a signed manifest produced by AcquisitionManifest.sign().

pycsamt.iot.provenance.verify_signature

Return whether signature is a valid HMAC of mapping under key.

pycsamt.iot.schemas.AcquisitionPayload

Metadata describing one raw acquisition record/window.

pycsamt.iot.schemas.EventPayload

Discrete field event (state change, alarm, operator note).

pycsamt.iot.schemas.EventSeverity

Severity levels for event telemetry.

pycsamt.iot.schemas.HealthPayload

Device-health telemetry (battery, temperature, link quality).

pycsamt.iot.schemas.parse_payload

Parse payload into the schema registered for kind.

pycsamt.iot.schemas.PowerPayload

Energy-budget telemetry for a field node.

pycsamt.iot.schemas.QCPayload

Edge quality-control telemetry for one acquisition window.

pycsamt.iot.schemas.schema_for

Return the payload schema registered for kind.

pycsamt.iot.schemas.SourcePayload

Transmitter telemetry for a controlled-source (CSAMT/TDEM) survey.

pycsamt.iot.schemas.SyncPayload

Clock-synchronisation telemetry for a field node.

pycsamt.iot.schemas.TelemetryPayload

Base class for canonical telemetry payloads.

pycsamt.iot.schemas.validate_payload

Return a canonicalised payload dictionary for kind.

pycsamt.iot.security.AuthScheme

Supported authentication schemes.

pycsamt.iot.security.Credential

Authentication credential with secret redaction.

pycsamt.iot.security.redact_secret

Return a redaction placeholder when value is a non-empty secret.

pycsamt.iot.security.SecurityConfig

Combined TLS + credential policy for telemetry transports.

pycsamt.iot.security.TLSConfig

Transport-layer security material for a telemetry client.

pycsamt.iot.session.FieldSession

Stateful container for one IoT-enabled field acquisition session.

pycsamt.iot.sim.simulate_amt_channel

Simulate one AMT channel: band-limited signal + noise + artefacts.

pycsamt.iot.sim.simulate_amt_station

Simulate a full AMT station: config, channel data, and packets.

pycsamt.iot.sim.simulate_battery_decay

Simulate a monotonic-ish battery discharge curve with noise.

pycsamt.iot.sim.simulate_gps_drift

Simulate paired reference/local clocks with drift, jitter, dropout.

pycsamt.iot.sim.simulate_iot_network

Simulate a network of AMT stations across one or more profiles.

pycsamt.iot.sim.simulate_packet_loss

Return packets with a fraction randomly dropped.

pycsamt.iot.sim.simulate_powerline_noise

Return a powerline-noise time series (fundamental + harmonics).

pycsamt.iot.station.station_table

Return one row per station describing its acquisition metadata.

pycsamt.iot.station.StationConfig

Geospatial and acquisition metadata for one field station.

pycsamt.iot.sync.assess_sync_quality

Grade synchronisation from offset, drift, jitter, and GPS lock.

pycsamt.iot.sync.batch_assess_sync

Assess many devices at once and return a status table.

pycsamt.iot.sync.ClockSynchronizer

Evaluate device clock status against a reference.

pycsamt.iot.sync.detect_gps_dropout

Summarise GPS-lock dropouts across a sample sequence.

pycsamt.iot.sync.estimate_clock_drift_ppm

Estimate clock drift in parts-per-million.

pycsamt.iot.sync.estimate_clock_jitter_ms

Estimate timing jitter as the std of drift-corrected offsets (ms).

pycsamt.iot.sync.estimate_clock_offset_ms

Estimate median local-reference clock offset in milliseconds.

pycsamt.iot.sync.sync_status_table

Return one row per device from sync-status objects.

pycsamt.iot.sync.SyncConfig

Clock-synchronisation tolerances.

pycsamt.iot.sync.SyncQuality

Overall synchronisation grade for a device.

pycsamt.iot.sync.SyncStatus

Clock-synchronisation status for one device.

pycsamt.jones.blocks.JBlock

Abstract base for J-format data blocks.

pycsamt.jones.blocks.JBlocks

Container for a sequence of parsed J data blocks.

pycsamt.jones.blocks.RBlock

Resistivity/phase (R/S) block implementation.

pycsamt.jones.blocks.RRow

One parsed resistivity/phase row of a J R/S block.

pycsamt.jones.blocks.TFBlock

Transfer-function (Z/Q/C/T) block implementation.

pycsamt.jones.blocks.TFRow

One parsed transfer-function row of a J Z/Q/C/T block.

pycsamt.jones.cbase.JCBBase

Minimal stateful base for collections of J files.

pycsamt.jones.cbase.JCoreParser

Core scanner for J files that extracts light metadata.

pycsamt.jones.cbase.JParseMixin

Lightweight helpers for scanning Jones J-format text.

pycsamt.jones.collection.JCollection

High-level collection of Jones J-format files.

pycsamt.jones.collection.JCollectionMixin

Mixin that provides folder/glob expansion and robust parsing orchestration for Jones J-format collections.

pycsamt.jones.components.JComponentMixin

Lightweight facade to manage Jones (J-format) components on a host object.

pycsamt.jones.heads.Banner

Parse and serialize the top provenance comment line.

pycsamt.jones.heads.Head

Parse and serialize a single J-format head triple.

pycsamt.jones.heads.HeadMixin

Mixin that provides a Head on host classes.

pycsamt.jones.heads.Heads

Minimal container for one Head and one Info.

pycsamt.jones.heads.Info

Parse and serialize the J-format information block.

pycsamt.jones.heads.InfoMixin

Mixin that provides an Info on host classes.

pycsamt.jones.j.JFile

High-level J dispatcher for MT/SEG archives.

pycsamt.jones.j.JIOMixin

Tolerant BLOCK parser and TF/R/Tipper builder.

pycsamt.jones.j.JMixin

Lightweight helpers shared by J-format readers.

pycsamt.jones.property.JSiteProperty

Container for site properties parsed from J-format info.

pycsamt.jones.utils.iter_lines

Yield lines from a path, file‑like, or a sequence of strings.

pycsamt.jones.utils.parse_datatype_units

Parse a data‑type line like ZXY SI or RTE.

pycsamt.jones.validation.is_j_file

Convenience wrapper around IsJ._assert_j().

pycsamt.jones.validation.IsJ

Abstract base for A.G.

pycsamt.map.component_spec

Return a parsed impedance component specification.

pycsamt.map.ComponentSpec

Parsed impedance component request.

pycsamt.map.config.ExportOptions

Options used by figure export helpers.

pycsamt.map.config.ProfileMapOptions

Options for pseudosection and profile-view maps.

pycsamt.map.config.StationMapOptions

Options for 2-D station maps.

pycsamt.map.config.VolumeMapOptions

Options for 3-D fence, block, and depth-slice maps.

pycsamt.map.ensure_map_data

Return normalized map data.

pycsamt.map.export.export_figure

Export fig according to options.

pycsamt.map.export.figure_to_dict

Return a serializable figure dictionary.

pycsamt.map.export.save_png

Save a Matplotlib-like or Plotly-like figure as PNG.

pycsamt.map.export.write_dict

Write a figure dictionary as JSON text.

pycsamt.map.export.write_html

Write a Plotly-like figure to HTML.

pycsamt.map.export.write_image

Write a Plotly-like image.

pycsamt.map.export.write_json

Write a Plotly-like figure specification as JSON.

pycsamt.map.FrequencySelection

Nearest-frequency selection metadata.

pycsamt.map.FrequencyValue

Station value and selected-frequency metadata.

pycsamt.map.inversion.group_modem_stations

Group ModEM station names into survey lines.

pycsamt.map.inversion.load_modem_lines

Load a ModEM 3-D inversion result folder as a multi-line MapData.

pycsamt.map.launch_app

Launch the interactive map-view app.

pycsamt.map.launch_mapview

Alias for launch_app().

pycsamt.map.loader.load_lines

Build one combined MapData from multiple lines.

pycsamt.map.loader.resolve_line_groups

Return a {line_name: source} mapping for source.

pycsamt.map.MapData

Normalized survey data shared by map renderers.

pycsamt.map.normalize_component

Return the canonical map component name.

pycsamt.map.normalize_station_id

Loosely-normalized station id for fuzzy matching.

pycsamt.map.open_app

Backward-compatible alias for launch_app().

pycsamt.map.overlays.basemap_style_and_layers

Resolve a style name into a (base style, raster layers) pair.

pycsamt.map.overlays.BasemapConfig

Plotly geographic map layout settings.

pycsamt.map.overlays.build_basemap_layout

Return layout settings for geographic station maps.

pycsamt.map.overlays.build_contour_overlay

Build an interpolated map contour overlay.

pycsamt.map.overlays.build_geo_contour_image

Render a Surfer-style filled-contour PNG for a basemap image layer.

pycsamt.map.overlays.build_profile_line_overlay

Build a reusable profile-line overlay trace.

pycsamt.map.overlays.build_station_label_overlay

Build a reusable station-label overlay trace.

pycsamt.map.overlays.build_topography_overlay

Build a Plotly 3-D terrain mesh or surface.

pycsamt.map.overlays.CRSConfig

Coordinate transform settings.

pycsamt.map.overlays.interpolate_overlay_grid

Interpolate scattered values to a regular grid.

pycsamt.map.overlays.normalize_epsg

Return an EPSG authority string.

pycsamt.map.overlays.reproject_xy_to_lonlat

Reproject x, y from epsg to WGS84 lon/lat.

pycsamt.map.overlays.resolve_crs_info

Return a human-readable CRS description.

pycsamt.map.overlays.transform_xy

Transform coordinates between two CRS definitions.

pycsamt.map.profile.build_profile_map

Build the concrete profile-view figure.

pycsamt.map.profile.build_pseudosection

Build the concrete pseudosection figure.

pycsamt.map.profile.plot_profile_map

Build a profile-view map.

pycsamt.map.profile.plot_pseudosection

Build a resistivity or phase pseudosection.

pycsamt.map.profile.ProfileMap

Builder object for profile maps.

pycsamt.map.ProfileLine

A named sequence of stations in one profile.

pycsamt.map.select_frequency

Select the closest finite positive frequency.

pycsamt.map.station.build_station_map

Build a Plotly 2-D station map.

pycsamt.map.station.plot_station_map

Build a 2-D station map.

pycsamt.map.station.StationMap

Builder object for station-map figures.

pycsamt.map.StationRecord

A normalized station row used by map renderers.

pycsamt.map.topo.apply_elevations

Return a copy of data with station elevations overridden.

pycsamt.map.topo.export_elevations

Export station id/elevation/coordinates to CSV or HDF5.

pycsamt.map.topo.fetch_elevations

Fetch station elevations online from their coordinates.

pycsamt.map.topo.parse_elevation_file

Parse an uploaded elevation file into {station_id: elev}.

pycsamt.map.value_at_frequency_details

Return values with selected-frequency metadata.

pycsamt.map.view.MapView

A code-first session bound to one (multi-line) survey.

pycsamt.map.volume.build_3d_map

Build the concrete 3-D figure.

pycsamt.map.volume.Map3D

Builder object for 3-D survey maps.

pycsamt.map.volume.plot_3d_map

Build a 3-D map.

pycsamt.map.volume.plot_volume_map

Build a 3-D volume map.

pycsamt.metadata.CopyrightInfo

Copyright and usage conditions.

pycsamt.metadata.frequency.band_for_frequency

Return all bands in the registry that contain f Hz.

pycsamt.metadata.frequency.doi_estimate

Return the skin-depth DOI estimate in metres at frequency f.

pycsamt.metadata.frequency.frequency_range

Return (f_min, f_max) for a named method or band.

pycsamt.metadata.frequency.FrequencyBand

Specification of an EM geophysical frequency band.

pycsamt.metadata.frequency.register_band

Add or replace a FrequencyBand in the global registry.

pycsamt.metadata.geology.Formation

A named geological scenario for layered-Earth modelling.

pycsamt.metadata.geology.geology_prior

Return a GEOLOGY_PRIORS-compatible dict for name.

pycsamt.metadata.geology.GeologyCatalog

Registry of geological formations for layered-Earth modelling.

pycsamt.metadata.instrument.InstrumentMeta

Structured descriptor for an EM acquisition system.

pycsamt.metadata.instrument.known_system

Shortcut for InstrumentMeta.from_preset().

pycsamt.metadata.instrument.list_presets

Return sorted list of available preset keys.

pycsamt.metadata.instrument.SensorSpec

Specification for a single sensor (magnetic or electric).

pycsamt.metadata.Person

Person contact information.

pycsamt.metadata.quality.assess_collection

Compute DataQuality for every site in sites.

pycsamt.metadata.quality.ComponentQuality

Quality metrics for a single impedance component.

pycsamt.metadata.quality.DataQuality

Data-quality summary for a single MT station.

pycsamt.metadata.quality.quality_dataframe

Return a pandas.DataFrame with one quality row per station.

pycsamt.metadata.quality.QualityFlag

Data-quality classification for one component or a whole station.

pycsamt.metadata.Reference

Bibliographic reference information.

pycsamt.metadata.rocks.RockProperties

Access and query geological rock metadata:

pycsamt.metadata.Software

Software metadata.

pycsamt.metadata.survey.BBox

Geographic bounding box in decimal degrees (WGS-84 default).

pycsamt.metadata.survey.SurveyMeta

Campaign-level descriptor for an MT/AMT/CSAMT/TEM survey.

pycsamt.pipeline.categories

Return a sorted list of distinct step categories.

pycsamt.pipeline.get_preset

Return the Preset for name.

pycsamt.pipeline.list_presets

Return all available Preset objects.

pycsamt.pipeline.list_steps

Return all registered StepSpec objects, optionally filtered.

pycsamt.pipeline.load_json

Parse a JSON pipeline config file and return the raw dict.

pycsamt.pipeline.load_py

Import a Python config file and return its pipeline_config dict.

pycsamt.pipeline.load_yaml

Parse a YAML pipeline config file and return the raw dict.

pycsamt.pipeline.lookup_step

Return the StepSpec for code_or_name.

pycsamt.pipeline.Pipeline

An ordered, configurable MT processing pipeline.

pycsamt.pipeline.PipelineBase

Base class for pyCSAMT pipeline objects.

pycsamt.pipeline.PipelineResult

Return value of Pipeline.run().

pycsamt.pipeline.plot.plot_pipeline_dashboard

Create a compact dashboard for a completed pipeline run.

pycsamt.pipeline.plot.plot_pipeline_status

Plot per-step success status for a pipeline run.

pycsamt.pipeline.plot.plot_pipeline_timing

Plot elapsed time per pipeline step.

pycsamt.pipeline.plot.plot_site_count_flow

Plot station counts entering and leaving each pipeline step.

pycsamt.pipeline.Preset

A named, ordered collection of pipeline steps.

pycsamt.pipeline.preset_catalogue

Return a formatted catalogue of all presets.

pycsamt.pipeline.Step

A configured pipeline step.

pycsamt.pipeline.step_codes

Return a sorted list of all step codes.

pycsamt.pipeline.step_names

Return a sorted list of all step names.

pycsamt.pipeline.StepResult

Immutable record produced after one pipeline step runs.

pycsamt.pipeline.StepSpec

Immutable descriptor for one pipeline step.

pycsamt.pipeline.stratagem.get_stratagem_preset

Return the StratagemPreset for name.

pycsamt.pipeline.stratagem.list_stratagem_presets

Return all StratagemPreset objects.

pycsamt.pipeline.stratagem.run_stratagem_preset

Execute a named Stratagem preset in one call (convenience wrapper).

pycsamt.pipeline.stratagem.stratagem_preset_catalogue

Return a formatted catalogue of all Stratagem presets.

pycsamt.pipeline.stratagem.StratagemPipeline

A Pipeline extended with Stratagem pre/post-processing.

pycsamt.pipeline.stratagem.StratagemPreset

Named configuration bundle for StratagemSurvey.

pycsamt.seg.base.SurveyBase

pycsamt.seg.edi.EDIFile

High–level EDI dispatcher for SEG/EMAP/CSAMT archives.

pycsamt.seg.edi.EDIMixin

Lightweight registry and helpers used by EDI readers.

pycsamt.seg.edi.EDIOMixin

Tolerant >BLOCK parser and TF (Z/Tipper) builder.

pycsamt.seg.other.OtherIO

Reader/writer for generic >BLOCK data under OTHERSECT.

pycsamt.seg.other.OtherSECT

Header container for >=OTHERSECT blocks.

pycsamt.seg.spectra.Spectra

Container for >SPECTRA blocks grouped per frequency.

pycsamt.seg.spectra.SpectraIO

Read and write >SPECTRA data blocks.

pycsamt.seg.spectra.SpectraSECT

Minimal container for the >=SPECTRASECT header.

pycsamt.seg.survey.EDIProfile

Profile helper for one or many EDIFile objects.

pycsamt.seg.survey.Stations

Lightweight table view for station metadata derived from EDIFile objects.

pycsamt.seg.survey.Topography

Elevation profile helper.

pycsamt.seg.time_series.TimeSeries

Container for >TSERIES data aggregated by channel.

pycsamt.seg.time_series.TSect

Minimal container for the >=TSERIESSECT header block.

pycsamt.seg.time_series.TSIO

Reader and writer for >TSERIES data blocks.

pycsamt.seg.validation.IsEdi

Abstract base for SEG-EDI validation helpers.

pycsamt.seg.xa.build_dataset

Build a multi-site xarray Dataset from an iterable of EDIFile.

pycsamt.seg.xa.EDIAcc

An xarray accessor for convenient interaction with EDI datasets.

pycsamt.seg.xa.XAMixin

A mixin that adds convenient xarray exports to collection classes.

pycsamt.session.Normalize

Normalize heterogeneous EM sources into a common form.

pycsamt.session.normalize_session

Create and return a Normalize with common defaults.

pycsamt.session.Session

Context-managed capture of key transformation outputs.

pycsamt.session.work_session

Create and return a Session with common defaults.

pycsamt.site.base.Site

High-level wrapper for a single MT/CSAMT site backed by an EDIFile.

pycsamt.site.base.SiteMixin

Lightweight wrapper exposing station-centric accessors and utilities for a single EDIFile.

pycsamt.site.base.Sites

Container for multiple Site objects with convenient indexing, selection, and bulk edit operations.

pycsamt.site.base.to_edis

Unwrap site-like inputs to raw EDI objects.

pycsamt.site.compute.phase_slope

Estimate phase slopes within a frequency band.

pycsamt.site.compute.res_at_freq

Evaluate apparent resistivity at a target frequency.

pycsamt.site.compute.strike_estimate

Estimate a strike angle from impedance tensors.

pycsamt.site.compute.tipper_magnitude

Summarize or tabulate tipper magnitudes.

pycsamt.site.edit.fill_missing

Replace missing or non-finite values in Z and/or tipper arrays with zeros or NaNs.

pycsamt.site.edit.recompute_res_phase

Recompute apparent resistivity and phase from the impedance tensor Z for a single site.

pycsamt.site.edit.rename

Rename a station using an explicit name or a policy function.

pycsamt.site.edit.rename_all

Batch rename a collection of sites.

pycsamt.site.edit.rotate

Rotate impedance tensor Z (and tipper T, if present) by an azimuthal angle in degrees.

pycsamt.site.edit.rotate_all

Rotate every site in a collection by an azimuthal angle in degrees.

pycsamt.site.edit.select_freq

Subset the dataset along frequency by range or explicit indices, keeping all affected arrays aligned.

pycsamt.site.edit.select_freq_all

Subset all sites in a collection along frequency, keeping arrays aligned.

pycsamt.site.edit.set_coords

Set geographic coordinates on the EDI header.

pycsamt.site.edit.set_coords_all

Batch set coordinates for a collection of sites.

pycsamt.site.edit.set_coords_from_en

Project (easting, northing) to lon/lat and set a site's coords.

pycsamt.site.edit.set_coords_from_table

Set site coordinates for many EDI files from a table.

pycsamt.site.export.pack_zip

Pack a set of sites into a zip archive using a filename template.

pycsamt.site.export.write_site

Write a single site (EDI) to a target path.

pycsamt.site.export.write_sites

Write a collection of sites to a directory using a filename template.

pycsamt.site.recompute.EDIRecomputer

Recompute and rewrite EDI files using pyCSAMT conventions.

pycsamt.site.recompute.EDIRecomputeRecord

Per-station outcome for an EDI recomputation workflow.

pycsamt.site.recompute.EDIRecomputeResult

Result returned by EDIRecomputer.

pycsamt.site.recompute.recompute_edi

Recompute one EDI object.

pycsamt.site.recompute.recompute_edis

Convenience function for EDIRecomputer.

pycsamt.site.report.SiteReport

Statistics and display for a single Site.

pycsamt.site.report.SitesReport

Statistics and display for a Sites collection.

pycsamt.site.selection.by_bbox

Select sites that fall inside an axis-aligned geographic box.

pycsamt.site.selection.by_chainage

Select sites whose stored chainage falls within a closed interval.

pycsamt.site.selection.by_freq

Select sites that contain at least one data row with frequency inside a closed interval.

pycsamt.site.selection.by_index

Select sites by zero-based numeric indices, supporting negative indices.

pycsamt.site.selection.by_names

Select sites by matching station names against one or more patterns.

pycsamt.site.selection.by_predicate

Select sites using a user-supplied predicate function.

pycsamt.site.selection.drop_empty

Drop sites that are effectively empty.

pycsamt.site.selection.keep_finite_z

Keep sites that contain at least one finite impedance value.

pycsamt.site.selection.mask_large_phase_err

Filter out sites whose maximum phase-error exceeds a threshold.

pycsamt.tdem.avg.is_temavg_file

Return True when path looks like a TEMAVG file.

pycsamt.tdem.avg.TEMAVG

Processed content of one Zonge TEMAVG .AVG file.

pycsamt.tdem.avg.TEMAVGRecord

One processed TEMAVG gate value.

pycsamt.tdem.coordinates.read_tem_coordinates

Read a TEM profile/point coordinate table.

pycsamt.tdem.coordinates.TEMCoordinate

Coordinate metadata for one TEM station point.

pycsamt.tdem.coordinates.TEMCoordinateTable

Collection of TEM station coordinates.

pycsamt.tdem.log.is_tem_log_file

Return True when path looks like a TEMAVG log.

pycsamt.tdem.log.TEMLog

Parsed TEMAVG processing log.

pycsamt.tdem.log.TEMLogRecord

One acquisition-summary row from a TEMAVG log.

pycsamt.tdem.plot.plot_decay

Plot TEM decay curves.

pycsamt.tdem.plot.plot_elevation_profile

Plot station elevation along TEM survey profiles.

pycsamt.tdem.plot.plot_gate_profile

Plot selected TEMAVG gate profiles.

pycsamt.tdem.plot.plot_survey_map

Plot station coordinates from a TEM survey.

pycsamt.tdem.plot.plot_survey_overview

Plot a TEM survey map with an elevation-profile panel.

pycsamt.tdem.plot.plot_tem_dashboard

Plot a compact TDEM dashboard.

pycsamt.tdem.plot.plot_tem_z_section

Plot a TEMAVG .Z pseudo-section.

pycsamt.tdem.plot.plot_temavg_section

Plot a TEMAVG pseudo-section.

pycsamt.tdem.plot.plot_transformed_rho

Plot transformed apparent resistivity and phase.

pycsamt.tdem.plot.PlotDecayCurve

Plot one or more TEM decay curves on log-log axes.

pycsamt.tdem.plot.PlotElevationProfile

Plot TEM station elevation along one or more survey profiles.

pycsamt.tdem.plot.PlotGateProfile

Plot selected TEMAVG windows as profiles along stations.

pycsamt.tdem.plot.PlotSurveyMap

Plot TEM station coordinates from a survey or coordinate table.

pycsamt.tdem.plot.PlotSurveyOverview

Plot a TEM survey map with a matched elevation profile panel.

pycsamt.tdem.plot.PlotTEMAVGSection

Plot a TEMAVG pseudo-section from station-gate records.

pycsamt.tdem.plot.PlotTEMDashboard

Create a compact multi-panel TDEM real-data dashboard.

pycsamt.tdem.plot.PlotTEMZSection

Plot a ZPLOT .Z pseudo-section.

pycsamt.tdem.plot.PlotTransformedRho

Plot transformed apparent resistivity and optional phase.

pycsamt.tdem.plot.StationTickConfig

Station-axis tick configuration for TDEM plots.

pycsamt.tdem.plot.TDEMPlotStyle

Shared style values for TDEM figures.

pycsamt.tdem.reader.TEMReader

Unified TEM file reader with format auto-detection.

pycsamt.tdem.survey.read_temavg_survey

Read a directory of Zonge TEMAVG processed files.

pycsamt.tdem.survey.TEMSurvey

Collection of processed TEM files from one survey folder.

pycsamt.tdem.TEMSounding

Container for a single time-domain EM (TEM) sounding.

pycsamt.tdem.transform.FourierTransform

Rigorous TDEM → MT impedance via numerical Fourier cosine transform and Kramers-Kronig reconstruction (Meju 1996; Christensen 1990).

pycsamt.tdem.transform.LateTimeTransform

Convert TEM soundings to frequency-domain apparent impedance using the late-time apparent-resistivity approximation.

pycsamt.tdem.transform.TEMtoEDI

Convert one or more TEM soundings to a EDICollection.

pycsamt.tdem.waveform.CustomWaveform

User-defined waveform supplied as paired time/current arrays.

pycsamt.tdem.waveform.HalfSineWaveform

Half-sine transmitter current (used by some CSEM / airborne systems).

pycsamt.tdem.waveform.RampWaveform

Transmitter current with a finite linear ramp on switch-off.

pycsamt.tdem.waveform.SquareWaveform

Ideal square-wave transmitter current (zero ramp time).

pycsamt.tdem.workflow.read_temavg_soundings

Read a TEMAVG folder and return station soundings.

pycsamt.tdem.workflow.TEMAVGConversion

Result bundle returned by TEMAVG workflow helpers.

pycsamt.tdem.workflow.transform_temavg_survey

Run a complete TEMAVG-to-frequency workflow.

pycsamt.tdem.zplot.is_tem_z_file

Return True when path looks like a TEMAVG .Z file.

pycsamt.tdem.zplot.TEMZPlot

Parsed content of one TEMAVG contour .Z file.

pycsamt.tdem.zplot.TEMZRecord

One row from a TEMAVG contour .Z file.

pycsamt.topo.config.configure_topo

Configure the global PYCSAMT_TOPO singleton.

pycsamt.topo.config.reset_topo

Reset PYCSAMT_TOPO to package defaults.

pycsamt.topo.config.TopoConfig

Package-wide topography rendering policy for 2-D section plots.

pycsamt.transformers.jedi.AVGtoEDI

Convert a Zonge AVG source to an EDICollection.

pycsamt.transformers.jedi.JtoEDI

Convert a Jones J source to EDI or an EDI collection.

pycsamt.transformers.spectra.SpectraToEDI

Transform SEG spectra-EDI files to MT-impedance EDI files.

pycsamt.transformers.spectra.TransformResult

Outcome of a batch spectra→impedance conversion.

pycsamt.transformers.TransformerMixin

Template utilities for AVG/J -> EDI transformations.

pycsamt.transformers.ts.TStoEDI

Transform raw MT field time series to impedance EDI files.

pycsamt.utils.em.align_tensor

Align a tensor component to a reference frequency grid.

pycsamt.utils.em.check_em_kind

Validate a collection of EM objects and return their common kind.

pycsamt.utils.em.compute_qc

Assess data quality across a collection of EDI/Z objects.

pycsamt.utils.em.export_edis

Export new EDI files from a batch of EDI objects and Z tensors.

pycsamt.utils.em.extract_z_list

Return a list of Z objects from EDI or Z inputs.

pycsamt.utils.em.full_freq

Return the reference (clean) frequency grid for a collection.

pycsamt.utils.em.parse_tensor

Parse and validate a tensor request, returning name and component.

pycsamt.utils.em.plot_confidence

Plot confidence diagnostics from tensor errors for EM data.

pycsamt.utils.em.plot_station_tensors

Plot tensors for one station: resistivity/phase or Z real/imag.

pycsamt.utils.em.plot_strike

Plot strike angles from invariants and phase tensor as rose/polar diagrams.

pycsamt.utils.em.plot_tensors

Plot tensors for one station (compat wrapper).

pycsamt.utils.em.tensor2d

Build a 2-D matrix (freq × station) from a tensor collection.

pycsamt.utils.em.wrap_phase

Wrap phase values to a target range with a given periodic base.

pycsamt.z.resphase.ResPhase

Resistivity/phase container backed by complex Z.

pycsamt.z.z.Z

High-level impedance tensor container built on ResPhase.

pycsamt.zonge.avg.AMTAVG

Extends AVG with tensor components and analytical methods.

pycsamt.zonge.avg.AVG

High-level façade for a Zonge AVG/AMTAVG dataset.

pycsamt.zonge.avg.BaseAVG

Base class for AVG data handling and file writing.

pycsamt.zonge.base.AVGComponentBase

Abstract base class for a single AVG data component.

pycsamt.zonge.base.AVGFrame

A container for a tidy AVG table and its metadata.

pycsamt.zonge.base.AvgRow

A structured, format-agnostic representation of a single row.

pycsamt.zonge.base.FieldAliases

Dynamically provides all known aliases for canonical names.

pycsamt.zonge.config.Zonge

A foundational base class for Zonge data objects.

pycsamt.zonge.info.DataInfo

High-level aggregator for a complete Zonge AVG dataset.

pycsamt.zonge.meas.Amps

Transmitter current amplitude container (unit: A).

pycsamt.zonge.meas.CompMeas

Enumeration/validator for classical CSAMT component labels.

pycsamt.zonge.meas.Frequency

Frequency axis manager (Hz) for AVG tables.

pycsamt.zonge.proc_utils.ama

Apply an Adaptive Moving Average (AMA) filter.

pycsamt.zonge.proc_utils.flma

Apply a Fixed-Length Moving Average (FLMA) filter.

pycsamt.zonge.proc_utils.get_reference_frequency

Determine a suitable reference frequency for static shift.

pycsamt.zonge.proc_utils.get_skew

Calculate Swift's skew for the impedance tensor.

pycsamt.zonge.proc_utils.get_strike

Calculate the geoelectric strike angle.

pycsamt.zonge.proc_utils.interpolate_to_log_space

Interpolate AVG data onto a regular log-spaced grid.

pycsamt.zonge.proc_utils.smooth_rho_from_phase

Smooth apparent resistivity using the Hilbert transform.

pycsamt.zonge.proc_utils.tma

Apply a Trimmed Moving Average (TMA) filter.

pycsamt.zonge.processing.ASTATIC

A class for advanced processing of Zonge AVG data.

pycsamt.zonge.property.Hardware

Minimal provenance captured from banner / comment lines.

pycsamt.zonge.property.Receiver

Receiver electrode / coil metadata ($Rx.*).

pycsamt.zonge.property.SkipFlag

Encapsulate Zonge skip-flag quality codes.

pycsamt.zonge.property.SurveyAnnotation

Project-level annotation block ($Job.*).

pycsamt.zonge.property.SurveyConfiguration

Survey-level configuration taken from AVG headers.

pycsamt.zonge.property.Transmitter

Transmitter loop / bipole metadata ($Tx.*).

pycsamt.zonge.resphase.Phase

Impedance phase (\(\varphi\)) per component.

pycsamt.zonge.resphase.Resistivity

Apparent resistivity (\(\rho_a\)) per component.

pycsamt.zonge.schema.get_aliases

Fetch all known aliases for a canonical column name.

pycsamt.zonge.survey.Station

One-dimensional survey-line geometry container.

pycsamt.zonge.tensor.TensorBase

Adds impedance-like tensor helpers to a component.

pycsamt.zonge.tipper.Tipper

Geomagnetic transfer function (Tipper) component.

pycsamt.zonge.utils.load_avg

Read a Zonge AVG file and return a tidy DataFrame and metadata.

pycsamt.zonge.utils.write_avg

Serialize a DataFrame to a Zonge kind-2 AVG file.