diff --git a/SimPEG/forward/DCProblem/DCProblem.py b/SimPEG/forward/DCProblem/DCProblem.py index fa557ea5..cf33d86c 100644 --- a/SimPEG/forward/DCProblem/DCProblem.py +++ b/SimPEG/forward/DCProblem/DCProblem.py @@ -32,6 +32,20 @@ class DCProblem(Problem): return phi def J(self, m, v, u=None, solve=None): + """ + :param numpy.array m: model + :param numpy.array v: vector to multiply + :param numpy.array u: fields + :rtype: numpy.array + :return: Jv + + .. math:: + c(m,u) = A(m)u - q = G\\text{sdiag}(M(mT(m)))Du - q = 0 + + \\nabla_u (A(m)u - q) = A(m) + + \\nabla_m (A(m)u - q) = G\\text{sdiag}(Du)\\nabla_m (M(mT(m))) + """ P = self.P D = self.mesh.faceDiv G = self.mesh.cellGrad diff --git a/SimPEG/forward/DCProblem/__init__.py b/SimPEG/forward/DCProblem/__init__.py new file mode 100644 index 00000000..a868cf80 --- /dev/null +++ b/SimPEG/forward/DCProblem/__init__.py @@ -0,0 +1,2 @@ +from DCProblem import * +from DCutils import * diff --git a/SimPEG/forward/__init__.py b/SimPEG/forward/__init__.py index 3c4d3728..fe849d41 100644 --- a/SimPEG/forward/__init__.py +++ b/SimPEG/forward/__init__.py @@ -1 +1,2 @@ from Problem import * +import DCProblem diff --git a/docs/api_Problem.rst b/docs/api_Problem.rst index d43616d9..83250f3e 100644 --- a/docs/api_Problem.rst +++ b/docs/api_Problem.rst @@ -1,8 +1,26 @@ .. _api_Problem: + + Problem ******* .. automodule:: SimPEG.forward.Problem :members: :undoc-members: + + +DCProblem +********* + +.. automodule:: SimPEG.forward.DCProblem.DCProblem + :members: + :undoc-members: + + +DCutils +******* + +.. automodule:: SimPEG.forward.DCProblem.DCutils + :members: + :undoc-members: