# SimPEG.maps.LogisticSigmoidMap#

class SimPEG.maps.LogisticSigmoidMap(mesh=None, nP=None, lower_bound=0, upper_bound=1, **kwargs)[source]#

Bases: IdentityMap

Mapping that computes the logistic sigmoid of the model parameters.

Where $$\mathbf{m}$$ is a set of model parameters, LogisticSigmoidMap creates a mapping $$\mathbf{u}(\mathbf{m})$$ that computes the logistic sigmoid of every element in $$\mathbf{m}$$; i.e.:

$\mathbf{u}(\mathbf{m}) = sigmoid(\mathbf{m}) = \frac{1}{1+\exp{-\mathbf{m}}}$

LogisticSigmoidMap transforms values onto the interval (0,1), but can optionally be scaled and shifted to the interval (a,b). This can be useful for inversion of data that varies over a log scale and bounded on some interval:

$\mathbf{u}(\mathbf{m}) = a + (b - a) \cdot sigmoid(\mathbf{m})$
Parameters:
meshdiscretize.BaseMesh

The number of parameters accepted by the mapping is set to equal the number of mesh cells.

nPint

Set the number of parameters accepted by the mapping directly. Used if the number of parameters is known. Used generally when the number of parameters is not equal to the number of cells in a mesh.

lower_bound: float or (nP) numpy.ndarray

lower bound (a) for the transform. Default 0. Defined in mathbf{u} space.

upper_bound: float or (nP) numpy.ndarray

upper bound (b) for the transform. Default 1. Defined in mathbf{u} space.

Attributes

 is_linear Determine whether or not this mapping is a linear operation. lower_bound The lower bound mesh The mesh used for the mapping nP Number of parameters the mapping acts on. shape Dimensions of the mapping operator upper_bound The upper bound

Methods

 deriv(m[, v]) Derivative of mapping with respect to the input parameters. dot(map1) Multiply two mappings to create a SimPEG.maps.ComboMap. Apply the inverse of the mapping to an array. test([m, num]) Derivative test for the mapping.