) – if True cross gradient terms between level set components are ignored when calculating approximations of the inverse of the Hessian Operator. This can speed-up the calculation of the inverse but may lead to an increase of the number of iteration steps in the inversion. - tol (positive
float
) – tolerance when solving the PDE for the inverse of the Hessian Operator - coordinates (ReferenceSystem` or
SpatialCoordinateTransformation
) – defines coordinate system to be used - scale (
Scalar
ifnumLevelSets
== 1 orData
object of shape (numLevelSets
,) ifnumLevelSets
> 1) – weighting factor for level set function variation terms. If not set one is used. - scale_c (
Data
object of shape (numLevelSets
,``numLevelSets``)) – scale for the cross gradient terms. If not set one is assumed. Used for the case ifnumLevelSets
> 1 only. Only valuesscale_c[l,k]
in the lower triangle (l<k) are used.
- domain (
-
getArguments
(m)¶
-
getCoordinateTransformation
()¶ returns the coordinate transformation being used
Return type: CoordinateTransformation
-
getDomain
()¶ returns the domain of the regularization term
Return type: Domain
-
getDualProduct
(m, r)¶ returns the dual product of a gradient represented by X=r[1] and Y=r[0] with a level set function m:
Y_i*m_i + X_ij*m_{i,j}Return type: float
-
getGradient
(m, grad_m)¶ returns the gradient of the cost function J with respect to m.
Note: This implementation returns Y_k=dPsi/dm_k and X_kj=dPsi/dm_kj
-
getInverseHessianApproximation
(m, r, grad_m, solve=True)¶
-
getNorm
(m)¶ returns the norm of
m
.Parameters: m ( Data
) – level set functionReturn type: float
-
getNumLevelSets
()¶ returns the number of level set functions
Return type: int
-
getNumTradeOffFactors
()¶ returns the number of trade-off factors being used.
Return type: int
-
getPDE
()¶ returns the linear PDE to be solved for the Hessian Operator inverse
Return type: LinearPDE
-
getValue
(m, grad_m)¶ returns the value of the cost function J with respect to m. This equation is specified in the inversion cookbook.
Return type: float
-
provides_inverse_Hessian_approximation
= False¶
-
setTradeOffFactors
(mu=None)¶ sets the trade-off factors for the level-set variation and the cross-gradient.
Parameters: mu ( list
offloat
or`numpy.array`
) – new values for the trade-off factors where values mu[:numLevelSets] are the trade-off factors for the level-set variation and the remaining values for the cross-gradient part with mu_c[l,k]=mu[numLevelSets+l+((k-1)*k)/2] (l<k). If no values for mu are given ones are used. Values must be positive.
-
setTradeOffFactorsForCrossGradient
(mu_c=None)¶ sets the trade-off factors for the cross-gradient terms.
Parameters: mu_c ( float
,list
offloat
ornumpy.array
) – new values for the trade-off factors for the cross-gradient terms. Values must be positive. If no value is given ones are used. Only value mu_c[l,k] for l<k are used.
-
setTradeOffFactorsForVariation
(mu=None)¶ sets the trade-off factors for the level-set variation part.
Parameters: mu ( float
,list
offloat
or`numpy.array`
) – new values for the trade-off factors. Values must be positive.
-
updateHessian
()¶ notifies the class to recalculate the Hessian operator.
-
-
class
esys.downunder.
Ricker
(f_dom=40, t_dom=None)¶ Bases:
esys.downunder.seismic.Wavelet
The Ricker Wavelet w=f(t)
-
__init__
(f_dom=40, t_dom=None)¶ Sets up a Ricker wavelet wih dominant frequence
f_dom
and center at timet_dom
. Ift_dom
is not given an estimate for suitablet_dom
is calculated so f(0)~0.Note: maximum frequence is about 2 x the dominant frequence.
-
getAcceleration
(t)¶ get the acceleration f’‘(t) at time
t
-
getCenter
()¶ Return value of wavelet center
-
getTimeScale
()¶ Returns the time scale which is the inverse of the largest frequence with a significant spectral component.
-
getValue
(t)¶ get value of wavelet at time
t
-
getVelocity
(t)¶ get the velocity f’(t) at time
t
-
-
class
esys.downunder.
SchlumbergerSurvey
(domain, primaryConductivity, secondaryConductivity, current, a, n, midPoint, directionVector, numElectrodes)¶ Bases:
esys.downunder.dcresistivityforwardmodeling.DcResistivityForward
Schlumberger survey forward calculation
-
__init__
(domain, primaryConductivity, secondaryConductivity, current, a, n, midPoint, directionVector, numElectrodes)¶ This is a skeleton class for all the other forward modeling classes.
-
checkBounds
()¶
-
getApparentResistivity
(delPhiList)¶
-
getElectrodeDict
()¶ retuns the electrode dictionary
-
getElectrodes
()¶ retuns the list of electrodes with locations
-
getPotential
()¶
-
getPotentialAnalytic
()¶ Returns 3 list each made up of a number of list containing primary, secondary and total potentials diferences. Each of the lists contain a list for each value of n.
-
getPotentialNumeric
()¶ Returns 3 list each made up of a number of list containing primary, secondary and total potentials diferences. Each of the lists contain a list for each value of n.
-
getSourcesSamples
()¶ return a list of tuples of sample locations followed by a list of tuples of source locations.
-
-
class
esys.downunder.
SeismicSource
(x, y=0.0, omega=0.0, elevation=0.0, power=None, orientation=None)¶ Bases:
object
describes a seimic source by location (x,y), frequency omega, power (if known) and orientation (if known). this class is used to tag seismic data sources.
-
__init__
(x, y=0.0, omega=0.0, elevation=0.0, power=None, orientation=None)¶ initiale the source
Parameters: - x (
float
) – lateral x location - y (
float
) – lateral y location - omega (
float
) – frequency of source - elevation – elevation of source above reference level
- power (
complex
orNone
) – power of source at frequence - orientation (vector of appropriate length or
None
) – oriententation of source in 3D or 2D (or None)
- x (
-
getElevation
()¶ return elevation of source :rtype:
float
-
getFrequency
()¶ return frequency of source :rtype:
float
-
getLocation
()¶ return location of source :rtype:
tuple
offloat
-
getOrientation
()¶ return power of source orientation at frequency :rtype: vector type object or
None
-
getPower
()¶ return power of source at frequency :rtype:
complex
orNone
-
-
class
esys.downunder.
SelfDemagnetizationModel
(domain, w, B, background_magnetic_flux_density, coordinates=None, fixPotentialAtBottom=False, tol=1e-08)¶ Bases:
esys.downunder.forwardmodels.base.ForwardModelWithPotential
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 model - w (
Vector
or list ofVector
) – data weighting factors - B (
Vector
or list ofVector
) – magnetic field data - background_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 used - fixPotentialAtBottom (
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
- domain (
-
getArguments
(k)¶ Returns precomputed values shared by
getDefect()
andgetGradient()
.Parameters: k ( Scalar
) – susceptibilityReturns: scalar magnetic potential and corresponding magnetic field Return type: Scalar
,Vector
-
getCoordinateTransformation
()¶ returns the coordinate transformation being used
Return type: CoordinateTransformation
-
getData
()¶ Returns the data
Return type: list
ofData
-
getDataFunctionSpace
()¶ Returns the
FunctionSpace
of the dataReturn type: FunctionSpace
-
getDefect
(k, phi, grad_phi, magnetic_flux_density)¶ Returns the value of the defect.
Parameters: - k (
Scalar
) – susceptibility - phi (
Scalar
) – corresponding potential - magnetic_flux_density (
Vector
) – magnetic field
Return type: float
- k (
-
getDefectGradient
(result)¶
-
getDomain
()¶ Returns the domain of the forward model.
Return type: Domain
-
getGradient
(k, phi, grad_phi, magnetic_flux_density)¶ Returns the gradient of the defect with respect to susceptibility.
Parameters: - k (
Scalar
) – susceptibility - phi (
Scalar
) – corresponding potential - magnetic_flux_density (
Vector
) – magnetic field
Return type: Scalar
- k (
-
getMisfitWeights
()¶ Returns the weights of the misfit function
Return type: list
ofData
-
getPotential
(k)¶ Calculates the magnetic potential for a given susceptibility.
Parameters: k ( Scalar
) – susceptibilityReturns: magnetic potential Return type: Scalar
-
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.
-
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 factors - k_scale (
Scalar
) – scale of susceptibility.
- scale (positive
-
-
class
esys.downunder.
SimpleSEGYWriter
(receiver_group=None, source=0.0, sampling_interval=0.004, text='some seimic data')¶ Bases:
object
A simple writer for 2D and 3D seismic lines, in particular for synthetic data
Typical usage:
from esys.escript import unitsSI as U sw=SimpleSEGYWriter([0.,100*U.m,200*U,m,300.], source=200*U.m, sampling_interval=4*U.msec) while n < 10: sw.addRecord([i*2., i*0.67, i**2, -i*7]) sw.write('example.segy')
Note: the writer uses obspy
-
__init__
(receiver_group=None, source=0.0, sampling_interval=0.004, text='some seimic data')¶ initalize writer
Parameters: - receiver_group – list of receiver coordinates (in meters). For the 2D case a list of floats is given, for the 3D case a list of coordinate tuples are given
- source – coordinates of the source (in meters). For the 2D case a single floats is given, for the 3D case a coordinate tuples
- sampling_interval – sample rate in seconds
- text – a text for the header file (e.g a description)
-
COORDINATE_SCALE
= 1000.0¶
-
addRecord
(record)¶ Adds a record to the traces. A time difference of sample_interval between two records is assumed. The record mast be a list of as many values as given receivers or a float if a single receiver is used.
Parameters: record – list of tracks to be added to the record.
-
getSamplingInterval
()¶ returns the sampling interval in seconds.
-
obspy_available
()¶ for checking if the obspy module is available
-
write
(filename)¶ writes to segy file
Parameters: filename – file name Note: the function uses the obspy
module.
-
-
class
esys.downunder.
SmoothAnomaly
(lx, ly, lz, x, y, depth, v_inner=None, v_outer=None)¶ Bases:
esys.downunder.datasources.SourceFeature
A source feature in the form of a blob (roughly gaussian).
-
__init__
(lx, ly, lz, x, y, depth, v_inner=None, v_outer=None)¶ Intializes the smooth anomaly data.
Parameters: - lx – size of blob in x-dimension
- ly – size of blob in y-dimension
- lz – size of blob in z-dimension
- x – location of blob in x-dimension
- y – location of blob in y-dimension
- depth – depth of blob
- v_inner – value in the centre of the blob
- v_outer – value in the periphery of the blob
-
getMask
(x)¶ Returns the mask of the area of interest for this feature. That is, mask is non-zero where the value returned by
getValue()
should be applied, zero elsewhere.
-
getValue
(x)¶ Returns the value for the area covered by mask. It can be constant or a
Data
object with spatial dependency.
-
-
class
esys.downunder.
SonicHTIWave
(domain, v_p, wavelet, source_tag, source_vector=[1.0, 0.0], eps=0.0, delta=0.0, azimuth=0.0, dt=None, p0=None, v0=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ Bases:
esys.downunder.seismic.WaveBase
Solving the HTI wave equation (along the x_0 axis) with azimuth (rotation around verticle axis) under the assumption of zero shear wave velocities The unknowns are the transversal (along x_0) and vertial stress (Q, P)
Note: In case of a two dimensional domain the second spatial dimenion is depth. -
__init__
(domain, v_p, wavelet, source_tag, source_vector=[1.0, 0.0], eps=0.0, delta=0.0, azimuth=0.0, dt=None, p0=None, v0=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ initialize the HTI wave solver
Parameters: - domain (
Doamin
) – domain of the problem - v_p (
escript.Scalar
) – vertical p-velocity field - v_s (
escript.Scalar
) – vertical s-velocity field - wavelet (
Wavelet
) – wavelet to describe the time evolution of source term - source_tag ('str' or 'int') – tag of the source location
- source_vector – source orientation vector
- eps – first Thompsen parameter
- azimuth – azimuth (rotation around verticle axis)
- gamma – third Thompsen parameter
- rho – density
- dt – time step size. If not present a suitable time step size is calculated.
- p0 – initial solution (Q(t=0), P(t=0)). If not present zero is used.
- v0 – initial solution change rate. If not present zero is used.
- absorption_zone – thickness of absorption zone
- absorption_cut – boundary value of absorption decay factor
- lumping – if True mass matrix lumping is being used. This is accelerates the computing but introduces some diffusion.
- domain (
-
getTimeStepSize
()¶
-
update
(t)¶ returns the solution for the next time marker t which needs to greater than the time marker from the previous call.
-
-
class
esys.downunder.
SonicWave
(domain, v_p, wavelet, source_tag, dt=None, p0=None, p0_t=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ Bases:
esys.downunder.seismic.WaveBase
Solving the sonic wave equation
p_tt = (v_p**2 * p_i)_i + f(t) * delta_s
where (p-) velocity v_p.f(t) is wavelet acting at a point source term at positon s
-
__init__
(domain, v_p, wavelet, source_tag, dt=None, p0=None, p0_t=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ initialize the sonic wave solver
Parameters: - domain (
Domain
) – domain of the problem - v_p (
escript.Scalar
) – p-velocity field - wavelet (
Wavelet
) – wavelet to describe the time evolution of source term - source_tag ('str' or 'int') – tag of the source location
- dt – time step size. If not present a suitable time step size is calculated.
- p0 – initial solution. If not present zero is used.
- p0_t – initial solution change rate. If not present zero is used.
- absorption_zone – thickness of absorption zone
- absorption_cut – boundary value of absorption decay factor
- lumping – if True mass matrix lumping is being used. This is accelerates the computing but introduces some diffusion.
- domain (
-
getTimeStepSize
()¶
-
update
(t)¶ returns the solution for the next time marker t which needs to greater than the time marker from the previous call.
-
-
class
esys.downunder.
SpatialCoordinateTransformation
(domain, reference=<esys.downunder.coordinates.CartesianReferenceSystem object>)¶ Bases:
object
Defines an orthogonal coordinate transformation from a domain into the Cartesian domain using a coordinate transformation.
The default implementation is the identity transformation (i.e. no changes are applied to the domain). Overwrite the appropriate methods to define other coordinate systems.
-
__init__
(domain, reference=<esys.downunder.coordinates.CartesianReferenceSystem object>)¶ set up the orthogonal coordinate transformation.
Parameters: - domain (
esys.escript.AbstractDomain
) – domain in the domain of the coordinate transformation - reference (
ReferenceSystem
) – the reference system
- domain (
-
getDomain
()¶ returns the domain of the coordinate transformation.
Return type: esys.escript.AbstractDomain
-
getGradient
(u)¶ returns the gradient of a scalar function in direction of the coordinate axis.
Return type: esys.escript.Vector
-
getReferenceSystem
()¶ returns the reference system used to to define the coordinate transformation
Return type: ReferenceSystem
-
getScalingFactors
()¶ returns the scaling factors
Return type: esys.escript.Vector
-
getVolumeFactor
()¶ returns the volume factor for the coordinate transformation
Return type: esys.escript.Scalar
-
isCartesian
()¶ returns
True
if the scaling factors (and the volume factor) are equal to 1Return type: bool
-
isTheSame
(other)¶ test if argument
other
defines the same coordinate transformationParameters: other ( SpatialCoordinateTransformation
) – a second coordinate transformationReturns: True
if other defines then same coordinate transformationReturn type: bool
-
-
class
esys.downunder.
SplitInversionCostFunction
(numLevelSets=None, numModels=None, numMappings=None, splitworld=None, worldsinit_fn=None)¶ Bases:
esys.downunder.costfunctions.MeteredCostFunction
Class to define cost function J(m) for inversion with one or more forward models based on a multi-valued level set function m:
J(m) = J_reg(m) + sum_f mu_f * J_f(p)
where J_reg(m) is the regularization and cross gradient component of the cost function applied to a level set function m, J_f(p) are the data defect cost functions involving a physical forward model using the physical parameter(s) p and mu_f is the trade-off factor for model f.
A forward model depends on a set of physical parameters p which are constructed from components of the level set function m via mappings.
- Example 1 (single forward model):
- m=Mapping() f=ForwardModel() J=InversionCostFunction(Regularization(), m, f)
- Example 2 (two forward models on a single valued level set)
m0=Mapping() m1=Mapping() f0=ForwardModel() f1=ForwardModel()
J=InversionCostFunction(Regularization(), mappings=[m0, m1], forward_models=[(f0, 0), (f1,1)])
- Example 3 (two forward models on 2-valued level set)
m0=Mapping() m1=Mapping() f0=ForwardModel() f1=ForwardModel()
J=InversionCostFunction(Regularization(self.numLevelSets=2), mappings=[(m0,0), (m1,0)], forward_models=[(f0, 0), (f1,1)])
Note: If provides_inverse_Hessian_approximation is true, then the class provides an approximative inverse of the Hessian operator. -
__init__
(numLevelSets=None, numModels=None, numMappings=None, splitworld=None, worldsinit_fn=None)¶ fill this in.
-
calculateGradient
(vnames1, vnames2)¶ The gradient operation produces two components (designated (Y^,X) in the non-split version). vnames1 gives the variable name(s) where the first component should be stored. vnames2 gives the variable name(s) where the second component should be stored.
-
static
calculatePropertiesHelper
(self, m, mappings)¶ returns a list of the physical properties from a given level set function m using the mappings of the cost function.
Parameters: m ( Data
) – level set functionReturn type: list
ofData
-
calculateValue
(vname)¶
-
createLevelSetFunction
(*props)¶ returns an instance of an object used to represent a level set function initialized with zeros. Components can be overwritten by physical properties
props
. If present entries must correspond to themappings
arguments in the constructor. UseNone
for properties for which no value is given.
-
static
createLevelSetFunctionHelper
(self, regularization, mappings, *props)¶ Returns an object (init-ed) with 0s. Components can be overwritten by physical properties
props
. If present entries must correspond to themappings
arguments in the constructor. UseNone
for properties for which no value is given.
-
static
formatMappings
(mappings, numLevelSets)¶
-
static
formatModels
(forward_models, numMappings)¶
-
getArguments
(x)¶ returns precalculated values that are shared in the calculation of f(x) and grad f(x) and the Hessian operator
Note
The tuple returned by this call will be passed back to this
CostFunction
in other calls(eg:getGradient
). Its contents are not specified at this level because no code, other than theCostFunction
which created it, will be interacting with it. That is, the implementor can put whatever information they find useful in it.Parameters: x (x-type) – location of derivative Return type: tuple
-
getComponentValues
(m, *args)¶
-
getDomain
()¶ returns the domain of the cost function
Return type: Domain
-
getDualProduct
(x, r)¶ returns the dual product of
x
andr
Return type: float
-
getForwardModel
(idx=None)¶ returns the idx-th forward model.
Parameters: idx ( int
) – model index. If cost function contains one model onlyidx
can be omitted.
-
getGradient
(x, *args)¶ returns the gradient of f at x using the precalculated values for x.
Parameters: - x (x-type) – location of derivative
- args – pre-calculated values for
x
fromgetArguments()
Return type: r-type
-
getInverseHessianApproximation
(x, r, *args)¶ returns an approximative evaluation p of the inverse of the Hessian operator of the cost function for a given gradient r at a given location x: H(x) p = r
Note
In general it is assumed that the Hessian H(x) needs to be calculate in each call for a new location x. However, the solver may suggest that this is not required, typically when the iteration is close to completeness.
Parameters: - x (x-type) – location of Hessian operator to be evaluated.
- r (r-type) – a given gradient
- args – pre-calculated values for
x
fromgetArguments()
Return type: x-type
-
static
getModelArgs
(self, fwdmodels)¶ Attempts to import the arguments for forward models, if they are not available, Computes and exports them
-
getNorm
(x)¶ returns the norm of
x
Return type: float
-
getNumTradeOffFactors
()¶ returns the number of trade-off factors being used including the trade-off factors used in the regularization component.
Return type: int
-
getProperties
(m, return_list=False)¶ returns a list of the physical properties from a given level set function m using the mappings of the cost function.
Parameters: - m (
Data
) – level set function - return_list (
bool
) – ifTrue
a list is returned.
Return type: list
ofData
- m (
-
getRegularization
()¶ returns the regularization
Return type: Regularization
-
getTradeOffFactors
(mu=None)¶ returns a list of the trade-off factors.
Return type: list
offloat
-
getTradeOffFactorsModels
()¶ returns the trade-off factors for the forward models
Return type: float
orlist
offloat
-
getValue
(x, *args)¶ returns the value f(x) using the precalculated values for x.
Parameters: x (x-type) – a solution approximation Return type: float
-
provides_inverse_Hessian_approximation
= True¶
-
resetCounters
()¶ resets all statistical counters
-
setPoint
()¶
-
setTradeOffFactors
(mu=None)¶ sets the trade-off factors for the forward model and regularization terms.
Parameters: mu ( list
offloat
) – list of trade-off factors.
-
setTradeOffFactorsModels
(mu=None)¶ sets the trade-off factors for the forward model components.
Parameters: mu ( float
in case of a single model or alist
offloat
with the length of the number of models.) – list of the trade-off factors. If not present ones are used.
-
setTradeOffFactorsRegularization
(mu=None, mu_c=None)¶ sets the trade-off factors for the regularization component of the cost function, see
Regularization
for details.Parameters: - mu – trade-off factors for the level-set variation part
- mu_c – trade-off factors for the cross gradient variation part
-
static
subworld_setMu_model
(self, **args)¶
-
updateHessian
()¶ notifies the class that the Hessian operator needs to be updated.
-
static
update_point_helper
(self, newpoint)¶ Call within a subworld to set ‘current_point’ to newpoint and update all the cached args info
-
class
esys.downunder.
SplitMinimizerLBFGS
(J=None, m_tol=0.0001, J_tol=None, imax=300)¶ Bases:
esys.downunder.minimizers.AbstractMinimizer
Minimizer that uses the limited-memory Broyden-Fletcher-Goldfarb-Shanno method.
version modified to fit with split world.
-
__init__
(J=None, m_tol=0.0001, J_tol=None, imax=300)¶ Initializes a new minimizer for a given cost function.
Parameters: - J (
CostFunction
) – the cost function to be minimized - m_tol (float) – terminate interations when relative change of the level set function is less than or equal m_tol
- J (
-
getCostFunction
()¶ return the cost function to be minimized
Return type: CostFunction
-
getOptions
()¶ Returns a dictionary of minimizer-specific options.
-
getResult
()¶ Returns the result of the minimization.
-
logSummary
()¶ Outputs a summary of the completed minimization process to the logger.
-
static
move_point_from_base
(self, **kwargs)¶
-
run
()¶ This version relies on the costfunction already having an initial guess loaded. It also does not return the result, meaning a job needs to be submitted to get the result out.
-
setCallback
(callback)¶ Sets a callback function to be called after every iteration. It is up to the specific implementation what arguments are passed to the callback. Subclasses should at least pass the current iteration number k, the current estimate x, and possibly f(x), grad f(x), and the current error.
-
setCostFunction
(J)¶ set the cost function to be minimized
Parameters: J ( CostFunction
) – the cost function to be minimized
-
setMaxIterations
(imax)¶ Sets the maximum number of iterations before the minimizer terminates.
-
setOptions
(**opts)¶ Sets minimizer-specific options. For a list of possible options see
getOptions()
.
-
setTolerance
(m_tol=0.0001, J_tol=None)¶ Sets the tolerance for the stopping criterion. The minimizer stops when an appropriate norm is less than
m_tol
.
-
-
class
esys.downunder.
SplitRegularization
(domain, numLevelSets=1, w0=None, w1=None, wc=None, location_of_set_m=<esys.escriptcore.escriptcpp.Data object>, useDiagonalHessianApproximation=False, tol=1e-08, coordinates=None, scale=None, scale_c=None)¶ Bases:
esys.downunder.costfunctions.CostFunction
The regularization term for the level set function
m
within the cost function J for an inversion:J(m)=1/2 * sum_k integrate( mu[k] * ( w0[k] * m_k**2 * w1[k,i] * m_{k,i}**2) + sum_l<k mu_c[l,k] wc[l,k] * | curl(m_k) x curl(m_l) |^2
where w0[k], w1[k,i] and wc[k,l] are non-negative weighting factors and mu[k] and mu_c[l,k] are trade-off factors which may be altered during the inversion. The weighting factors are normalized such that their integrals over the domain are constant:
integrate(w0[k] + inner(w1[k,:],1/L[:]**2))=scale[k] volume(domain)* integrate(wc[l,k]*1/L**4)=scale_c[k] volume(domain) *
-
__init__
(domain, numLevelSets=1, w0=None, w1=None, wc=None, location_of_set_m=<esys.escriptcore.escriptcpp.Data object>, useDiagonalHessianApproximation=False, tol=1e-08, coordinates=None, scale=None, scale_c=None)¶ initialization.
Parameters: - domain (
Domain
) – domain - numLevelSets (
int
) – number of level sets - w0 (
Scalar
ifnumLevelSets
== 1 orData
object of shape (numLevelSets
,) ifnumLevelSets
> 1) – weighting factor for the m**2 term. If not set zero is assumed. - w1 (
Vector
ifnumLevelSets
== 1 orData
object of shape (numLevelSets
, DIM) ifnumLevelSets
> 1) – weighting factor for the grad(m_i) terms. If not set zero is assumed - wc (
Data
object of shape (numLevelSets
,numLevelSets
)) – weighting factor for the cross gradient terms. If not set zero is assumed. Used for the case ifnumLevelSets
> 1 only. Only valueswc[l,k]
in the lower triangle (l<k) are used. - location_of_set_m (
Scalar
ifnumLevelSets
== 1 orData
object of shape (numLevelSets
,) ifnumLevelSets
> 1) – marks location of zero values of the level set functionm
by a positive entry. - useDiagonalHessianApproximation (
bool
) – if True cross gradient terms between level set components are ignored when calculating approximations of the inverse of the Hessian Operator. This can speed-up the calculation of the inverse but may lead to an increase of the number of iteration steps in the inversion. - tol (positive
float
) – tolerance when solving the PDE for the inverse of the Hessian Operator - coordinates (ReferenceSystem` or
SpatialCoordinateTransformation
) – defines coordinate system to be used - scale (
Scalar
ifnumLevelSets
== 1 orData
object of shape (numLevelSets
,) ifnumLevelSets
> 1) – weighting factor for level set function variation terms. If not set one is used. - scale_c (
Data
object of shape (numLevelSets
,``numLevelSets``)) – scale for the cross gradient terms. If not set one is assumed. Used for the case ifnumLevelSets
> 1 only. Only valuesscale_c[l,k]
in the lower triangle (l<k) are used.
- domain (
-
getArguments
(m)¶
-
getCoordinateTransformation
()¶ returns the coordinate transformation being used
Return type: CoordinateTransformation
-
getDomain
()¶ returns the domain of the regularization term
Return type: Domain
-
getDualProduct
(m, r)¶ returns the dual product of a gradient represented by X=r[1] and Y=r[0] with a level set function m:
Y_i*m_i + X_ij*m_{i,j}Return type: float
-
getGradient
()¶ returns the gradient of f at x using the precalculated values for x.
Parameters: - x (x-type) – location of derivative
- args – pre-calculated values for
x
fromgetArguments()
Return type: r-type
-
getGradientAtPoint
()¶ returns the gradient of the cost function J with respect to m.
Note: This implementation returns Y_k=dPsi/dm_k and X_kj=dPsi/dm_kj
-
getInverseHessianApproximation
(x, r, *args)¶ returns an approximative evaluation p of the inverse of the Hessian operator of the cost function for a given gradient r at a given location x: H(x) p = r
Parameters: - x (x-type) – location of Hessian operator to be evaluated
- r (r-type) – a given gradient
- args – pre-calculated values for
x
fromgetArguments()
Return type: x-type
Note: In general it is assumed that the Hessian H(x) needs to be calculated in each call for a new location x. However, the solver may suggest that this is not required, typically when the iteration is close to completeness.
Note: Subclasses that implement this method should set the class variable
provides_inverse_Hessian_approximation
toTrue
to enable the solver to call this method.
-
getInverseHessianApproximationAtPoint
(r, solve=True)¶
-
getNorm
(m)¶ returns the norm of
m
.Parameters: m ( Data
) – level set functionReturn type: float
-
getNumLevelSets
()¶ returns the number of level set functions
Return type: int
-
getNumTradeOffFactors
()¶ returns the number of trade-off factors being used.
Return type: int
-
getPDE
()¶ returns the linear PDE to be solved for the Hessian Operator inverse
Return type: linearPDEs.LinearPDE
-
getValue
(m, grad_m)¶ returns the value of the cost function J with respect to m. This equation is specified in the inversion cookbook.
Return type: float
-
getValueAtPoint
()¶ returns the value of the cost function J with respect to m. This equation is specified in the inversion cookbook.
Return type: float
-
provides_inverse_Hessian_approximation
= False¶
-
setPoint
(m)¶ sets the point which this function will work with
Parameters: m ( Data
) – level set function
-
setTradeOffFactors
(mu=None)¶ sets the trade-off factors for the level-set variation and the cross-gradient.
Parameters: mu ( list
offloat
or`numpy.array`
) – new values for the trade-off factors where values mu[:numLevelSets] are the trade-off factors for the level-set variation and the remaining values for the cross-gradient part with mu_c[l,k]=mu[numLevelSets+l+((k-1)*k)/2] (l<k). If no values for mu are given ones are used. Values must be positive.
-
setTradeOffFactorsForCrossGradient
(mu_c=None)¶ sets the trade-off factors for the cross-gradient terms.
Parameters: mu_c ( float
,list
offloat
ornumpy.array
) – new values for the trade-off factors for the cross-gradient terms. Values must be positive. If no value is given ones are used. Only value mu_c[l,k] for l<k are used.
-
setTradeOffFactorsForVariation
(mu=None)¶ sets the trade-off factors for the level-set variation part.
Parameters: mu ( float
,list
offloat
or`numpy.array`
) – new values for the trade-off factors. Values must be positive.
-
updateHessian
()¶ notifies the class to recalculate the Hessian operator.
-
-
class
esys.downunder.
StrongJointGravityMagneticInversion
(solverclass=None, debug=False, self_demagnetization=False, magnetic_intensity_data=False)¶ Bases:
esys.downunder.inversions.InversionDriver
Driver class to perform a joint inversion of Gravity (Bouguer) and magnetic anomaly data with the assumption that there is a functional relationship between density and susceptibility.
The class uses the standard
Regularization
class for a single level set function,DensityMapping
andSusceptibilityMapping
mappings, the gravity forward modelGravityModel
and the linear magnetic forward modelMagneticModel
.-
__init__
(solverclass=None, debug=False, self_demagnetization=False, magnetic_intensity_data=False)¶ creates an instance of an inversion driver.
Parameters: - solverclass ('AbstractMinimizer'.) – class of the solver to be used.
- self_demagnetization – if True self-demagnitization is applied.
- magnetic_intensity_data – if True magnetic intensity is used in the cost function.
-
DENSITY
= 0¶
-
SUSCEPTIBILITY
= 1¶
-
fixGravityPotentialAtBottom
(status=False)¶ indicates to fix the gravity potential at the bottom to zero (in addition to the top)
Parameters: status ( bool
) – if True gravity potential at the bottom is set to zero
-
fixMagneticPotentialAtBottom
(status=True)¶ indicates to fix the magnetic potential at the bottom to zero (in addition to the top)
Parameters: status ( bool
) – if True magnetic potential at the bottom is set to zero
-
getCostFunction
()¶ returns the cost function of the inversion.
Return type: ‘InversionCostFunction’
-
getDomain
()¶ returns the domain of the inversion
Return type: Domain
-
getLevelSetFunction
()¶ returns the level set function as solution of the optimization problem
Return type: Data
-
getSolver
()¶ The solver to be used in the inversion process. See the minimizers module for available solvers. By default, the L-BFGS minimizer is used.
Return type: ‘AbstractMinimizer’.
-
isSetUp
()¶ returns True if the inversion is set up and is ready to run.
Return type: bool
-
run
()¶ Executes the inversion.
Returns: physical parameters as result of the inversion Return type: list
of physical parameters or a physical parameter
-
setCostFunction
(costfunction)¶ sets the cost function of the inversion. This function needs to be called before the inversion iteration can be started.
Parameters: costfunction ('InversionCostFunction') – domain of the inversion
-
setInitialGuess
(rho=None, k=None)¶ set the initial guess rho for density and k for susceptibility for the inversion iteration.
Parameters: - rho (
Scalar
) – initial value for the density anomaly. - k (
Scalar
) – initial value for the susceptibility anomaly.
- rho (
-
setSolverCallback
(callback=None)¶ Sets the callback function which is called after every solver iteration.
-
setSolverMaxIterations
(maxiter=None)¶ Sets the maximum number of solver iterations to run. If
maxiter
is reached the iteration is terminated andMinimizerMaxIterReached
is thrown.Parameters: maxiter (positive int
) – maximum number of iteration steps.
-
setSolverTolerance
(m_tol=None, J_tol=None)¶ Sets the error tolerance for the solver. An acceptable solution is considered to be found once the tolerance is reached.
Parameters: - m_tol (
float
orNone
) – tolerance for changes to level set function. IfNone
changes to the level set function are not checked for convergence during iteration. - J_tol (
float
orNone
) – tolerance for changes to cost function. IfNone
changes to the cost function are not checked for convergence during iteration.
Note: if both arguments are
None
the default setting m_tol=1e-4, J_tol=None is used.- m_tol (
-
setup
(domainbuilder, rho0=None, drho=None, rho_z0=None, rho_beta=None, k0=None, dk=None, k_z0=None, k_beta=None, w0=None, w1=None, w_gc=None, rho_at_depth=None, k_at_depth=None)¶ Sets up the inversion from an instance
domainbuilder
of aDomainBuilder
. Gravity and magnetic data attached to thedomainbuilder
are considered in the inversion. If magnetic data are given as scalar it is assumed that values are collected in direction of the background magnetic field.Parameters: - domainbuilder (
DomainBuilder
) – Domain builder object with gravity source(s) - rho0 (
float
orScalar
) – reference density, seeDensityMapping
. If not specified, zero is used. - drho (
float
orScalar
) – density scale, seeDensityMapping
. If not specified, 2750 kg/m^3 is used. - rho_z0 (
float
orScalar
) – reference depth for depth weighting for density, seeDensityMapping
. If not specified, zero is used. - rho_beta (
float
orScalar
) – exponent for density depth weighting, seeDensityMapping
. If not specified, zero is used. - k0 (
float
orScalar
) – reference susceptibility, seeSusceptibilityMapping
. If not specified, zero is used. - dk (
float
orScalar
) – susceptibility scale, seeSusceptibilityMapping
. If not specified, 1. is used. - k_z0 (
float
orScalar
) – reference depth for susceptibility depth weighting, seeSusceptibilityMapping
. If not specified, zero is used. - k_beta (
float
orScalar
) – exponent for susceptibility depth weighting, seeSusceptibilityMapping
. If not specified, zero is used. - w0 (
Scalar
orfloat
) – weighting factor for level set term in the regularization. If not set zero is assumed. - w1 (
es.Data
orndarray
of shape (DIM,)) – weighting factor for the gradient term in the regularization seeRegularization
. If not set zero is assumed. - w_gc (
Scalar
orfloat
) – weighting factor for the cross gradient term in the regularization, seeRegularization
. If not set one is assumed. - k_at_depth (
float
orNone
) – value for susceptibility at depth, seeDomainBuilder
. - rho_at_depth (
float
orNone
) – value for density at depth, seeDomainBuilder
.
- domainbuilder (
-
siloWriterCallback
(k, x, Jx, g_Jx, norm_dJ=None, norm_dx=None)¶ callback function that can be used to track the solution
Parameters: - k – iteration count
- x – current m approximation
- Jx – value of cost function
- g_Jx – gradient of f at x
-
-
class
esys.downunder.
Subsidence
(domain, w, d, lam, mu, coordinates=None, tol=1e-08)¶ Bases:
esys.downunder.forwardmodels.base.ForwardModel
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 model - w (
Vector
withFunctionOnBoundary
) – data weighting factors and direction - d (
Scalar
withFunctionOnBoundary
) – displacement measured at surface - lam (
Scalar
withFunction
) – 1st Lame coefficient - lam – 2st Lame coefficient/Shear modulus
- coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – defines coordinate system to be used (not supported yet)) - tol (positive
float
) – tolerance of underlying PDE
- domain (
-
getArguments
(P)¶ Returns precomputed values shared by
getDefect()
andgetGradient()
.Parameters: P ( Scalar
) – pressureReturns: displacement u Return type: Vector
-
getCoordinateTransformation
()¶
-
getDefect
(P, u)¶ Returns the value of the defect.
Parameters: - P (
Scalar
) – pressure - u (
Vector
) – corresponding displacement
Return type: float
- P (
-
getGradient
(P, u)¶ Returns the gradient of the defect with respect to susceptibility.
Parameters: - P (
Scalar
) – pressure - u (
Vector
) – corresponding displacement
Return type: Scalar
- P (
-
rescaleWeights
(scale=1.0, P_scale=1.0)¶ rescales the weights
Parameters: - scale (positive
float
) – scale of data weighting factors - P_scale (
Scalar
) – scale of pressure increment
- scale (positive
-
-
class
esys.downunder.
SusceptibilityMapping
(domain, z0=None, k0=None, dk=None, beta=None)¶ Bases:
esys.downunder.mappings.LinearMapping
Susceptibility mapping with depth weighting
k = k0 + dk * ( (x_2 - z0)/l_z)^(beta/2) ) * m
-
__init__
(domain, z0=None, k0=None, dk=None, beta=None)¶ set up mapping
Parameters: - domain (
Domain
) – domain of the mapping - z0 (scalar) – depth weighting offset. If not present no depth scaling is applied.
- k0 (scalar) – reference density, defaults to 0
- dk (scalar) – susceptibility scale, defaults to 1
- beta (
float
) – depth weighting exponent, defaults to 2
- domain (
-
getDerivative
(m)¶ returns the value for the derivative of the mapping for m
-
getInverse
(p)¶ returns the value of the inverse of the mapping for s
-
getTypicalDerivative
()¶ returns a typical value for the derivative
-
getValue
(m)¶ returns the value of the mapping for m
-
-
class
esys.downunder.
SyntheticData
(data_type, n_length=1, n_depth=1, depth_offset=0.0, depth=None, amplitude=None, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False, s=0.0)¶ Bases:
esys.downunder.datasources.SyntheticDataBase
Defines synthetic gravity/magnetic data based on harmonic property anomaly
rho = amplitude * sin(n_depth * pi /depth * (z+depth_offset)) * sin(n_length * pi /length * (x - shift) )for all x and z<=0. For z>0 rho = 0.
-
__init__
(data_type, n_length=1, n_depth=1, depth_offset=0.0, depth=None, amplitude=None, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False, s=0.0)¶ Parameters: - data_type (
DataSource.GRAVITY
,DataSource.MAGNETIC
) – data type indicator - n_length (
int
) – number of oscillations in the anomaly data within the observation region - n_depth (
int
) – number of oscillations in the anomaly data below surface - depth_offset (
float
) – vertical offset of the data - depth (
float
) – vertical extent in the anomaly data. If not present the depth of the domain is used. - amplitude – data amplitude. Default value is 200 U.kg/U.m**3 for gravity and 0.1 for magnetic data.
- DIM (
int
(2 or 3)) – spatial dimensionality - number_of_elements (
int
) – lateral number of elements in the region where data are collected - length (
float
) – lateral extent of the region where data are collected - B_b (
list
ofScalar
) – background magnetic flux density [B_r, B_latiude, B_longitude]. Only used for magnetic data. - data_offset (
float
) – offset of the data collection region from the surface - full_knowledge (
Bool
) – ifTrue
data are collected from the entire subsurface region. This is mainly for testing.
- data_type (
-
ACOUSTIC
= 2¶
-
GRAVITY
= 0¶
-
MAGNETIC
= 1¶
-
MT
= 3¶
-
getDataExtents
()¶ returns the lateral data extend of the data set
-
getDataType
()¶ returns the data type
-
getHeightScale
()¶ returns the height scale factor to convert from meters to the appropriate units of the reference system used.
Return type: float
-
getReferenceProperty
(domain=None)¶ Returns the reference
Data
object that was used to generate the gravity/susceptibility anomaly data.
-
getReferenceSystem
()¶ returns the reference coordinate system
Return type: ReferenceSystem
-
getSubsamplingFactor
()¶ Returns the subsampling factor that was set via
setSubsamplingFactor
(see there).
-
getSurveyData
(domain, origin, number_of_elements, spacing)¶ returns the survey data placed on a given domain.
Parameters: - domain (
Domain
) – domain on which the data are to be placed - origin (
list
offloat
) – origin of the domain - number_of_elements (
list
ofint
) – number of elements (or cells) in each spatial direction used to span the domain - spacing (
list
offloat
) – cell size in each spatial direction
Returns: observed gravity field or magnetic flux density for each cell in the domain and for each cell an indicator 1/0 if the data are valid or not.
Return type: pair of
Scalar
- domain (
-
getTags
()¶ returns the list of tags
Return type: list
-
getUtmZone
()¶ returns a dummy UTM zone since this class does not use real coordinate values.
-
hasTag
(tag)¶ returns true if the data set has tag
tag
Return type: bool
-
setSubsamplingFactor
(f)¶ Sets the data subsampling factor (default=1).
The factor is applied in all dimensions. For example a 2D dataset with 300 x 150 data points will be reduced to 150 x 75 when a subsampling factor of 2 is used. This becomes important when adding data of varying resolution to a
DomainBuilder
.
-
-
class
esys.downunder.
SyntheticDataBase
(data_type, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False)¶ Bases:
esys.downunder.datasources.DataSource
Base class to define reference data based on a given property distribution (density or susceptibility). Data are collected from a square region of vertical extent
length
on a grid withnumber_of_elements
cells in each direction.The synthetic data are constructed by solving the appropriate forward problem. Data can be sampled with an offset from the surface at z=0 or using the entire subsurface region.
-
__init__
(data_type, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False)¶ Parameters: - data_type (
DataSource.GRAVITY
,DataSource.MAGNETIC
) – data type indicator - DIM (
int
(2 or 3)) – number of spatial dimensions - number_of_elements (
int
) – lateral number of elements in the region where data are collected - length (
float
) – lateral extent of the region where data are collected - B_b (
list
ofScalar
) – background magnetic flux density [B_r, B_latiude, B_longitude]. Only used for magnetic data. - data_offset (
float
) – offset of the data collection region from the surface - full_knowledge (
Bool
) – ifTrue
data are collected from the entire subsurface region. This is mainly for testing.
- data_type (
-
ACOUSTIC
= 2¶
-
GRAVITY
= 0¶
-
MAGNETIC
= 1¶
-
MT
= 3¶
-
getDataExtents
()¶ returns the lateral data extend of the data set
-
getDataType
()¶ returns the data type
-
getHeightScale
()¶ returns the height scale factor to convert from meters to the appropriate units of the reference system used.
Return type: float
-
getReferenceProperty
(domain=None)¶ Returns the reference
Data
object that was used to generate the gravity/susceptibility anomaly data.Returns: the density or susceptibility anomaly used to create the survey data Note: it can be assumed that in the first call the domain
argument is present so the actual anomaly data can be created. In subsequent calls this may not be true.Note: method needs to be overwritten
-
getReferenceSystem
()¶ returns the reference coordinate system
Return type: ReferenceSystem
-
getSubsamplingFactor
()¶ Returns the subsampling factor that was set via
setSubsamplingFactor
(see there).
-
getSurveyData
(domain, origin, number_of_elements, spacing)¶ returns the survey data placed on a given domain.
Parameters: - domain (
Domain
) – domain on which the data are to be placed - origin (
list
offloat
) – origin of the domain - number_of_elements (
list
ofint
) – number of elements (or cells) in each spatial direction used to span the domain - spacing (
list
offloat
) – cell size in each spatial direction
Returns: observed gravity field or magnetic flux density for each cell in the domain and for each cell an indicator 1/0 if the data are valid or not.
Return type: pair of
Scalar
- domain (
-
getTags
()¶ returns the list of tags
Return type: list
-
getUtmZone
()¶ returns a dummy UTM zone since this class does not use real coordinate values.
-
hasTag
(tag)¶ returns true if the data set has tag
tag
Return type: bool
-
setSubsamplingFactor
(f)¶ Sets the data subsampling factor (default=1).
The factor is applied in all dimensions. For example a 2D dataset with 300 x 150 data points will be reduced to 150 x 75 when a subsampling factor of 2 is used. This becomes important when adding data of varying resolution to a
DomainBuilder
.
-
-
class
esys.downunder.
SyntheticFeatureData
(data_type, features, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False)¶ Bases:
esys.downunder.datasources.SyntheticDataBase
Uses a list of
SourceFeature
objects to define synthetic anomaly data.-
__init__
(data_type, features, DIM=2, number_of_elements=10, length=1000.0, B_b=None, data_offset=0, full_knowledge=False)¶ Parameters: - data_type (
DataSource.GRAVITY
,DataSource.MAGNETIC
) – data type indicator - features (
list
ofSourceFeature
) – list of features. It is recommended that the features are located entirely below the surface. - DIM (
int
(2 or 3)) – spatial dimensionality - number_of_elements (
int
) – lateral number of elements in the region where data are collected - length (
float
) – lateral extent of the region where data are collected - B_b (
list
ofScalar
) – background magnetic flux density [B_r, B_latiude, B_longitude]. Only used for magnetic data. - data_offset (
float
) – offset of the data collection region from the surface - full_knowledge (
Bool
) – ifTrue
data are collected from the entire subsurface region. This is mainly for testing.
- data_type (
-
ACOUSTIC
= 2¶
-
GRAVITY
= 0¶
-
MAGNETIC
= 1¶
-
MT
= 3¶
-
getDataExtents
()¶ returns the lateral data extend of the data set
-
getDataType
()¶ returns the data type
-
getHeightScale
()¶ returns the height scale factor to convert from meters to the appropriate units of the reference system used.
Return type: float
-
getReferenceProperty
(domain=None)¶ Returns the reference
Data
object that was used to generate the gravity/susceptibility anomaly data.
-
getReferenceSystem
()¶ returns the reference coordinate system
Return type: ReferenceSystem
-
getSubsamplingFactor
()¶ Returns the subsampling factor that was set via
setSubsamplingFactor
(see there).
-
getSurveyData
(domain, origin, number_of_elements, spacing)¶ returns the survey data placed on a given domain.
Parameters: - domain (
Domain
) – domain on which the data are to be placed - origin (
list
offloat
) – origin of the domain - number_of_elements (
list
ofint
) – number of elements (or cells) in each spatial direction used to span the domain - spacing (
list
offloat
) – cell size in each spatial direction
Returns: observed gravity field or magnetic flux density for each cell in the domain and for each cell an indicator 1/0 if the data are valid or not.
Return type: pair of
Scalar
- domain (
-
getTags
()¶ returns the list of tags
Return type: list
-
getUtmZone
()¶ returns a dummy UTM zone since this class does not use real coordinate values.
-
hasTag
(tag)¶ returns true if the data set has tag
tag
Return type: bool
-
setSubsamplingFactor
(f)¶ Sets the data subsampling factor (default=1).
The factor is applied in all dimensions. For example a 2D dataset with 300 x 150 data points will be reduced to 150 x 75 when a subsampling factor of 2 is used. This becomes important when adding data of varying resolution to a
DomainBuilder
.
-
-
class
esys.downunder.
TTIWave
(domain, v_p, v_s, wavelet, source_tag, source_vector=[0.0, 1.0], eps=0.0, delta=0.0, theta=0.0, rho=1.0, dt=None, u0=None, v0=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ Bases:
esys.downunder.seismic.WaveBase
Solving the 2D TTI wave equation with
sigma_xx= c11*e_xx + c13*e_zz + c15*e_xz
sigma_zz= c13*e_xx + c33*e_zz + c35*e_xz
sigma_xz= c15*e_xx + c35*e_zz + c55*e_xz
the coefficients
c11
,c13
, etc are calculated from the tompsen parameterseps
,delta
and the tilttheta
Note: currently only the 2D case is supported. -
__init__
(domain, v_p, v_s, wavelet, source_tag, source_vector=[0.0, 1.0], eps=0.0, delta=0.0, theta=0.0, rho=1.0, dt=None, u0=None, v0=None, absorption_zone=300.0, absorption_cut=0.01, lumping=True)¶ initialize the TTI wave solver
Parameters: - domain (
Domain
) – domain of the problem - v_p (
escript.Scalar
) – vertical p-velocity field - v_s (
escript.Scalar
) – vertical s-velocity field - wavelet (
Wavelet
) – wavelet to describe the time evolution of source term - source_tag ('str' or 'int') – tag of the source location
- source_vector – source orientation vector
- eps – first Thompsen parameter
- delta – second Thompsen parameter
- theta – tilting (in Rad)
- rho – density
- dt – time step size. If not present a suitable time step size is calculated.
- u0 – initial solution. If not present zero is used.
- v0 – initial solution change rate. If not present zero is used.
- absorption_zone – thickness of absorption zone
- absorption_cut – boundary value of absorption decay factor
- lumping – if True mass matrix lumping is being used. This is accelerates the computing but introduces some diffusion.
- domain (
-
getTimeStepSize
()¶
-
update
(t)¶ returns the solution for the next time marker t which needs to greater than the time marker from the previous call.
-
-
class
esys.downunder.
VTIWave
(domain, v_p, v_s, wavelet, source_tag, source_vector=[0.0, 0.0, 1.0], eps=0.0, gamma=0.0, delta=0.0, rho=1.0, dt=None, u0=None, v0=None, absorption_zone=None, absorption_cut=0.01, lumping=True, disable_fast_assemblers=False)¶ Bases:
esys.downunder.seismic.WaveBase
Solving the VTI wave equation
Note: In case of a two dimensional domain the second spatial dimenion is depth. -
__init__
(domain, v_p, v_s, wavelet, source_tag, source_vector=[0.0, 0.0, 1.0], eps=0.0, gamma=0.0, delta=0.0, rho=1.0, dt=None, u0=None, v0=None, absorption_zone=None, absorption_cut=0.01, lumping=True, disable_fast_assemblers=False)¶ initialize the VTI wave solver
Parameters: - domain (
Domain
) – domain of the problem - v_p (
escript.Scalar
) – vertical p-velocity field - v_s (
escript.Scalar
) – vertical s-velocity field - wavelet (
Wavelet
) – wavelet to describe the time evolution of source term - source_tag ('str' or 'int') – tag of the source location
- source_vector – source orientation vector
- eps – first Thompsen parameter
- delta – second Thompsen parameter
- gamma – third Thompsen parameter
- rho – density
- dt – time step size. If not present a suitable time step size is calculated.
- u0 – initial solution. If not present zero is used.
- v0 – initial solution change rate. If not present zero is used.
- absorption_zone – thickness of absorption zone
- absorption_cut – boundary value of absorption decay factor
- lumping – if True mass matrix lumping is being used. This is accelerates the computing but introduces some diffusion.
- disable_fast_assemblers (
boolean
) – if True, forces use of slower and more general PDE assemblers
- domain (
-
getTimeStepSize
()¶
-
setQ
(q)¶ sets the PDE q value
Parameters: q – the value to set
-
update
(t)¶ returns the solution for the next time marker t which needs to greater than the time marker from the previous call.
-
-
class
esys.downunder.
WaveBase
(dt, u0, v0, t0=0.0)¶ Bases:
object
Base for wave propagation using the Verlet scheme.
u_tt = A(t,u), u(t=t0)=u0, u_t(t=t0)=v0
with a given acceleration force as function of time.
a_n=A(t_{n-1}) v_n=v_{n-1} + dt * a_n u_n=u_{n-1} + dt * v_n
-
__init__
(dt, u0, v0, t0=0.0)¶ set up the wave base
Parameters: - dt – time step size (need to be sufficiently small)
- u0 – initial value
- v0 – initial velocity
- t0 – initial time
-
getTimeStepSize
()¶
-
update
(t)¶ returns the solution for the next time marker t which needs to greater than the time marker from the previous call.
-
-
class
esys.downunder.
WennerSurvey
(domain, primaryConductivity, secondaryConductivity, current, a, midPoint, directionVector, numElectrodes)¶ Bases:
esys.downunder.dcresistivityforwardmodeling.DcResistivityForward
WennerSurvey forward calculation
-
__init__
(domain, primaryConductivity, secondaryConductivity, current, a, midPoint, directionVector, numElectrodes)¶ Parameters: - domain (
Domain
) – domain of the model - primaryConductivity (
data
) – preset primary conductivity data object - secondaryConductivity (
data
) – preset secondary conductivity data object - current (
float
orint
) – amount of current to be injected at the current electrode - a (
list
) – the spacing between current and potential electrodes - midPoint – midPoint of the survey, as a list containing x,y coords
- directionVector – two element list specifying the direction the survey should extend from the midpoint
- numElectrodes (
int
) – the number of electrodes to be used in the survey must be a multiple of 2 for polepole survey
- domain (
-
checkBounds
()¶
-
getApparentResistivity
()¶
-
getApparentResistivityPrimary
()¶
-
getApparentResistivitySecondary
()¶
-
getApparentResistivityTotal
()¶
-
getElectrodes
()¶ retuns the list of electrodes with locations
-
getPotential
()¶ returns a list containing 3 lists one for each the primary, secondary and total potential.
-
-
esys.downunder.
xrange
¶ alias of
builtins.range
Functions¶
-
esys.downunder.
CartesianCoordinateTransformation
(domain, reference=<esys.downunder.coordinates.CartesianReferenceSystem object>)¶
-
esys.downunder.
GRS80ReferenceSystem
()¶ returns the
GeodeticReferenceSystem
for the GRS80 Ellipsoid eg. used by Geocentric Datum of Australia GDA94
-
esys.downunder.
SphericalReferenceSystem
(R=6378137.0)¶ returns the
GeodeticReferenceSystem
of a sphere :param R: sphere radius :type R: positivedouble
-
esys.downunder.
WGS84ReferenceSystem
()¶ returns the
GeodeticReferenceSystem
for the WGS84 Ellipsoid
-
esys.downunder.
createAbsorptionLayerFunction
(x, absorption_zone=300.0, absorption_cut=0.01, top_absorption=False)¶ Creates a distribution which is one in the interior of the domain of
x
and is falling down to the value ‘absorption_cut’ over a margin of thickness ‘absorption_zone’ toward each boundary except the top of the domain.Parameters: - x (
escript.Data
) – location of points in the domain - absorption_zone – thickness of the absorption zone
- absorption_cut – value of decay function on domain boundary
Returns: function on ‘x’ which is one in the iterior and decays to almost zero over a margin toward the boundary.
- x (
-
esys.downunder.
makeTransformation
(domain, coordinates=None)¶ returns a
SpatialCoordinateTransformation
for the given domainParameters: - domain (
esys.escript.AbstractDomain
) – domain in the domain of the coordinate transformation - coordinates (
ReferenceSystem
orSpatialCoordinateTransformation
) – the reference system or spatial coordinate system.
Returns: the spatial coordinate system for the given domain of the specified reference system
coordinates
. Ifcoordinates
is already spatial coordinate system based on the riven domaincoordinates
is returned. Otherwise an appropriate spatial coordinate system is created.Return type: - domain (
-
esys.downunder.
saveSilo
(filename, domain=None, write_meshdata=False, time=0.0, cycle=0, **data)¶ Writes
Data
objects and their mesh to a file using the SILO file format.Example:
temp=Scalar(..) v=Vector(..) saveSilo("solution.silo", temperature=temp, velocity=v)
temp
andv
are written to “solution.silo” wheretemp
is named “temperature” andv
is named “velocity”.Parameters: - filename (
str
) – name of the output file (‘.silo’ is added if required) - domain (
escript.Domain
) – domain of theData
objects. If not specified, the domain of the givenData
objects is used. - write_meshdata (
bool
) – whether to save mesh-related data such as element identifiers, ownership etc. This is mainly useful for debugging. - time (
float
) – the timestamp to save within the file - cycle (
int
) – the cycle (or timestep) of the data - <name> – writes the assigned value to the Silo file using <name> as identifier
Note: All data objects have to be defined on the same domain but they may be defined on separate
FunctionSpace
s.- filename (
Others¶
- pi


Trees
Indices
Help
[
hide private
]
[
frames
] |
no frames
]
Identifier Index
[
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y Z
_
]
A
accept
(in
BaseModel
)
acquire_lock()
(in
_Storage
)
AppAssertionCredentials
(in
oauth2client.appengine
)
accept
(in
JsonModel
)
add()
(in
BatchHttpRequest
)
AppAssertionCredentials
(in
oauth2client.gce
)
accept
(in
MediaModel
)
add_response_callback()
(in
HttpRequest
)
appengine
(in
oauth2client
)
accept
(in
ProtocolBufferModel
)
ALL_HEADERS
(in
Headers
)
AppIdentityError
(in
oauth2client.crypt
)
accept
(in
RawModel
)
AlreadyLockedException
(in
oauth2client.locked_file
)
apply()
(in
Credentials
)
access_token_expired()
(in
OAuth2Credentials
)
alt_param
(in
BaseModel
)
apply()
(in
OAuth2Credentials
)
AccessTokenCredentials
(in
oauth2client.client
)
alt_param
(in
JsonModel
)
as_header_value()
(in
Channel
)
AccessTokenCredentialsError
(in
oauth2client.client
)
alt_param
(in
MediaModel
)
AssertionCredentials
(in
oauth2client.client
)
AccessTokenRefreshError
(in
oauth2client.client
)
alt_param
(in
ProtocolBufferModel
)
AUTH_TOKEN_LIFETIME_SECS
(in
oauth2client.crypt
)
acquire_lock()
(in
Storage
)
alt_param
(in
RawModel
)
authorize()
(in
Credentials
)
acquire_lock()
(in
Storage
)
anyjson
(in
oauth2client
)
authorize()
(in
OAuth2Credentials
)
acquire_lock()
(in
Storage
)
apiclient
authorize_url()
(in
OAuth2Decorator
)
B
BaseModel
(in
apiclient.model
)
BatchHttpRequest
(in
apiclient.http
)
build()
(in
apiclient.discovery
)
BatchError
(in
apiclient.errors
)
best_match()
(in
apiclient.mimeparse
)
build_from_document()
(in
apiclient.discovery
)
C
callback_application()
(in
OAuth2Decorator
)
clientsecrets
(in
oauth2client
)
credentials_from_clientsecrets_and_code()
(in
oauth2client.client
)
callback_handler()
(in
OAuth2Decorator
)
CLOCK_SKEW_SECS
(in
oauth2client.crypt
)
credentials_from_code()
(in
oauth2client.client
)
callback_path()
(in
OAuth2Decorator
)
content_type
(in
BaseModel
)
CredentialsField
(in
oauth2client.django_orm
)
Channel
(in
apiclient.push
)
content_type
(in
JsonModel
)
CredentialsFileSymbolicLinkError
(in
oauth2client.file
)
chunksize()
(in
MediaIoBaseUpload
)
content_type
(in
MediaModel
)
CredentialsFileSymbolicLinkError
(in
oauth2client.locked_file
)
chunksize()
(in
MediaUpload
)
content_type
(in
ProtocolBufferModel
)
CredentialsModel
(in
oauth2client.appengine
)
clean_headers()
(in
oauth2client.client
)
content_type
(in
RawModel
)
CredentialsNDBModel
(in
oauth2client.appengine
)
client
(in
oauth2client
)
createMethod()
(in
apiclient.discovery
)
CredentialsNDBProperty
(in
oauth2client.appengine
)
CLIENT_TOKEN
(in
apiclient.push
)
createNextMethod()
(in
apiclient.discovery
)
CredentialsProperty
(in
oauth2client.appengine
)
client_token()
(in
Subscription
)
credentials
(in
CredentialsModel
)
crypt
(in
oauth2client
)
ClientRedirectHandler
(in
oauth2client.tools
)
credentials
(in
CredentialsNDBModel
)
ClientRedirectServer
(in
oauth2client.tools
)
Credentials
(in
oauth2client.client
)
D
data_type
(in
CredentialsProperty
)
delete()
(in
Storage
)
deserialize()
(in
RawModel
)
data_type
(in
FlowProperty
)
DELIMITER
(in
oauth2client.xsrfutil
)
dict_to_tuple_key()
(in
oauth2client.util
)
DEFAULT_CHUNK_SIZE
(in
apiclient.http
)
deserialize()
(in
BaseModel
)
discovery
(in
apiclient
)
DEFAULT_METHOD_DOC
(in
apiclient.discovery
)
deserialize()
(in
JsonModel
)
DISCOVERY_URI
(in
apiclient.discovery
)
DEFAULT_TIMEOUT_SECS
(in
oauth2client.xsrfutil
)
deserialize()
(in
MediaModel
)
django_orm
(in
oauth2client
)
delete()
(in
MemoryCache
)
deserialize()
(in
ProtocolBufferModel
)
do_GET()
(in
ClientRedirectHandler
)
E
emit()
(in
_SchemaToStruct
)
Error
(in
oauth2client.clientsecrets
)
execute()
(in
HttpRequest
)
emitBegin()
(in
_SchemaToStruct
)
Error
(in
oauth2client.multistore_file
)
execute()
(in
HttpRequestMock
)
emitEnd()
(in
_SchemaToStruct
)
errors
(in
apiclient
)
EXPIRY_FORMAT
(in
oauth2client.client
)
empty()
(in
FlowProperty
)
EVENT_TYPE
(in
apiclient.push
)
ext
(in
apiclient
)
Error
(in
apiclient.errors
)
event_type()
(in
Subscription
)
Error
(in
oauth2client.client
)
execute()
(in
BatchHttpRequest
)
F
file
(in
oauth2client
)
FLAGS
(in
oauth2client.util
)
from_json()
(in
HttpRequest
)
file_handle()
(in
LockedFile
)
Flow
(in
oauth2client.client
)
from_json()
(in
MediaFileUpload
)
file_handle()
(in
_Opener
)
flow_from_clientsecrets()
(in
oauth2client.client
)
from_json()
(in
AppAssertionCredentials
)
filename()
(in
LockedFile
)
FlowExchangeError
(in
oauth2client.client
)
from_json()
(in
AccessTokenCredentials
)
filename()
(in
_Opener
)
FlowField
(in
oauth2client.django_orm
)
from_json()
(in
Credentials
)
fitness_and_quality_parsed()
(in
apiclient.mimeparse
)
FlowNDBProperty
(in
oauth2client.appengine
)
from_json()
(in
OAuth2Credentials
)
fix_method_name()
(in
apiclient.discovery
)
FlowProperty
(in
oauth2client.appengine
)
from_json()
(in
SignedJwtAssertionCredentials
)
FLAGS
(in
apiclient.model
)
for_channel()
(in
Subscription
)
from_json()
(in
AppAssertionCredentials
)
FLAGS
(in
oauth2client.tools
)
for_request()
(in
Subscription
)
G
gce
(in
oauth2client
)
get_credential_storage_custom_key()
(in
oauth2client.multistore_file
)
get_value_for_datastore()
(in
CredentialsProperty
)
generate_token()
(in
oauth2client.xsrfutil
)
get_credential_storage_custom_string_key()
(in
oauth2client.multistore_file
)
get_value_for_datastore()
(in
FlowProperty
)
get()
(in
Schemas
)
get_db_prep_value()
(in
CredentialsField
)
getbytes()
(in
MediaIoBaseUpload
)
get()
(in
MemoryCache
)
get_db_prep_value()
(in
FlowField
)
getbytes()
(in
MediaUpload
)
get()
(in
Storage
)
get_internal_type()
(in
CredentialsField
)
get_credential_storage()
(in
oauth2client.multistore_file
)
get_internal_type()
(in
FlowField
)
H
has_credentials()
(in
OAuth2Decorator
)
Headers
(in
apiclient.push
)
HttpMock
(in
apiclient.http
)
HAS_CRYPTO
(in
oauth2client.client
)
http
(in
apiclient
)
HttpMockSequence
(in
apiclient.http
)
has_stream()
(in
MediaIoBaseUpload
)
http()
(in
OAuth2Decorator
)
HttpRequest
(in
apiclient.http
)
has_stream()
(in
MediaUpload
)
HttpError
(in
apiclient.errors
)
HttpRequestMock
(in
apiclient.http
)
I
ID_TOKEN_VERIFICATON_CERTS
(in
oauth2client.client
)
InvalidClientSecretsError
(in
oauth2client.clientsecrets
)
is_locked()
(in
LockedFile
)
indent()
(in
_SchemaToStruct
)
InvalidJsonError
(in
apiclient.errors
)
is_locked()
(in
_Opener
)
InvalidChunkSizeError
(in
apiclient.errors
)
InvalidSubscriptionRequestError
(in
apiclient.push
)
items()
(in
Headers
)
InvalidClientSecretsError
(in
oauth2client.appengine
)
InvalidXsrfTokenError
(in
oauth2client.appengine
)
J
JsonModel
(in
apiclient.model
)
K
key2param()
(in
apiclient.discovery
)
keyring_storage
(in
oauth2client
)
L
load()
(in
oauth2client.clientsecrets
)
locked_get()
(in
Storage
)
LockedFile
(in
oauth2client.locked_file
)
loadfile()
(in
oauth2client.clientsecrets
)
locked_get()
(in
Storage
)
log_message()
(in
ClientRedirectHandler
)
loads()
(in
oauth2client.clientsecrets
)
locked_get()
(in
Storage
)
logger
(in
apiclient.discovery
)
locked_delete()
(in
StorageByKeyName
)
locked_get()
(in
Storage
)
logger
(in
oauth2client.appengine
)
locked_delete()
(in
Storage
)
locked_get()
(in
_Storage
)
logger
(in
oauth2client.client
)
locked_delete()
(in
Storage
)
locked_put()
(in
StorageByKeyName
)
logger
(in
oauth2client.crypt
)
locked_delete()
(in
Storage
)
locked_put()
(in
Storage
)
logger
(in
oauth2client.gce
)
locked_delete()
(in
Storage
)
locked_put()
(in
Storage
)
logger
(in
oauth2client.locked_file
)
locked_delete()
(in
_Storage
)
locked_put()
(in
Storage
)
logger
(in
oauth2client.multistore_file
)
locked_file
(in
oauth2client
)
locked_put()
(in
Storage
)
logger
(in
oauth2client.util
)
locked_get()
(in
StorageByKeyName
)
locked_put()
(in
_Storage
)
M
make_signed_jwt()
(in
oauth2client.crypt
)
MediaInMemoryUpload
(in
apiclient.http
)
mimeparse
(in
apiclient
)
make_value_from_datastore()
(in
CredentialsProperty
)
MediaIoBaseDownload
(in
apiclient.http
)
mimetype()
(in
MediaIoBaseUpload
)
make_value_from_datastore()
(in
FlowProperty
)
MediaIoBaseUpload
(in
apiclient.http
)
mimetype()
(in
MediaUpload
)
makepatch()
(in
apiclient.model
)
MediaModel
(in
apiclient.model
)
model
(in
apiclient
)
MAX_TOKEN_LIFETIME_SECS
(in
SignedJwtAssertionCredentials
)
MediaUpload
(in
apiclient.http
)
Model
(in
apiclient.model
)
MAX_TOKEN_LIFETIME_SECS
(in
oauth2client.crypt
)
MediaUploadProgress
(in
apiclient.http
)
MULTIPLIERS
(in
apiclient.discovery
)
MAX_URI_LENGTH
(in
apiclient.http
)
MediaUploadSizeError
(in
apiclient.errors
)
multistore_file
(in
oauth2client
)
MediaDownloadProgress
(in
apiclient.http
)
MemoryCache
(in
oauth2client.client
)
MediaFileUpload
(in
apiclient.http
)
META
(in
oauth2client.gce
)
N
new_from_json()
(in
MediaUpload
)
next_chunk()
(in
MediaIoBaseDownload
)
no_content_response()
(in
RawModel
)
new_from_json()
(in
Credentials
)
no_content_response
(in
BaseModel
)
NON_SERIALIZED_MEMBERS
(in
Credentials
)
new_token()
(in
apiclient.push
)
no_content_response()
(in
JsonModel
)
NonAsciiHeaderError
(in
oauth2client.client
)
NewerCredentialStoreError
(in
oauth2client.multistore_file
)
no_content_response()
(in
MediaModel
)
next_chunk()
(in
HttpRequest
)
no_content_response()
(in
ProtocolBufferModel
)
O
oauth2client
OAuth2DecoratorFromClientSecrets
(in
oauth2client.appengine
)
open_and_lock()
(in
LockedFile
)
OAUTH2CLIENT_NAMESPACE
(in
oauth2client.appengine
)
OAuth2WebServerFlow
(in
oauth2client.client
)
open_and_lock()
(in
_Opener
)
OAuth2Credentials
(in
oauth2client.client
)
oauth_aware()
(in
OAuth2Decorator
)
open_and_lock()
(in
_PosixOpener
)
OAuth2Decorator
(in
oauth2client.appengine
)
oauth_required()
(in
OAuth2Decorator
)
OpenSSLSigner
(in
oauth2client.crypt
)
oauth2decorator_from_clientsecrets()
(in
oauth2client.appengine
)
OOB_CALLBACK_URN
(in
oauth2client.client
)
OpenSSLVerifier
(in
oauth2client.crypt
)
P
parse_media_range()
(in
apiclient.mimeparse
)
prettyPrintSchema()
(in
Schemas
)
push
(in
apiclient
)
parse_mime_type()
(in
apiclient.mimeparse
)
progress()
(in
MediaDownloadProgress
)
put()
(in
Storage
)
positional()
(in
oauth2client.util
)
progress()
(in
MediaUploadProgress
)
PyCryptoSigner
(in
oauth2client.crypt
)
prettyPrintByName()
(in
Schemas
)
ProtocolBufferModel
(in
apiclient.model
)
PyCryptoVerifier
(in
oauth2client.crypt
)
Q
quality()
(in
apiclient.mimeparse
)
quality_parsed()
(in
apiclient.mimeparse
)
query_params
(in
ClientRedirectServer
)
R
RawModel
(in
apiclient.model
)
release_lock()
(in
Storage
)
Resource
(in
apiclient.discovery
)
read()
(in
_StreamSlice
)
release_lock()
(in
_Storage
)
response()
(in
BaseModel
)
read()
(in
Headers
)
request()
(in
HttpMock
)
response()
(in
Model
)
refresh()
(in
Credentials
)
request()
(in
HttpMockSequence
)
resumable()
(in
MediaIoBaseUpload
)
refresh()
(in
OAuth2Credentials
)
request()
(in
BaseModel
)
resumable()
(in
MediaUpload
)
REFRESH_STATUS_CODES
(in
oauth2client.client
)
request()
(in
Model
)
ResumableUploadError
(in
apiclient.errors
)
release_lock()
(in
Storage
)
RequestMockBuilder
(in
apiclient.http
)
run()
(in
oauth2client.tools
)
release_lock()
(in
Storage
)
RESERVED_WORDS
(in
apiclient.discovery
)
S
schema
(in
apiclient
)
SignedJwtAssertionCredentials
(in
oauth2client.client
)
Storage
(in
oauth2client.file
)
Schemas
(in
apiclient.schema
)
Signer
(in
oauth2client.crypt
)
Storage
(in
oauth2client.keyring_storage
)
scopes_to_string()
(in
oauth2client.util
)
SiteXsrfSecretKey
(in
oauth2client.appengine
)
StorageByKeyName
(in
oauth2client.appengine
)
secret
(in
SiteXsrfSecretKey
)
SiteXsrfSecretKeyNDB
(in
oauth2client.appengine
)
stream()
(in
MediaIoBaseUpload
)
secret
(in
SiteXsrfSecretKeyNDB
)
size()
(in
MediaIoBaseUpload
)
stream()
(in
MediaUpload
)
serialize()
(in
BaseModel
)
size()
(in
MediaUpload
)
SUBSCRIBE
(in
apiclient.push
)
serialize()
(in
JsonModel
)
STACK_QUERY_PARAMETERS
(in
apiclient.discovery
)
subscribe()
(in
Subscription
)
serialize()
(in
ProtocolBufferModel
)
step1_get_authorize_url()
(in
OAuth2WebServerFlow
)
Subscription
(in
apiclient.push
)
set()
(in
MemoryCache
)
step2_exchange()
(in
OAuth2WebServerFlow
)
SUBSCRIPTION_ID
(in
apiclient.push
)
set_store()
(in
OAuth2Credentials
)
Storage
(in
oauth2client.client
)
subscription_id()
(in
Subscription
)
set_user_agent()
(in
apiclient.http
)
Storage
(in
oauth2client.django_orm
)
T
to_json()
(in
HttpRequest
)
to_python()
(in
CredentialsField
)
TOPIC_URI
(in
apiclient.push
)
to_json()
(in
MediaFileUpload
)
to_python()
(in
FlowField
)
topic_uri()
(in
Subscription
)
to_json()
(in
MediaIoBaseUpload
)
to_str()
(in
_SchemaToStruct
)
tunnel_patch()
(in
apiclient.http
)
to_json()
(in
MediaUpload
)
tools
(in
oauth2client
)
TYPE_INSTALLED
(in
oauth2client.clientsecrets
)
to_json()
(in
Credentials
)
TOPIC_ID
(in
apiclient.push
)
TYPE_WEB
(in
oauth2client.clientsecrets
)
to_json()
(in
OAuth2Credentials
)
topic_id()
(in
Subscription
)
U
UnacceptableMimeTypeError
(in
apiclient.errors
)
UnknownClientSecretsFlowError
(in
oauth2client.client
)
unlock_and_close()
(in
_PosixOpener
)
undent()
(in
_SchemaToStruct
)
UnknownFileType
(in
apiclient.errors
)
UNSUBSCRIBE
(in
apiclient.push
)
UnexpectedBodyError
(in
apiclient.errors
)
UnknownLinkType
(in
apiclient.errors
)
unsubscribe()
(in
Subscription
)
UnexpectedMethodError
(in
apiclient.errors
)
unlock_and_close()
(in
LockedFile
)
URITEMPLATE
(in
apiclient.discovery
)
UnknownApiNameOrVersion
(in
apiclient.errors
)
unlock_and_close()
(in
_Opener
)
util
(in
oauth2client
)
V
VALID_CLIENT
(in
oauth2client.clientsecrets
)
validate_token()
(in
oauth2client.xsrfutil
)
verify_id_token()
(in
oauth2client.client
)
validate()
(in
CredentialsProperty
)
VARNAME
(in
apiclient.discovery
)
verify_signed_jwt_with_certs()
(in
oauth2client.crypt
)
validate()
(in
FlowProperty
)
Verifier
(in
oauth2client.crypt
)
VerifyJwtTokenError
(in
oauth2client.client
)
validate_file()
(in
oauth2client.locked_file
)
verify()
(in
Subscription
)
W
WebhookChannel
(in
apiclient.push
)
write()
(in
Headers
)
write_header()
(in
Channel
)
X
XSRF_MEMCACHE_ID
(in
oauth2client.appengine
)
xsrf_secret_key()
(in
oauth2client.appengine
)
xsrfutil
(in
oauth2client
)
_
__call__()
(in
RequestMockBuilder
)
__init__()
(in
_Storage
)
_lock()
(in
_MultiStore
)
__credits__
(in
apiclient.mimeparse
)
__init__()
(in
_MultiStore
)
_locked_json_read()
(in
_MultiStore
)
__email__
(in
apiclient.mimeparse
)
__metaclass__
(in
CredentialsField
)
_locked_json_write()
(in
_MultiStore
)
__getitem__()
(in
Headers
)
__metaclass__
(in
FlowField
)
_log_request()
(in
BaseModel
)
__getstate__()
(in
Resource
)
__repr__()
(in
BatchError
)
_log_response()
(in
BaseModel
)
__getstate__()
(in
OAuth2Credentials
)
__repr__()
(in
HttpError
)
_media_size_to_long()
(in
apiclient.discovery
)
__init__()
(in
Resource
)
__setitem__()
(in
Headers
)
_MultiStore
(in
oauth2client.multistore_file
)
__init__()
(in
BatchError
)
__setstate__()
(in
Resource
)
_multistores
(in
oauth2client.multistore_file
)
__init__()
(in
HttpError
)
__setstate__()
(in
OAuth2Credentials
)
_multistores_lock
(in
oauth2client.multistore_file
)
__init__()
(in
UnexpectedBodyError
)
_abstract()
(in
apiclient.model
)
_new_id()
(in
BatchHttpRequest
)
__init__()
(in
UnexpectedMethodError
)
_abstract()
(in
oauth2client.client
)
_normalize_key()
(in
Headers
)
__init__()
(in
BatchHttpRequest
)
_add_basic_methods()
(in
Resource
)
_Opener
(in
oauth2client.locked_file
)
__init__()
(in
HttpMock
)
_add_nested_resources()
(in
Resource
)
_parse_exchange_token_response()
(in
oauth2client.client
)
__init__()
(in
HttpMockSequence
)
_add_next_methods()
(in
Resource
)
_parse_state_value()
(in
oauth2client.appengine
)
__init__()
(in
HttpRequest
)
_add_query_parameter()
(in
apiclient.discovery
)
_posix_lockfile()
(in
_PosixOpener
)
__init__()
(in
HttpRequestMock
)
_build_query()
(in
BaseModel
)
_PosixOpener
(in
oauth2client.locked_file
)
__init__()
(in
MediaDownloadProgress
)
_build_state_value()
(in
oauth2client.appengine
)
_prettyPrintByName()
(in
Schemas
)
__init__()
(in
MediaFileUpload
)
_cached_http
(in
oauth2client.client
)
_prettyPrintSchema()
(in
Schemas
)
__init__()
(in
MediaInMemoryUpload
)
_cast()
(in
apiclient.discovery
)
_process_response()
(in
HttpRequest
)
__init__()
(in
MediaIoBaseDownload
)
_create_file_if_needed()
(in
Storage
)
_refresh()
(in
AppAssertionCredentials
)
__init__()
(in
MediaIoBaseUpload
)
_create_file_if_needed()
(in
_MultiStore
)
_refresh()
(in
AccessTokenCredentials
)
__init__()
(in
MediaUploadProgress
)
_create_flow()
(in
OAuth2Decorator
)
_refresh()
(in
OAuth2Credentials
)
__init__()
(in
RequestMockBuilder
)
_decode_credential_from_json()
(in
_MultiStore
)
_refresh()
(in
AppAssertionCredentials
)
__init__()
(in
_StreamSlice
)
_delete_credential()
(in
_MultiStore
)
_refresh_and_apply_credentials()
(in
BatchHttpRequest
)
__init__()
(in
JsonModel
)
_delete_entity()
(in
StorageByKeyName
)
_refresh_data_cache()
(in
_MultiStore
)
__init__()
(in
ProtocolBufferModel
)
_deserialize_response()
(in
BatchHttpRequest
)
_safe_html()
(in
oauth2client.appengine
)
__init__()
(in
Channel
)
_display_error_message()
(in
OAuth2Decorator
)
_SchemaToStruct
(in
apiclient.schema
)
__init__()
(in
Headers
)
_do_refresh_request()
(in
OAuth2Credentials
)
_serialize_request()
(in
BatchHttpRequest
)
__init__()
(in
Subscription
)
_execute()
(in
BatchHttpRequest
)
_set_dynamic_attr()
(in
Resource
)
__init__()
(in
WebhookChannel
)
_extract_id_token()
(in
oauth2client.client
)
_set_service_methods()
(in
Resource
)
__init__()
(in
Schemas
)
_FcntlOpener
(in
oauth2client.locked_file
)
_Storage
(in
_MultiStore
)
__init__()
(in
_SchemaToStruct
)
_filter_blank()
(in
apiclient.mimeparse
)
_StreamSlice
(in
apiclient.http
)
__init__()
(in
AppAssertionCredentials
)
_from_base_type()
(in
CredentialsNDBProperty
)
_to_base_type()
(in
CredentialsNDBProperty
)
__init__()
(in
OAuth2Decorator
)
_generate_assertion()
(in
AssertionCredentials
)
_to_json()
(in
MediaUpload
)
__init__()
(in
OAuth2DecoratorFromClientSecrets
)
_generate_assertion()
(in
SignedJwtAssertionCredentials
)
_to_json()
(in
Credentials
)
__init__()
(in
StorageByKeyName
)
_generate_new_xsrf_secret_key()
(in
oauth2client.appengine
)
_to_str_impl()
(in
_SchemaToStruct
)
__init__()
(in
AccessTokenCredentials
)
_generate_refresh_request_body()
(in
AssertionCredentials
)
_unlock()
(in
_MultiStore
)
__init__()
(in
AssertionCredentials
)
_generate_refresh_request_body()
(in
OAuth2Credentials
)
_update_credential()
(in
_MultiStore
)
__init__()
(in
MemoryCache
)
_generate_refresh_request_headers()
(in
OAuth2Credentials
)
_updateFromCredential()
(in
OAuth2Credentials
)
__init__()
(in
OAuth2Credentials
)
_get_credential()
(in
_MultiStore
)
_urlsafe_b64decode()
(in
oauth2client.client
)
__init__()
(in
OAuth2WebServerFlow
)
_get_entity()
(in
StorageByKeyName
)
_urlsafe_b64decode()
(in
oauth2client.crypt
)
__init__()
(in
SignedJwtAssertionCredentials
)
_get_kind()
(in
CredentialsNDBModel
)
_urlsafe_b64encode()
(in
oauth2client.crypt
)
__init__()
(in
CredentialsField
)
_get_kind()
(in
SiteXsrfSecretKeyNDB
)
_validate()
(in
CredentialsNDBProperty
)
__init__()
(in
FlowField
)
_get_reason()
(in
HttpError
)
_validate()
(in
FlowNDBProperty
)
__init__()
(in
Storage
)
_get_storage()
(in
_MultiStore
)
_validate_clientsecrets()
(in
oauth2client.clientsecrets
)
__init__()
(in
Storage
)
_header_to_id()
(in
BatchHttpRequest
)
_validate_file()
(in
Storage
)
__init__()
(in
AppAssertionCredentials
)
_id_to_header()
(in
BatchHttpRequest
)
_Win32Opener
(in
oauth2client.locked_file
)
__init__()
(in
Storage
)
_is_ndb()
(in
StorageByKeyName
)
_write()
(in
_MultiStore
)
__init__()
(in
LockedFile
)
_json_encode()
(in
oauth2client.crypt
)
__init__()
(in
_Opener
)
_loadfile()
(in
oauth2client.clientsecrets
)
Trees
Indices
Help
Generated by Epydoc 3.0.1 on Thu Jan 24 16:14:29 2013
http://epydoc.sourceforge.net


---
layout: post
title: Post June Meeting Update
categories:
- Meetings
tags: []
status: publish
type: post
published: true
meta:
_edit_last: '1'
---
We had a decent turnout at the last meeting, so thank you to everyone who came. We had a few presentations at the meeting.
We also had a presentation from Louis Michon, talking about an android application/tool he is interested in creating. The tool is called Convoy. It is a keypad replacement tool, designed to increase input efficiency, and make input easier. The concept is to remove all the vowels from the keyboard and only show the consonants. Convoy would then intelligently match the the partial word with the appropriate vowels to complete it.
Mr. Michon would like to hear from any interested developers or people seeking more information about the tool. You can contact him at l.michon@sympatico.ca.


{% extends "assopy/base.html" %} {% load assopy_tags %} {% block ASSOPY_MAIN_CONTENT %}
We have sent you an email with the instruction to activate your account


--- layout: post status: publish published: true title: BizTalk MVP + 1 author: display_name: Tomas Restrepo login: tomasr email<EMAIL_ADDRESS>url: http://winterdom.com/ author_login: tomasr author_email<EMAIL_ADDRESS>author_url: http://winterdom.com/ wordpress_id: 330 wordpress_url: http://winterdom.com/2007/10/biztalkmvp1 date: '2007-10-02 19:25:21 +0000' date_gmt: '2007-10-02 19:25:21 +0000' categories: - BizTalk - Personal tags: [] comments: - id: 239 author: SIVARAM author_email<EMAIL_ADDRESS>author_url: '' date: '2007-10-23 04:06:46 +0000' date_gmt: '2007-10-23 04:06:46 +0000' content: | Hi there , Congratulations for Achiving the BIZ MVP , I am starting getting in to BizTalk.. now I have one Question , Please answer How to Archive/(copy to another location) the Source file as it is , Before the biztalk picks up the file??? regds siva ram ---
I was just awarded for the second time as a BizTalk Server MVP :-). Pretty cool, and thanks to Fernando Garcia and all the great people in the MVP program and Marjan Kalantar and the rest of the BizTalk/CSD team for talking such good care of us!


@inproceedings{Paixao2013Scenario,
author = {Paixão, Matheus and Souza, Jerffeson},
title = {A Scenario-based Robust Model for the Next Release Problem},
booktitle = {Proceedings of the 15th Annual Conference on Genetic and Evolutionary Computation (GECCO'15)},
series = {GECCO '13},
year = {2013},
isbn = {978-1-4503-1963-8},
location = {Amsterdam, The Netherlands},
pages = {1469--1476},
numpages = {8},
url = {http://doi.acm.org/10.1145/2463372.2463547},
doi = {10.1145/2463372.2463547},
acmid = {2463547},
publisher = {ACM},
address = {New York, NY, USA},
keywords = {next release problem, robust optimization, search based software engineering},
}
@article{paixao2015robust,
title={A robust optimization approach to the next release problem in the presence of uncertainties},
author={Paixao, Matheus and Souza, Jerffeson},
journal={Journal of Systems and Software},
volume={103},
pages={281--295},
year={2015},
publisher={Elsevier}
}
@book{dorigo2004ant,
title={Ant Colony Optimization},
author={Marco Dorigo and Thomas Stützle},
isbn = {0262042193},
publisher = {Bradford Company},
address = {Scituate, Massachusetts, USA},
year={2004}
}
@inproceedings{Souza2011Ant,
pages = {142-157},
volume = {9656},
address = {Szeged, Csongrád, Hungary},
booktitle = {Proceedings of the 3rd International Symposium on Search Based Software Engineering (SSBSE'11)},
year = {2011},
title = {An Ant Colony Optimization Approach to the Software Release Planning with Dependent Requirements},
author = {Jerffeson Teixeira De Souza and Camila Loiola Brito Maia and Thiago do Nascimento Ferreira and Rafael Augusto Ferreira do Carmo and Márcia Maria Albuquerque Brasil},
}
@inbook{de2015applying,
title={Applying Evolutionary Many-Objective Optimization Algorithms to the Quality-Driven Web Service Composition Problem},
author={Arion de Campos Jr and Aurora Pozo and Silvia Regina Vergilio},
booktitle={Automated Enterprise Systems for Maximizing Business Performance},
pages={170-194},
volume={1},
series={},
isbn={9781466688414},
doi={10.4018/978-1-4666-8841-4.ch010},
editor={Petraq Papajorgji and François Pinet and Alaine Margarete Guimarães and Jason Papathanasiou},
year={2015},
publisher={IGI Global}
}
@mastersthesis{Ferreira2015Abordagens,
organization = { Academic Masters in Computer Science (MACC) },
type = { Masters Thesis },
url = { http://uece.br/macc/index.php/arquivos/doc_download/285- },
year = { 2015 },
school = { State University of Ceará (UECE) },
title = { Abordagens Interativas Usando Algoritmo de Otimização por Colônia de Formiga Para o Problema do Próximo Release },
author = { Thiago do Nascimento Ferreira },
}
@phdthesis{Ferreira2015Abordagens,
organization = { Department of Informatics },
type = { PhD Thesis },
year = { 2014 },
school = { Federal University of Paraná (UFPR) },
title = { Uma abordagem de otimização multiobjetivo para projeto arquitetural de linha de produto de software},
author = { Thelma Elita Colanzi},
}
@techreport{harman2009search,
title={Search based software engineering: A comprehensive analysis and review of trends techniques and applications},
author={Harman, Mark and Mansouri, S Afshin and Zhang, Yuanyuan},
number={TR-09-03},
institution={Department of Computer Science, King’s College London},
year={2009}
}
@inproceedings{ascari2009exploring,
title={Exploring machine learning techniques for fault localization},
author={Luciano C. Ascari and Lucilia Y. Araki and Aurora T. Pozo and Silvia R. Vergilio},
booktitle={Proceedings of the 10th Latin American Test Workshop (LATW'09)},
pages={1--6},
year={2009},
organization={IEEE}
}


A customer from TigerZ.nz send a mail to you for inquring the following propery, looking forward your quick reply.
@price
@address
@bed @bath
@message
Click To Reply
@userEmailPlease feel free to contact us for any questions with following mail:
Email<EMAIL_ADDRESS>TigerZThe best property search engine in new zealand.
TigerZ is the best search engine, which can help you research any propery in New Zealand, can help estimate your propery.
Enter To TigerZ


Possible threat against Highland High School in Palmdale being investigated
by ABC7.com staffLANCASTER, Calif. (KABC) -- The Los Angles County Sheriff's Department in Lancaster is investigating an alleged school shooting threat.
They said they received a tip from a concerned family member about a threat possibly made online Monday night about Highland High School in Palmdale.
Deputies are looking into the credibility of the threat.


An accomplished design leader with a proven track record in user experience design and front-end development.
Hi, I’m Wes 👋
Over the course of my career, I have been a design manager, UX researcher, product designer, information architect, user experience designer, interaction designer, front-end developer, art director, graphic designer, photographer, and teacher.
A common thread in all my work is a desire to understand underlying systems and structures. I gravitate toward research, setting up design processes, and helping teams to navigate complexity to define clear goals and user-centered outcomes.
Because the bulk of my career has been in design roles at nonprofits with limited resources, I excel at working within constraints to find pragmatic solutions. I am comfortable serving in multiple roles on a product team, and am often responsible for taking products from concept to completion by leading generative and evaluative research; defining the structure, behavior, and presentation of product features; and working with developers through agile development methods to build and deploy digital experiences.
I am currently a senior user experience designer at the Library of Congress, and am the author of NPR’s Guide To Hypothesis-Driven Design For Editorial Projects, which provides a detailed explanation of the approach I’ve used to design multiple award-winning stories.
Outside of work, I am a long-distance runner, documentary film nerd, and music-obsessed dad who occasionally shares thoughts about design and technology on Mastodon.
Download my resume (PDF)
Work highlights
Library of Congress
I started at the Library of Congress in January of 2020. I lead user experience research and design activities for a multiyear U.S. Copyright Office modernization initiative. In this role, I work as a lead UX designer on an agile scrum team responsible for the development of a new copyright registration system, and work with UX and software development colleagues on the management and maintenance of a design system used by all Enterprise Copyright System applications.
United States Holocaust Memorial Museum
I was a design and user experience manager at the United States Holocaust Memorial Museum from July 2018 to December 2019. During my time at the museum, I supported user research and digital strategy activities while managing a team of designers and software developers responsible for the creation of digital products, museum exhibitions, and multilingual educational resources.
Learn more about my work at the United States Holocaust Memorial Museum
NPR Visuals Team
The NPR Visuals team includes photographers, videographers, coders, and designers that collaborate with reporters and editors on digital projects in the NPR newsroom. I was a senior interaction designer on the team from August 2013 to July 2018. In this role, I was responsible for research, reporting, information architecture, visual design, front-end development, usability testing, and training that helped colleagues apply best practices from user experience design to the work of digital journalism.
NPR Digital Media
I was a senior interaction designer in the NPR Digital Media department from May 2012 to August 2013. At that time, the department included multiple product teams that were responsible for building and maintaining digital products for NPR. I worked on a cross-functional scrum team that was responsible for a responsive, mobile-friendly, redesign of NPR.org, a top news and culture website averaging 23 million unique monthly visitors in 2013.
Project Argo
Project Argo was a two-year project fundeded by the Corporation for Public Broadcasting and the Knight Foundation to strengthen local journalism by building a network of NPR member station blogs that focused on local interest topics including health, race and culture, and the environment. I was a lead designer and front-end developer on the project from February 2010 to May of 2012. As part of a four-person product team, I helped create a WordPress-based blogging platform and open source toolkit for beat reporting used by blogs that averaged more than 100,000 unique monthly visitors, and served as top online destinations for partner stations including KQED and KPBS.
USA TODAY
I was a senior web designer in the design department at USA TODAY from May 2008 to February 2010. In this role, I was responsible for information architecture, interaction design, visual design, and front-end development. My work included editorial projects and features for the 2008 Election, 2008 Summer Olympics, and dynamic sports templates for usatoday.com.
American Chemical Society
Founded in 1876 and chartered by the U.S. Congress, the American Chemical Society is one of the world’s largest scientific organizations, with membership of more than 151,000 in 140 countries. I was an art director in the society's web strategy and operations department from December 2006 to May 2008. In this role, I managed a team of designers responsible for the design and maintenance of organization's primary website, acs.org.
Published articles and interviews
- The Evolution Of NPR’s Picture Stories, Source
- How And Why Cross-Disciplinary Collaboration Rocks, Source
- Take our playbook: NPR’s guide to building immersive storytelling projects, NPR Training
- Faces Of NPR: Wes Lindamood, NPR Extra
- Mapping the Intersection of Two Cultures: Interactive Documentary and Digital Journalism, MIT Open Documentary Lab
Presentations and conferences
- 2019 Museums and the Web conference presenter on the subject of digital content strategy
- 2019 Pictures of the Year International Competition Multimedia Division judge
- 2018 AFI DOCS Documentary Film Festival Screening Committee
- 2017 I Annotate conference presenter on the subject of annotation workflow and design in journalism
- 2016 NPPA Best of Photojournalism: Multimedia judge
- 2016 ACP National College Media Convention presenter on the subject of design research for editorial projects
- 2015 SND Annual Workshop presenter on the subject of cross-disciplinary collaboration
- 2015 AFI DOCS Filmmaker Conference presenter on the subject of producing documentaries for the web
- 2014 Washington, D.C. Interactive Documentary Summit presenter on the subject of applying UX design thinking to interactive documentaries
- 2013 Woodstock Digital Media Festival presenter on the subject of web-native storytelling
- 2012 Copenhagen International Documentary Film Festival presenter on the subject of web-native storytelling
- 2011 WordCamp Boston presenter on the subject of user experience and WordPress plugin customization
- The Tech Side of Project Argo, Hacks/Hackers 2010
Awards
2017
- ONA Online Journalism Awards: Finalist for Stand at the Edge of Geologic Time, Excellence in Audio Digital Storytelling, Large
- Data Journalism Awards 2017: The Chartbeat award for the best use of data in a breaking news story, within first 36 hours for Fact Check And Analysis Of The First Presidential Debate
- SND38 Best of Digital Design: Award of Excellence for Fact Check And Analysis Of The First Presidential Debate, Experimental Design
2016
- SND37 Best of Digital Design: Silver for Wes Lindamood, Individual Portfolio of Work
- SND37 Best of Digital Design: Silver for Rain Forest Was Here, Features: Single-subject project
- SND37 Best of Digital Design: Award of Excellence for The Unthinkable, Features: Single-subject project
- SND37 Best of Digital Design: Award of Excellence for earbud.fm, Continuous use: section or topic
- SND37 Best of Digital Design: Award of Excellence for NPR Visuals, Portfolios: Organization
- White House News Photographers Association Multimedia Contest: Second Place for A Brother And Sister In Love, Feature Story
- World Press Photo Multimedia Contest: Second Place for Life After Death, Immersive Storytelling
- NPPA Best of Photojournalism Multimedia Contest: First Place for Look At This, Visual Column
- NPPA Best of Photojournalism Multimedia Contest: Second Place for A Brother And Sister In Love, Feature Story
- NPPA Quarter Three – Digital Visual Innovation: First Place for Stand At The Edge Of Geologic Time
- Pictures of the Year International Competition: Award of Excellence for Life After Death, Online News & Issue Story Editing
2015
- Alfred I. duPont-Columbia Awards: Winner for Planet Money Makes A T-Shirt
- ONA Online Journalism Awards: Finalist for Life After Death, Topical Reporting, Large
- ONA Online Journalism Awards: Finalist for Look At This, Excellence and Innovation in Visual Digital Storytelling, Large
- SND36 Best of Digital Design: Gold for Demolished, Features, Single-Subject Project
- SND36 Best of Digital Design: Silver for NPR Visuals, Organization Portfolio
- SND36 Best of Digital Design: Award of Excellence for Borderland, Use of Multimedia
- White House News Photographers Association Multimedia Contest: Second Place for Borderland, Best Multimedia Package
- White House News Photographers Association Multimedia Contest: Third Place for Buzkashi, Sports
2014
- Gerald Loeb Awards: Planet Money Makes A T-Shirt, Online
- International Documentary Association Awards: Planet Money Makes A T-Shirt, Best Short Form Series Award
- News & Documentary Emmy Awards: Planet Money Makes A T-Shirt, New Approaches: Documentaries
- ONA Online Journalism Awards: Planet Money Makes A T-Shirt, Excellence and Innovation in Visual Digital Storytelling, Large
- Overseas Press Club of America Awards: Borderland, Best Multimedia News Presentation
- Pictures of the Year International Competition: Planet Money Makes A T-Shirt, Documentary Project of the Year
- SND35 Best of Digital Design: Gold for Planet Money Makes A T-Shirt, Single-Story Project
- White House News Photographers Association Multimedia Contest: First Place for Planet Money Makes A T-Shirt, Innovation
2013
- World Press Photo Multimedia Contest: 3rd prize for Lost and Found, Interactive Documentary
- NPPA Best of Photojournalism Multimedia Contest Honorable Mention for Lost and Found, Multimedia Package
- Online Journalism Awards: Finalist for NPR.org, General Excellence in Online Journalism, Large
- Overseas Press Club of America Awards: Planet Money Makes A T-Shirt, Best Multimedia News Presentation
- Scripps Howard Awards: Planet Money Makes A T-Shirt, Digital Innovation
- SND34 Best of Digital Design: Silver for Lost and Found, Single-Story Project
- SND34 Best of Digital Design: Award of Excellence for Boomtown, Use of Multimedia
- SPJ Sigma Delta Chi Awards for Excellence in Journalism: Planet Money Makes A T-Shirt, Specialized Journalism Site
- White House News Photographers Association Multimedia Contest: Lost and Found, Best in Show


Component to show pagination in table footer
Import an Angular module for forms and
TuiTablePaginationModule
in the same module
where you want to use our component:
Add to the template:


Preview: Zenit St Petersburg vs. Lyon - prediction, team news, lineups
Lyon make the trip to Russia to take on Zenit St Petersburg knowing that victory will be enough to earn a spot in the Champions League last 16.
by Darren PlantHowever, sitting just three points adrift of the French outfit in Group G, Zenit are aware that a win will take them above Wednesday's opponents due to their head-to-head record.
Match preview
After recording four points from their opening two fixtures, Zenit appeared to be on course for the knockout stages, but the double-header with RB Leipzig did not work out as planned for Sergei Semak's side.
While a narrow defeat in Germany did not come as a massive surprise, Zenit failed to make home advantage count in the reverse fixture as they succumbed by a 2-0 scoreline.
That result has left the Russian giants with it all to do heading into the final two matches, although Semak will take some comfort from his team responding with two successive triumphs on the domestic front.
Narrow wins have been registered at each of Arsenal Tula and Rubin Kazan, successes which have left Zenit sitting five points clear at the summit of the top-flight standings.
As for Lyon, they appear to have finally settled down under Rudi Garcia, who has witnessed his new team claim four victories from their last five matches in all competitions.
Picking up maximum points in Ligue 1 against Metz, Toulouse and Nice have moved Lyon into ninth place in the table, just three points adrift of fourth position.
The other win came against Benfica in front of their own fans, and prevailing in that European encounter has put the French outfit one more positive result away from reaching the last 16.
The contributions of Memphis Depay and Moussa Dembele have proven key, with the pair scoring eight times between them over the course of the last five games.
Zenit St Petersburg form: WWDLWW
Lyon form: LWWWLW
Team News
Depay is regarded as a major doubt for Lyon as he continues his recovery from a thigh injury.
Houssem Aouar will also play no part for the French side, with Garcia potentially naming the same team which began the game against Nice.
Semak could opt against making any changes to his team after Zenit's hard-fought triumph at Kazan on Saturday.
Aleksey Sutormin and Aleksandr Erokhin are each pushing for starting roles should Semak tinker with his first XI.
Zenit St Petersburg possible starting lineup: Kerzhakov; Karavaev, Ivanovic, Rakitskiy, Santos; Kuzyaev, Barrios, Ozdoev, Driussi; Azmoun, Dzyuba
Lyon possible starting lineup: Lopes; Dubois, Andersen, Denayer, Marcal; Mendes, Tousart; Traore, Terrier, Reine-Adelaide; Dembele
We say: Zenit St Petersburg 2-1 Lyon
We are expecting a tense affair in Russia as both teams look for the result which could ultimately make the difference in two weeks time. However, home advantage could play its part here, and Zenit may capitalise to edge a tight contest.
body check tags ::


Mega Man Buttons
Responsive, single-element button styles based on the stage selection screens from Mega Man.
View on GitHub
Download the CSS
Examples
Mega Man
Mega Man II
Mega Man III
Mega Man IV
Mega Man V
Mega Man VI


You'll want to wait until WebAudio is loaded for both the current track and the next track before jumping to the end. Otherwise you may notice a slight gap. If both WebAudios are fully loaded you should hear no discernable gap most of the time.
Click to jump to end of track
Toggle Play/Pause
Both tracks are not loaded