altar.models.seismic.cuda.cudaKinematicG

Module Contents

Classes

class altar.models.seismic.cuda.cudaKinematicG.cudaKinematicG(name, locator, **kwds)

Bases: altar.cuda.models.cudaBayesian.cudaBayesian

KinematicG model with cuda

dataobs
default
doc = the observed data
green
doc = the name of the file with the Green functions
Nas
doc = number of patches along strike direction
Ndd
doc = number of patches along dip direction
Nmesh
doc = number of mesh points for each patch for fastsweeping
dsp
doc = the distance unit for each patch, in km
Nt
doc = number of time intervals for kinematic process
Npt
doc = number of mesh points for each time interval for fastsweeping
dt
doc = the time unit for each time interval (in s)
t0s
doc = the start time for each patch
cmodel
GF
gGF
gDprediction
cublas_handle
NGbparameters
gt0s
initialize(self, application)

Initialize the state of the model given a {problem} specification

forwardModelBatched(self, theta, gf, prediction, batch, observation=None)

KinematicG forward model in batch: cast Mb(x,y,t) :param theta: matrix (samples, parameters), sampling parameters :param gf: matrix (2*Ndd*Nas*Nt, observations), kinematicG green’s function :param prediction: matrix (samples, observations), the predicted data or residual between predicted and observed data :param batch: integer, the number of samples to be computed batch<=samples :param observation: matrix (samples, observations), duplicates of observed data :return: prediction as predicted data(observation=None) or residual (observation is provided)

forwardModel(self, theta, gf, prediction, observation=None)

KinematicG forward model for single sample: cast Mb(x,y,t) :param theta: vector (parameters), sampling parameters :param gf: matrix (2*Ndd*Nas*Nt, observations), kinematicG green’s function :param prediction: vector (observations), the predicted data or residual between predicted and observed data :param observation: vector (observations), duplicates of observed data :return: prediction as predicted data(observation=None) or residual (observation is provided)

castSlipsOfTime(self, theta, Mb=None)

Compute Mb (slips of patches over time) from a given set of parameters :param theta: a vector arranged in [slip (strike and dip), risetime, …] :param Mb: :return: Mb

linearGM(self, gf, Mb, prediction=None, observation=None)

Perform prediction = Gb * Mb :param Gb: :param Mb: :param prediction: :return: prediction

cuEvalLikelihood(self, theta, likelihood, batch)

Compute the likelihood from my forward problem

mergeCovarianceToGF(self)

merge data covariance (cd) with green function

forwardProblem(self, application, theta=None)

Perform the forward modeling with given {theta}