Model¶
-
class
casingSimulations.model.
BaseCasingParametersMixin
(**kwargs)¶ Bases:
casingSimulations.base.BaseCasing
Parameters used to set up a casing in a background. This class does not function on its own. It should be mixed in with the background model of your choiceRequired Properties:
- casing_d (
Float
): diameter of the casing (m), a float, Default: 0.1 - casing_l (
Float
): length of the casing (m), a float, Default: 1000 - casing_t (
Float
): thickness of the casing (m), a float, Default: 0.01 - casing_top (
Float
): top of the casing (m), a float, Default: 0.0 - directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string - mur_casing (
Float
): relative permeability of the casing, a float, Default: 100.0 - sigma_casing (
Float
): conductivity of the casing (S/m), a float, Default: 5500000.0 - sigma_inside (
Float
): conductivity of the fluid inside the casing (S/m), a float, Default: 1.0 - version (
String
): version of the software, a unicode string, Default: 0.0.4
-
add_mur_casing
(mesh, mur)¶ add relative magnetic permeability of the casing to the provided model :param discretize.BaseMesh mesh: a discretize mesh :param numpy.ndarray mur: relative magnetic permittivity model to modify :rtype: numpy.ndarray :return: relative magnetic permeability model with casing
-
add_sigma_casing
(mesh, sigma)¶ add the conductivity of the casing to the provided conductivity model :param discretize.BaseMesh mesh: a discretize mesh :param numpy.ndarray sigma: electrical conductivity model to modify :rtype: numpy.ndarray :return: electrical conductivity model with casing
-
casing_z
¶ z-extent of the casing
Return type: numpy.array
-
ind_casing
(mesh)¶ indices of the cell centers of the casing
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
ind_inside
(mesh)¶ indices of the cell centers of the inside portion of the casing
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
indx_casing
(mesh)¶ x-indices of the casing
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
indx_inside
(mesh)¶ x indicies of the inside of the casing
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
indz_casing
(mesh)¶ z-indices of the casing
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
info_casing
¶
- casing_d (
-
class
casingSimulations.model.
CasingInHalfspace
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.Halfspace
,casingSimulations.model.BaseCasingParametersMixin
A model of casing in a halfspaceRequired Properties:
- casing_d (
Float
): diameter of the casing (m), a float, Default: 0.1 - casing_l (
Float
): length of the casing (m), a float, Default: 1000 - casing_t (
Float
): thickness of the casing (m), a float, Default: 0.01 - casing_top (
Float
): top of the casing (m), a float, Default: 0.0 - directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - mur_casing (
Float
): relative permeability of the casing, a float, Default: 100.0 - sigma_air (
Float
): conductivity of the air (S/m), a float, Default: 1e-06 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - sigma_casing (
Float
): conductivity of the casing (S/m), a float, Default: 5500000.0 - sigma_inside (
Float
): conductivity of the fluid inside the casing (S/m), a float, Default: 1.0 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - surface_z (
Float
): elevation of the air-earth interface (m), a float, Default: 0 - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
mur
(mesh)¶ put the permeability model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
sigma
(mesh)¶ put the conductivity model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
- casing_d (
-
class
casingSimulations.model.
CasingInSingleLayer
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.SingleLayer
,casingSimulations.model.BaseCasingParametersMixin
A model of casing in an earth that has a single layerRequired Properties:
- casing_d (
Float
): diameter of the casing (m), a float, Default: 0.1 - casing_l (
Float
): length of the casing (m), a float, Default: 1000 - casing_t (
Float
): thickness of the casing (m), a float, Default: 0.01 - casing_top (
Float
): top of the casing (m), a float, Default: 0.0 - directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - layer_z (
Array
): z-limits of the layer, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (2), Default: [-1000. -900.] - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - mur_casing (
Float
): relative permeability of the casing, a float, Default: 100.0 - sigma_air (
Float
): conductivity of the air (S/m), a float, Default: 1e-06 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - sigma_casing (
Float
): conductivity of the casing (S/m), a float, Default: 5500000.0 - sigma_inside (
Float
): conductivity of the fluid inside the casing (S/m), a float, Default: 1.0 - sigma_layer (
Float
): conductivity of the layer (S/m), a float, Default: 0.01 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - surface_z (
Float
): elevation of the air-earth interface (m), a float, Default: 0 - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
mur
(mesh)¶ put the permeability model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
sigma
(mesh)¶ put the conductivity model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
- casing_d (
-
class
casingSimulations.model.
CasingInWholespace
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.Wholespace
,casingSimulations.model.BaseCasingParametersMixin
A model of casing in a wholespaceRequired Properties:
- casing_d (
Float
): diameter of the casing (m), a float, Default: 0.1 - casing_l (
Float
): length of the casing (m), a float, Default: 1000 - casing_t (
Float
): thickness of the casing (m), a float, Default: 0.01 - casing_top (
Float
): top of the casing (m), a float, Default: 0.0 - directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - mur_casing (
Float
): relative permeability of the casing, a float, Default: 100.0 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - sigma_casing (
Float
): conductivity of the casing (S/m), a float, Default: 5500000.0 - sigma_inside (
Float
): conductivity of the fluid inside the casing (S/m), a float, Default: 1.0 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
mur
(mesh)¶ put the permeability model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
-
sigma
(mesh)¶ put the conductivity model on a mesh
Parameters: mesh (discretize.BaseMesh) – a discretize mesh Return type: numpy.array
- casing_d (
-
class
casingSimulations.model.
Halfspace
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.Wholespace
Model and survey parameters for an electromagnetic survey in a halfspaceRequired Properties:
- directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - sigma_air (
Float
): conductivity of the air (S/m), a float, Default: 1e-06 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - surface_z (
Float
): elevation of the air-earth interface (m), a float, Default: 0 - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
ind_air
(mesh)¶ indices where the air is
Parameters: mesh (discretize.BaseMesh) – mesh to find the air cells of Return type: bool
-
info_model
¶
-
sigma
(mesh)¶ put the conductivity model on a mesh
Parameters: mesh (discretize.BaseMesh) – mesh to find air cells of Return type: numpy.array
- directory (
-
class
casingSimulations.model.
PhysicalProperties
(meshGenerator, modelParameters)¶ Bases:
object
Physical properties on the mesh
-
model
¶ model vector [sigma, mu]
Return type: numpy.array
-
mu
¶ permeability
Return type: numpy.array
-
mur
¶ relative permeability
Return type: numpy.array
-
plot
(ax=None, clim=[None, None], pcolorOpts=None)¶ plot the electrical conductivity and relative permeability
Parameters:
-
plot_mur
(ax=None, clim=None, pcolorOpts=None)¶ plot the relative permeability
Parameters: - ax (matplotlib.axes) – axis
- clim (numpy.array) – colorbar limits
- pcolorOpts (dict) – dictionary of pcolor options
-
plot_prop
(prop, ax=None, clim=None, pcolorOpts=None, theta_ind=0)¶ Plot a cell centered property
Parameters: - prop (numpy.array) – cell centered property to plot
- ax (matplotlib.axes) – axis
- clim (numpy.array) – colorbar limits
- pcolorOpts (dict) – dictionary of pcolor options
-
plot_sigma
(ax=None, clim=None, pcolorOpts=None)¶ plot the electrical conductivity
Parameters: - ax (matplotlib.axes) – axis
- clim (numpy.array) – colorbar limits
- pcolorOpts (dict) – dictionary of pcolor options
-
sigma
¶ electrical conductivity
Return type: numpy.array
-
wires
¶ wires to hook up maps to sigma, mu
Return type: SimPEG.Maps.Wires
-
-
class
casingSimulations.model.
SingleLayer
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.Halfspace
A model consisting of air, subsurface and a single subsurface layerRequired Properties:
- directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - layer_z (
Array
): z-limits of the layer, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (2), Default: [-1000. -900.] - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - sigma_air (
Float
): conductivity of the air (S/m), a float, Default: 1e-06 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - sigma_layer (
Float
): conductivity of the layer (S/m), a float, Default: 0.01 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - surface_z (
Float
): elevation of the air-earth interface (m), a float, Default: 0 - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
ind_layer
(mesh)¶ Indices where the layer is
-
info_model
¶
-
layer_z
¶ layer_z (
Array
): z-limits of the layer, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (2), Default: [-1000. -900.]
-
sigma
(mesh)¶ Construct the conductivity model on a mesh
Parameters: mesh (discretize.BaseMesh) – mesh to put conductivity model on
- directory (
-
class
casingSimulations.model.
SurveyParametersMixin
(**kwargs)¶ Bases:
properties.base.base.HasProperties
A mixin that has the properties of the survey. It doesn’t do anything on its ownRequired Properties:
- src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.]
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
info_survey
¶
-
src_a
¶ src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.]
-
src_b
¶ src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.]
-
timeSteps
¶ timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
- src_a (
-
class
casingSimulations.model.
TimeStepArray
(doc, **kwargs)¶ Bases:
properties.math.Array
-
class_info
= 'an array or list of tuples specifying the mesh tensor'¶
-
validate
(instance, value)¶
-
-
class
casingSimulations.model.
Wholespace
(filename=None, **kwargs)¶ Bases:
casingSimulations.model.SurveyParametersMixin
,casingSimulations.base.BaseCasing
Model and survey parameters for an electromagnetic survey in a wholespaceRequired Properties:
- directory (
String
): Working directory, a unicode string, Default: . - filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json - mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0 - sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01 - src_a (
Array
): down-hole z-location for the source, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 0. 0. -975.] - src_b (
Array
): B electrode location, a list or numpy array of <type ‘float’>, <type ‘int’> with shape (*), Default: [ 1000. 0. 0.] - version (
String
): version of the software, a unicode string, Default: 0.0.4
Optional Properties:
- freqs (
Array
): source frequencies, a list or numpy array of <type ‘float’> with shape (*) - timeSteps (
TimeStepArray
): times-steps at which to solve, an array or list of tuples specifying the mesh tensor of <type ‘float’> with shape (*)
-
diffusion_distance
(t=None, sigma=None, mu=None)¶ Difusion distance
\[\]
-
filename
¶ filename (
String
): Filename to which the properties are serialized and written to, a unicode string, Default: ModelParameters.json
-
info
¶
-
info_model
¶
-
mu
(mesh)¶ Magnetic permeability on a mesh :param discretize.BaseMesh mesh: a discretize mesh :rtype: numpy.ndarray :return: magnetic permeability on the mesh
-
mur
(mesh)¶ Relative magnetic permeability on a mesh :param discretize.BaseMesh mesh: a discretize mesh :rtype: numpy.ndarray :return: relative magnetic permeability on the mesh
-
mur_back
¶ mur_back (
Float
): relative permittivity of the background, a float in range [0.0, inf], Default: 1.0
-
sigma
(mesh)¶ Electrical conductivity on a mesh :param discretize.BaseMesh mesh: a discretize mesh :rtype: numpy.ndarray :return: electrical conductivity on the mesh
-
sigma_back
¶ sigma_back (
Float
): conductivity of the background (S/m), a float in range [0.0, inf], Default: 0.01
-
skin_depth
(sigma=None, mu=None, f=None)¶ Skin depth
\[\delta = \sqrt(\frac{2}{\omega \mu \sigma})\]
- directory (