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.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.LinearMap(A[, b])

A generalized linear mapping.

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

Mapping that computes the logistic sigmoid of the model parameters.

maps.LogMap([mesh, nP])

Mapping that computes the natural logarithm of the model parameters.

maps.Mesh2Mesh(meshes[, active_cells, indActive])

Takes a model on one mesh are translates it to another mesh.

maps.MuRelative([mesh, nP])

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

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

Mapping for a rectangular block within a wholespace.

maps.ParametricBlockInLayer(mesh, **kwargs)

Parametric Block in a Layered Space

maps.ParametricCasingAndLayer(mesh, **kwargs)

Parametric layered space with casing.

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.ParametricSplineMap(mesh, pts[, ptsv, ...])

Mapping to parameterize the boundary between two geological units using spline interpolation.

maps.PolynomialPetroClusterMap([coeffxx, ...])

Modeling polynomial relationships between physical properties

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

Projection mapping.

maps.ReciprocalMap([mesh, nP])

Mapping that computes the reciprocals of the model parameters.

maps.SelfConsistentEffectiveMedium([mesh, ...])

Two phase self-consistent effective medium theory mapping for ellipsoidal inclusions.

maps.SphericalSystem([mesh, nP])

Mapping vectors from spherical to Cartesian coordinates.

maps.SumMap(maps, **kwargs)

Combination map constructed by summing multiple mappings to the same vector space.

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.TileMap(global_mesh, global_active, ...)

Mapping for tiled inversion.

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