Base SimPEG Classes (simpeg)#

SimPEG is built off of several base classes that define the general structure of simulations and inversion operations.

Simulations#

Base Simulations#

simulation.BaseSimulation([survey, ...])

Base class for all geophysical forward simulations in SimPEG.

simulation.BaseTimeSimulation([t0, time_steps])

Base class for time domain simulations.

simulation.LinearSimulation([linear_model, ...])

Linear forward simulation class.

simulation.ExponentialSinusoidSimulation(mesh)

Simulation class for exponentially decaying sinusoidal kernel functions.

base.BasePDESimulation(mesh[, solver, ...])

Base simulation for PDE solutions.

base.BaseElectricalPDESimulation(mesh[, ...])

base.BaseMagneticPDESimulation(mesh[, mu, ...])

Base Surveys, Sources and Receivers#

survey.BaseRx(locations[, storeProjections])

Base SimPEG receiver class.

survey.BaseTimeRx(locations, times, **kwargs)

Base SimPEG receiver class for time-domain simulations

survey.BaseSrc([receiver_list, location])

Base SimPEG source class.

survey.BaseSurvey(source_list[, counter])

Base SimPEG survey class.

survey.BaseTimeSurvey(source_list[, counter])

Base SimPEG survey class for time-dependent simulations.

Models#

models.Model(input_array[, mapping])

props.PhysicalProperty(short_details[, ...])

props.Derivative([short_details, ...])

props.Invertible(property_name[, optional])

props.Reciprocal(prop1, prop2)

props.HasModel([model])

Data#

data.Data(survey[, dobs, relative_error, ...])

Class for defining data in SimPEG.

data.SyntheticData(survey[, dobs, dclean, ...])

Synthetic data class.

Fields#

fields.Fields(simulation[, knownFields, ...])

Base class for storing fields.

fields.TimeFields(simulation[, knownFields, ...])

Base class for storing TDEM fields.

Mappings#

maps.BaseParametric(mesh[, slope, ...])

Base class for parametric mappings from simple geological structures to meshes.

maps.ChiMap([mesh, nP])

Mapping that computes the magnetic permeability given a set of magnetic susceptibilities.

maps.ComboMap(maps, **kwargs)

Combination mapping constructed by joining a set of other mappings.

maps.ComplexMap([mesh, nP])

Maps the real and imaginary component values stored in a model to complex values.

maps.ExpMap([mesh, nP])

Mapping that computes the natural exponentials of the model parameters.

maps.LinearMap(A[, b])

A generalized linear mapping.

maps.IdentityMap([mesh, nP])

Identity mapping and the base mapping class for all other SimPEG mappings.

maps.InjectActiveCells(mesh[, active_cells, ...])

Map active cells model to all cell of a mesh.

maps.MuRelative([mesh, nP])

Mapping that computes the magnetic permeability given a set of relative permeabilities.

maps.LogMap([mesh, nP])

Mapping that computes the natural logarithm of the model parameters.

maps.LogisticSigmoidMap([mesh, nP, ...])

Mapping that computes the logistic sigmoid of the model parameters.

maps.ParametricBlock(mesh[, epsilon, p])

Mapping for a rectangular block within a wholespace.

maps.ParametricCircleMap(mesh[, logSigma, slope])

Mapping for a parameterized circle.

maps.ParametricEllipsoid(mesh, **kwargs)

Mapping for a rectangular block within a wholespace.

maps.ParametricLayer(mesh, **kwargs)

Mapping for a horizontal layer within a wholespace.

maps.ParametricPolyMap(mesh, order[, ...])

Mapping for 2 layer model whose interface is defined by a polynomial.

maps.Projection(nP, index, **kwargs)

Projection mapping.

maps.ReciprocalMap([mesh, nP])

Mapping that computes the reciprocals of the model parameters.

maps.SphericalSystem([mesh, nP])

Mapping vectors from spherical to Cartesian coordinates.

maps.Surject2Dto3D(mesh[, normal])

Map 2D tensor model to 3D tensor mesh.

maps.SurjectFull(mesh, **kwargs)

Mapping a single property value to all mesh cells.

maps.SurjectUnits(indices, **kwargs)

Surjective mapping to all mesh cells.

maps.SurjectVertical1D(mesh, **kwargs)

Map 1D layered Earth model to 2D or 3D tensor mesh.

maps.Weighting([mesh, nP, weights])

Mapping that scales the elements of the model by a corresponding set of weights.

maps.Wires(*args)

Mapping class for organizing multiple parameter types into a single model.

Inversions#

Objective Function Pieces#

objective_function.BaseObjectiveFunction([...])

Base class for creating objective functions.

objective_function.ComboObjectiveFunction([...])

Composite for multiple objective functions.

objective_function.L2ObjectiveFunction([nP, ...])

Weighted least-squares objective function class.

data_misfit.BaseDataMisfit(data, simulation)

Base data misfit class.

data_misfit.L2DataMisfit(data, simulation[, ...])

Least-squares data misfit.

Optimizations#

optimization.ProjectedGradient(**kwargs)

optimization.BFGS(**kwargs)

optimization.GaussNewton(**kwargs)

optimization.InexactGaussNewton(**kwargs)

Minimizes using CG as the inexact solver of

optimization.SteepestDescent(**kwargs)

optimization.NewtonRoot(**kwargs)

Newton Method - Root Finding

optimization.ProjectedGNCG(**kwargs)

optimization.Minimize(**kwargs)

Minimize is a general class for derivative based optimization.

optimization.Remember()

This mixin remembers all the things you tend to forget.

optimization.IterationPrinters()

docstring for IterationPrinters

optimization.StoppingCriteria()

docstring for StoppingCriteria

Base inversion pieces#

inverse_problem.BaseInvProblem(dmisfit, reg, opt)

inversion.BaseInversion(invProb[, ...])

Inversion Class