esys.downunder.forwardmodels Package¶
Classes¶
- class esys.downunder.forwardmodels.AcousticWaveForm(domain, omega, w, data, F, coordinates=None, fixAtBottom=False, tol=1e-10, saveMemory=True, scaleF=True)¶
Forward Model for acoustic waveform inversion in the frequency domain. It defines a cost function:
- Math:
defect = 1/2 integrate( ( w * ( a * u - data ) ) ** 2 )
where w are weighting factors, data are the measured data (as a 2-comp vector of real and imaginary part) for real frequency omega, and u is the corresponding result produced by the forward model. u (as a 2-comp vector) is the solution of the complex Helmholtz equation for frequency omega, source F and complex, inverse, squared p-velocity sigma:
- Math:
-u_{ii} - omega**2 * sigma * u = F
It is assumed that the exact scale of source F is unknown and the scaling factor a of F is calculated by minimizing the defect.
- __init__(domain, omega, w, data, F, coordinates=None, fixAtBottom=False, tol=1e-10, saveMemory=True, scaleF=True)¶
initializes a new forward model with acoustic wave form inversion.
- Parameters:
domain (
Domain
) – domain of the modelw (
Scalar
) – weighting factorsdata (
escript.Data
of shape (2,)) – real and imaginary part of dataF (
escript.Data
of shape (2,)) – real and imaginary part of source given at Dirac points, on surface or at volume.coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be used (not supported yet)tol (positive
float
) – tolerance of underlying PDEsaveMemory (
bool
) – if true stiffness matrix is deleted after solution of PDE to minimize memory requests. This will require more compute time as the matrix needs to be reallocated.scaleF (
bool
) – if true source F is scaled to minimize defect.fixAtBottom (
bool
) – if true pressure is fixed to zero at the bottom of the domain
- getArguments(sigma)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
sigma (
escript.Data
of shape (2,)) – a suggestion for complex 1/V**2- Returns:
solution, uTar, uTai, uTu
- Return type:
escript.Data
of shape (2,), 3 xfloat
- getCoordinateTransformation()¶
returns the coordinate transformation being used
- Return type:
CoordinateTransformation
- getDefect(sigma, u, uTar, uTai, uTu)¶
Returns the defect value.
- Parameters:
sigma (
escript.Data
of shape (2,)) – a suggestion for complex 1/V**2u (
escript.Data
of shape (2,)) – a u vectoruTar (
float
) – equalsintegrate( w * (data[0]*u[0]+data[1]*u[1]))
uTai – equals
integrate( w * (data[1]*u[0]-data[0]*u[1]))
uTu (
float
) – equalsintegrate( w * (u,u))
- Return type:
float
- getDomain()¶
Returns the domain of the forward model.
- Return type:
Domain
- getGradient(sigma, u, uTar, uTai, uTu)¶
Returns the gradient of the defect with respect to density.
- Parameters:
sigma (
escript.Data
of shape (2,)) – a suggestion for complex 1/V**2u (
escript.Data
of shape (2,)) – a u vectoruTar (
float
) – equalsintegrate( w * (data[0]*u[0]+data[1]*u[1]))
uTai – equals
integrate( w * (data[1]*u[0]-data[0]*u[1]))
uTu (
float
) – equalsintegrate( w * (u,u))
- getSourceScaling(u)¶
returns the scaling factor s required to rescale source F to minimize defect
|s * u- data|^2
- Parameters:
u (
escript.Data
of shape (2,)) – value of pressure solution (real and imaginary part)- Return type:
complex
- getSurvey(index=None)¶
Returns the pair (data, weight)
If argument index is ignored.
- rescaleWeights(scale=1.0, sigma_scale=1.0)¶
rescales the weights such that
- Math:
integrate( ( w omega**2 * sigma_scale * data * ((1/L_j)**2)**-1) +1 )/(data*omega**2 * ((1/L_j)**2)**-1) * sigma_scale )=scale
- Parameters:
scale (positive
float
) – scale of data weighting factorssigma_scale (
Scalar
) – scale of 1/vp**2 velocity.
- setUpPDE()¶
Creates and returns the underlying PDE.
- Return type:
lpde.LinearPDE
- class esys.downunder.forwardmodels.DcRes(domain, locator, delphiIn, sampleTags, phiPrimary, sigmaPrimary, w=1.0, coordinates=None, tol=1e-08, saveMemory=True, b=None)¶
Forward Model for DC resistivity, with a given source pair. The cost function is defined as:
- Math:
defect = 1/2 (sum_s sum_pq w_pqs * ((phi_sp-phi_sq)-v_pqs)**2
- __init__(domain, locator, delphiIn, sampleTags, phiPrimary, sigmaPrimary, w=1.0, coordinates=None, tol=1e-08, saveMemory=True, b=None)¶
setup new forward model
- Parameters:
domain – the domain of the model
locator – contains locator to the measurement pairs
sampleTags (list of tuples) – tags of measurement points from which potential differences will be calculated.
phiPrimary (
Scalar
) – primary potential.
- Type:
escript domain
- Type:
list
ofLocator
- Param:
delphiIn: this is v_pq, the potential difference for the current source and a set of measurement pairs. A list of measured potential differences is expected. Note this should be the secondary potential only.
- getArguments(sigma)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
sigma (
Data
of shape (1,)) – conductivity- Returns:
phi
- Return type:
Data
of shape (1,)
- getCoordinateTransformation()¶
returns the coordinate transformation being used
- Return type:
CoordinateTransformation
- getDefect(sigma, phi, loc_phi)¶
Returns the defect value.
- Parameters:
sigma (
Data
of shape (1,)) – a suggestion for conductivityphi (
Data
of shape (1,)) – potential field
- Return type:
float
- getDomain()¶
Returns the domain of the forward model.
- Return type:
Domain
- getGradient(sigma, phi, loc_phi)¶
Returns the gradient of the defect with respect to density.
- Parameters:
sigma (
Data
of shape (1,)) – a suggestison for conductivityphi (
Data
of shape (1,)) – potential field
- getPrimaryPotential()¶
returns the primary potential :rtype:
Data
- setUpPDE()¶
Return the underlying PDE.
- Return type:
LinearPDE
- class esys.downunder.forwardmodels.ForwardModel¶
An abstract forward model that can be plugged into a cost function. Subclasses need to implement
getDefect()
,getGradient()
, and possiblygetArguments()
and ‘getCoordinateTransformation’.- __init__()¶
- getArguments(x)¶
- getCoordinateTransformation()¶
- getDefect(x, *args)¶
- getGradient(x, *args)¶
- class esys.downunder.forwardmodels.ForwardModelWithPotential(domain, w, data, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Base class for a forward model using a potential such as magnetic or gravity. It defines a cost function:
defect = 1/2 sum_s integrate( ( weight_i[s] * ( r_i - data_i[s] ) )**2 )
where s runs over the survey, weight_i are weighting factors, data_i are the data, and r_i are the results produced by the forward model. It is assumed that the forward model is produced through postprocessing of the solution of a potential PDE.
- __init__(domain, w, data, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
initializes a new forward model with potential.
- Parameters:
domain (
Domain
) – domain of the modelw (
Vector
or list ofVector
) – data weighting factorsdata (
Vector
or list ofVector
) – datacoordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be usedfixPotentialAtBottom (
bool
) – if true potential is fixed to zero at the bottom of the domain in addition to the top.tol (positive
float
) – tolerance of underlying PDE
- getCoordinateTransformation()¶
returns the coordinate transformation being used
- Return type:
CoordinateTransformation
- getData()¶
Returns the data
- Return type:
list
ofData
- getDataFunctionSpace()¶
Returns the
FunctionSpace
of the data- Return type:
FunctionSpace
- getDefectGradient(result)¶
- getDomain()¶
Returns the domain of the forward model.
- Return type:
Domain
- getMisfitWeights()¶
Returns the weights of the misfit function
- Return type:
list
ofData
- getPDE()¶
Return the underlying PDE.
- Return type:
LinearPDE
- getSurvey(index=None)¶
Returns the pair (data_index, weight_index), where data_i is the data of survey i, weight_i is the weighting factor for survey i. If index is None, all surveys will be returned in a pair of lists.
- class esys.downunder.forwardmodels.GravityModel(domain, w, g, gravity_constant=6.6742e-11, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Forward Model for gravity inversion as described in the inversion cookbook.
- __init__(domain, w, g, gravity_constant=6.6742e-11, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Creates a new gravity model on the given domain with one or more surveys (w, g).
- Parameters:
domain (
Domain
) – domain of the modelw (
Vector
or list ofVector
) – data weighting factorsg (
Vector
or list ofVector
) – gravity anomaly datacoordinates (ReferenceSystem` or
SpatialCoordinateTransformation
) – defines coordinate system to be usedtol (positive
float
) – tolerance of underlying PDEfixPotentialAtBottom (
bool
) – if true potential is fixed to zero at the base of the domain in addition to the top
- Note:
It is advisable to call rescaleWeights() to rescale weights before starting the inversion.
- getArguments(rho)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
rho (
Scalar
) – a suggestion for the density distribution- Returns:
gravity potential and corresponding gravity field.
- Return type:
Scalar
,Vector
- getDefect(rho, phi, gravity_force)¶
Returns the value of the defect
- Parameters:
rho (
Scalar
) – density distributionphi (
Scalar
) – corresponding potentialgravity_force (
Vector
) – gravity force
- Return type:
float
- getGradient(rho, phi, gravity_force)¶
Returns the gradient of the defect with respect to density.
- Parameters:
rho (
Scalar
) – density distributionphi (
Scalar
) – corresponding potentialgravity_force (
Vector
) – gravity force
- Return type:
Scalar
- getPotential(rho)¶
Calculates the gravity potential for a given density distribution.
- Parameters:
rho (
Scalar
) – a suggestion for the density distribution- Returns:
gravity potential
- Return type:
Scalar
- rescaleWeights(scale=1.0, rho_scale=1.0)¶
rescales the weights such that
sum_s integrate( ( w_i[s] *g_i[s]) (w_j[s]*1/L_j) * L**2 * 4*pi*G*rho_scale )=scale
- Parameters:
scale (positive
float
) – scale of data weighting factorsrho_scale (
Scalar
) – scale of density.
- class esys.downunder.forwardmodels.IsostaticPressure(domain, p0=0.0, level0=0, gravity0=-9.81, background_density=2670.0, gravity_constant=6.6742e-11, coordinates=None, tol=1e-08)¶
class to calculate isostatic pressure field correction due to gravity forces
- __init__(domain, p0=0.0, level0=0, gravity0=-9.81, background_density=2670.0, gravity_constant=6.6742e-11, coordinates=None, tol=1e-08)¶
- Parameters:
domain (
Domain
) – domain of the modelp0 (scalar
Data
orfloat
) – pressure at level0background_density (
float
) – defines background_density in kg/m^3coordinates (ReferenceSystem` or
SpatialCoordinateTransformation
) – defines coordinate system to be usedtol (positive
float
) – tolerance of underlying PDElevel0 (
float
) – pressure for z>=`level0` is set to zero.gravity0 (
float
) – vertical background gravity atlevel0
- getPressure(g=None, rho=None)¶
return the pressure for gravity force anomaly
g
and density anomalyrho
- Parameters:
g (
Vector
) – gravity anomaly datarho (
Scalar
) – gravity anomaly data
- Returns:
pressure distribution
- Return type:
Scalar
- class esys.downunder.forwardmodels.MT2DModelTEMode(domain, omega, x, Z_XY, eta=None, w0=1.0, mu=1.2566370614359173e-06, sigma0=0.01, airLayerLevel=None, coordinates=None, Ex_top=1, fixAtTop=False, tol=1e-08, saveMemory=False, directSolver=True)¶
Forward Model for two dimensional MT model in the TE mode for a given frequency omega. It defines a cost function:
defect = 1/2 integrate( sum_s w^s * ( E_x/H_y - Z_XY^s ) ) ** 2 *
where E_x is the horizontal electric field perpendicular to the YZ-domain, horizontal magnetic field H_y=1/(i*omega*mu) * E_{x,z} with complex unit i and permeability mu. The weighting factor w^s is set to
w^s(X) = w_0^s *
if length(X-X^s) <= eta and zero otherwise. X^s is the location of impedance measurement Z_XY^s, w_0^s is the level of confidence (eg. 1/measurement error) and eta is level of spatial confidence.
E_x is given as solution of the PDE
-E_{x,ii} - i omega * mu * sigma * E_x = 0
where E_x at top and bottom is set to solution for background field. Homogeneous Neuman conditions are assumed elsewhere.
- __init__(domain, omega, x, Z_XY, eta=None, w0=1.0, mu=1.2566370614359173e-06, sigma0=0.01, airLayerLevel=None, coordinates=None, Ex_top=1, fixAtTop=False, tol=1e-08, saveMemory=False, directSolver=True)¶
initializes a new forward model. See base class for a description of the arguments.
- getArguments(sigma)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
sigma (
Data
of shape (2,)) – conductivity- Returns:
E_x, E_z
- Return type:
Data
of shape (2,)
- getDefect(sigma, Ex, dExdz)¶
Returns the defect value.
- Parameters:
sigma (
Data
of shape ()) – a suggestion for conductivityEx (
Data
of shape (2,)) – electric fielddExdz (
Data
of shape (2,)) – vertical derivative of electric field
- Return type:
float
- getGradient(sigma, Ex, dExdz)¶
Returns the gradient of the defect with respect to density.
- Parameters:
sigma (
Data
of shape ()) – a suggestion for conductivityEx (
Data
of shape (2,)) – electric fielddExdz (
Data
of shape (2,)) – vertical derivative of electric field
- class esys.downunder.forwardmodels.MT2DModelTMMode(domain, omega, x, Z_YX, eta=None, w0=1.0, mu=1.2566370614359173e-06, sigma0=0.01, airLayerLevel=None, coordinates=None, tol=1e-08, saveMemory=False, directSolver=True)¶
Forward Model for two-dimensional MT model in the TM mode for a given frequency omega. It defines a cost function:
defect = 1/2 integrate( sum_s w^s * ( rho*H_x/Hy - Z_YX^s ) ) ** 2 *
where H_x is the horizontal magnetic field perpendicular to the YZ-domain, horizontal magnetic field H_y=1/(i*omega*mu) * E_{x,z} with complex unit i and permeability mu. The weighting factor w^s is set to
w^s(X) = w_0^s *
if length(X-X^s) <= eta and zero otherwise. X^s is the location of impedance measurement Z_XY^s, w_0^s is the level of confidence (eg. 1/measurement error) and eta is level of spatial confidence.
H_x is given as solution of the PDE
-(rho*H_{x,i})_{,i} + i omega * mu * H_x = 0
where H_x at top and bottom is set to solution for background field. Homogeneous Neuman conditions are assumed elsewhere.
- __init__(domain, omega, x, Z_YX, eta=None, w0=1.0, mu=1.2566370614359173e-06, sigma0=0.01, airLayerLevel=None, coordinates=None, tol=1e-08, saveMemory=False, directSolver=True)¶
initializes a new forward model. See base class for a description of the arguments.
- getArguments(rho)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
rho (
Data
of shape (2,)) – resistivity- Returns:
Hx, grad(Hx)
- Return type:
tuple
ofData
- getDefect(rho, Hx, g_Hx)¶
Returns the defect value.
- Parameters:
rho (
Data
of shape ()) – a suggestion for resistivityHx (
Data
of shape (2,)) – magnetic fieldg_Hx (
Data
of shape (2,2)) – gradient of magnetic field
- Return type:
float
- getGradient(rho, Hx, g_Hx)¶
Returns the gradient of the defect with respect to resistivity.
- Parameters:
rho (
Data
of shape ()) – a suggestion for resistivityHx (
Data
of shape (2,)) – magnetic fieldg_Hx (
Data
of shape (2,2)) – gradient of magnetic field
- class esys.downunder.forwardmodels.MagneticIntensityModel(domain, w, b, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Forward Model for magnetic intensity inversion as described in the inversion cookbook.
- __init__(domain, w, b, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Creates a new magnetic intensity model on the given domain with one or more surveys (w, b).
- Parameters:
domain (
Domain
) – domain of the modelw (
Scalar
or list ofScalar
) – data weighting factorsb (
Scalar
or list ofScalar
) – magnetic intensity field datatol (positive
float
) – tolerance of underlying PDEbackground_magnetic_flux_density (
Vector
or list offloat
) – background magnetic flux density (in Tesla) with components (B_east, B_north, B_vertical)coordinates (None) – defines coordinate system to be used
fixPotentialAtBottom (
bool
) – if true potential is fixed to zero at the bottom of the domain in addition to the top
- getArguments(k)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
k (
Scalar
) – susceptibility- Returns:
scalar magnetic potential and corresponding magnetic field
- Return type:
Scalar
,Vector
- getDefect(k, phi, magnetic_flux_density)¶
Returns the value of the defect.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
float
- getGradient(k, phi, magnetic_flux_density)¶
Returns the gradient of the defect with respect to susceptibility.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
Scalar
- getPotential(k)¶
Calculates the magnetic potential for a given susceptibility.
- Parameters:
k (
Scalar
) – susceptibility- Returns:
magnetic potential
- Return type:
Scalar
- rescaleWeights(scale=1.0, k_scale=1.0)¶
rescales the weights such that
sum_s integrate( ( w_i[s] *B_i[s]) (w_j[s]*1/L_j) * L**2 * (background_magnetic_flux_density_j[s]*1/L_j) * k_scale )=scale
- Parameters:
scale (positive
float
) – scale of data weighting factorsk_scale (
Scalar
) – scale of susceptibility.
- class esys.downunder.forwardmodels.MagneticModel(domain, w, B, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Forward Model for magnetic inversion as described in the inversion cookbook.
- __init__(domain, w, B, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Creates a new magnetic model on the given domain with one or more surveys (w, B).
- Parameters:
domain (
Domain
) – domain of the modelw (
Vector
or list ofVector
) – data weighting factorsB (
Vector
or list ofVector
) – magnetic field datatol (positive
float
) – tolerance of underlying PDEbackground_magnetic_flux_density (
Vector
or list offloat
) – background magnetic flux density (in Tesla) with components (B_east, B_north, B_vertical)coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be usedfixPotentialAtBottom (
bool
) – if true potential is fixed to zero at the bottom of the domain in addition to the top
- getArguments(k)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
k (
Scalar
) – susceptibility- Returns:
scalar magnetic potential and corresponding magnetic field
- Return type:
Scalar
,Vector
- getDefect(k, phi, magnetic_flux_density)¶
Returns the value of the defect.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
float
- getGradient(k, phi, magnetic_flux_density)¶
Returns the gradient of the defect with respect to susceptibility.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
Scalar
- getPotential(k)¶
Calculates the magnetic potential for a given susceptibility.
- Parameters:
k (
Scalar
) – susceptibility- Returns:
magnetic potential
- Return type:
Scalar
- rescaleWeights(scale=1.0, k_scale=1.0)¶
rescales the weights such that
sum_s integrate( ( w_i[s] *B_i[s]) (w_j[s]*1/L_j) * L**2 * (background_magnetic_flux_density_j[s]*1/L_j) * k_scale )=scale
- Parameters:
scale (positive
float
) – scale of data weighting factorsk_scale (
Scalar
) – scale of susceptibility.
- class esys.downunder.forwardmodels.SelfDemagnetizationModel(domain, w, B, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Forward Model for magnetic inversion with self-demagnetization as described in the inversion cookbook.
- __init__(domain, w, B, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶
Creates a new magnetic model on the given domain with one or more surveys (w, B).
- Parameters:
domain (
Domain
) – domain of the modelw (
Vector
or list ofVector
) – data weighting factorsB (
Vector
or list ofVector
) – magnetic field databackground_magnetic_flux_density (
Vector
or list offloat
) – background magnetic flux density (in Tesla) with components (B_east, B_north, B_vertical)coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be usedfixPotentialAtBottom (
bool
) – if true potential is fixed to zero at the bottom of the domain in addition to the toptol (positive
float
) – tolerance of underlying PDE
- getArguments(k)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
k (
Scalar
) – susceptibility- Returns:
scalar magnetic potential and corresponding magnetic field
- Return type:
Scalar
,Vector
- getDefect(k, phi, grad_phi, magnetic_flux_density)¶
Returns the value of the defect.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
float
- getGradient(k, phi, grad_phi, magnetic_flux_density)¶
Returns the gradient of the defect with respect to susceptibility.
- Parameters:
k (
Scalar
) – susceptibilityphi (
Scalar
) – corresponding potentialmagnetic_flux_density (
Vector
) – magnetic field
- Return type:
Scalar
- getPotential(k)¶
Calculates the magnetic potential for a given susceptibility.
- Parameters:
k (
Scalar
) – susceptibility- Returns:
magnetic potential
- Return type:
Scalar
- rescaleWeights(scale=1.0, k_scale=1.0)¶
rescales the weights such that
sum_s integrate( ( w_i[s] *B_i[s]) (w_j[s]*1/L_j) * L**2 * (background_magnetic_flux_density_j[s]*1/L_j) * k_scale )=scale
- Parameters:
scale (positive
float
) – scale of data weighting factorsk_scale (
Scalar
) – scale of susceptibility.
- class esys.downunder.forwardmodels.Subsidence(domain, w, d, lam, mu, coordinates=None, tol=1e-08)¶
Forward Model for subsidence inversion minimizing integrate( (inner(w,u)-d)**2) where u is the surface displacement due to a pressure change P
- __init__(domain, w, d, lam, mu, coordinates=None, tol=1e-08)¶
Creates a new subsidence on the given domain
- Parameters:
domain (
Domain
) – domain of the modelw (
Vector
withFunctionOnBoundary
) – data weighting factors and directiond (
Scalar
withFunctionOnBoundary
) – displacement measured at surfacelam (
Scalar
withFunction
) – 1st Lame coefficientlam – 2st Lame coefficient/Shear modulus
coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be used (not supported yet))tol (positive
float
) – tolerance of underlying PDE
- getArguments(P)¶
Returns precomputed values shared by
getDefect()
andgetGradient()
.- Parameters:
P (
Scalar
) – pressure- Returns:
displacement u
- Return type:
Vector
- getDefect(P, u)¶
Returns the value of the defect.
- Parameters:
P (
Scalar
) – pressureu (
Vector
) – corresponding displacement
- Return type:
float
- getGradient(P, u)¶
Returns the gradient of the defect with respect to susceptibility.
- Parameters:
P (
Scalar
) – pressureu (
Vector
) – corresponding displacement
- Return type:
Scalar
- rescaleWeights(scale=1.0, P_scale=1.0)¶
rescales the weights
- Parameters:
scale (positive
float
) – scale of data weighting factorsP_scale (
Scalar
) – scale of pressure increment
Functions¶
Others¶
Packages¶
- esys.downunder.forwardmodels.acoustic Package
- Classes
AcousticWaveForm
AcousticWaveForm.__init__()
AcousticWaveForm.getArguments()
AcousticWaveForm.getCoordinateTransformation()
AcousticWaveForm.getDefect()
AcousticWaveForm.getDomain()
AcousticWaveForm.getGradient()
AcousticWaveForm.getSourceScaling()
AcousticWaveForm.getSurvey()
AcousticWaveForm.rescaleWeights()
AcousticWaveForm.setUpPDE()
ForwardModel
- Functions
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.base Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
FileWriter
ForwardModel
ForwardModelWithPotential
ForwardModelWithPotential.__init__()
ForwardModelWithPotential.getCoordinateTransformation()
ForwardModelWithPotential.getData()
ForwardModelWithPotential.getDataFunctionSpace()
ForwardModelWithPotential.getDefectGradient()
ForwardModelWithPotential.getDomain()
ForwardModelWithPotential.getMisfitWeights()
ForwardModelWithPotential.getPDE()
ForwardModelWithPotential.getSurvey()
- Functions
Abs()
C_GeneralTensorProduct()
L2()
LinearSinglePDE()
Lsup()
NumpyToData()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
makeTransformation()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.dcresistivity Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
DcRes
FileWriter
ForwardModel
LinearPDE
Locator
- Functions
Abs()
C_GeneralTensorProduct()
DiracDeltaFunctions()
L2()
Lsup()
NumpyToData()
Scalar()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
makeTransformation()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.gravity Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
FileWriter
ForwardModelWithPotential
ForwardModelWithPotential.__init__()
ForwardModelWithPotential.getCoordinateTransformation()
ForwardModelWithPotential.getData()
ForwardModelWithPotential.getDataFunctionSpace()
ForwardModelWithPotential.getDefectGradient()
ForwardModelWithPotential.getDomain()
ForwardModelWithPotential.getMisfitWeights()
ForwardModelWithPotential.getPDE()
ForwardModelWithPotential.getSurvey()
GravityModel
- Functions
Abs()
C_GeneralTensorProduct()
L2()
Lsup()
NumpyToData()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.magnetic Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
FileWriter
ForwardModelWithPotential
ForwardModelWithPotential.__init__()
ForwardModelWithPotential.getCoordinateTransformation()
ForwardModelWithPotential.getData()
ForwardModelWithPotential.getDataFunctionSpace()
ForwardModelWithPotential.getDefectGradient()
ForwardModelWithPotential.getDomain()
ForwardModelWithPotential.getMisfitWeights()
ForwardModelWithPotential.getPDE()
ForwardModelWithPotential.getSurvey()
MagneticIntensityModel
MagneticModel
SelfDemagnetizationModel
- Functions
Abs()
C_GeneralTensorProduct()
L2()
Lsup()
NumpyToData()
Scalar()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.magnetotelluric2d Package
- esys.downunder.forwardmodels.pressure Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
FileWriter
IsostaticPressure
- Functions
Abs()
C_GeneralTensorProduct()
Function()
L2()
LinearSinglePDE()
Lsup()
NumpyToData()
Scalar()
Vector()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
makeTransformation()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes
- esys.downunder.forwardmodels.subsidence Package
- Classes
Data
Data.__init__()
Data.conjugate()
Data.copy()
Data.copyWithMask()
Data.delay()
Data.dump()
Data.expand()
Data.getDomain()
Data.getFunctionSpace()
Data.getNumberOfDataPoints()
Data.getRank()
Data.getShape()
Data.getTagNumber()
Data.getTupleForDataPoint()
Data.getTupleForGlobalDataPoint()
Data.getX()
Data.hasInf()
Data.hasNaN()
Data.imag()
Data.internal_maxGlobalDataPoint()
Data.internal_minGlobalDataPoint()
Data.interpolate()
Data.interpolateTable()
Data.isComplex()
Data.isConstant()
Data.isEmpty()
Data.isExpanded()
Data.isLazy()
Data.isProtected()
Data.isReady()
Data.isTagged()
Data.nonuniformInterpolate()
Data.nonuniformSlope()
Data.phase()
Data.promote()
Data.real()
Data.replaceInf()
Data.replaceNaN()
Data.resolve()
Data.setProtection()
Data.setTaggedValue()
Data.setToZero()
Data.setValueOfDataPoint()
Data.tag()
Data.toListOfTuples()
FileWriter
ForwardModel
Subsidence
- Functions
Abs()
C_GeneralTensorProduct()
FunctionOnBoundary()
L2()
LinearPDESystem()
Lsup()
NumpyToData()
acos()
acosh()
antihermitian()
antisymmetric()
asin()
asinh()
atan()
atan2()
atanh()
boundingBox()
boundingBoxEdgeLengths()
clip()
commonDim()
commonShape()
condEval()
convertToNumpy()
cos()
cosh()
delay()
deviatoric()
diameter()
div()
eigenvalues()
eigenvalues_and_eigenvectors()
erf()
escript_generalTensorProduct()
escript_generalTensorTransposedProduct()
escript_generalTransposedTensorProduct()
escript_inverse()
exp()
generalTensorProduct()
generalTensorTransposedProduct()
generalTransposedTensorProduct()
getClosestValue()
getEpsilon()
getMPIRankWorld()
getMPIWorldMax()
getMaxFloat()
getNumpy()
getRank()
getShape()
getTagNames()
getVersion()
gmshGeo2Msh()
grad()
grad_n()
hasFeature()
hermitian()
identity()
identityTensor()
identityTensor4()
inf()
inner()
insertTagNames()
insertTaggedValues()
integrate()
interpolate()
interpolateTable()
inverse()
jump()
kronecker()
length()
listEscriptParams()
log()
log10()
longestEdge()
makeTagMap()
matchShape()
matchType()
matrix_mult()
matrix_transposed_mult()
matrixmult()
maximum()
maxval()
meanValue()
minimum()
minval()
mkDir()
mult()
negative()
nonsymmetric()
normalize()
outer()
phase()
pokeDim()
polarToCart()
positive()
printParallelThreadCounts()
reorderComponents()
resolve()
safeDiv()
saveDataCSV()
saveESD()
showEscriptParams()
sign()
sin()
sinh()
sqrt()
sup()
swap_axes()
symmetric()
tan()
tanh()
tensor_mult()
tensor_transposed_mult()
tensormult()
testForZero()
trace()
transpose()
transposed_matrix_mult()
transposed_tensor_mult()
unitVector()
vol()
whereNegative()
whereNonNegative()
whereNonPositive()
whereNonZero()
wherePositive()
whereZero()
zeros()
- Others
- Packages
- Classes