diff --git a/SimPEG/EM/Static/DC/RxDC.py b/SimPEG/EM/Static/DC/RxDC.py index d2ec6098..84c777d4 100644 --- a/SimPEG/EM/Static/DC/RxDC.py +++ b/SimPEG/EM/Static/DC/RxDC.py @@ -43,7 +43,14 @@ class BaseRx(SimPEG.Survey.BaseRx): elif adjoint: return P.T*v -# DC.Rx.Dipole(locs) +# DC.Rx.Pole(locs) +class Pole(BaseRx): + + def __init__(self, locs, rxType = 'phi', **kwargs): + BaseRx.__init__(self, locs, rxType) + + +# DC.Rx.Dipole(locsM, locsN) class Dipole(BaseRx): def __init__(self, locsM, locsN, rxType = 'phi', **kwargs): diff --git a/SimPEG/Maps.py b/SimPEG/Maps.py index a7f5a0ab..b45cba03 100644 --- a/SimPEG/Maps.py +++ b/SimPEG/Maps.py @@ -1145,13 +1145,13 @@ class ParametrizedBlockInLayer(IdentityMap): if self.slope is None: self.slope = self.slope_fact / np.hstack(self.mesh.h).min() - self.x = [self.mesh.gridCC[:,0] if self.indActive is None else self.mesh.gridCC[indActive,0]][0] + self.x = [self.mesh.gridCC[:,0] if self.indActive is None else self.mesh.gridCC[self.indActive,0]][0] if self.mesh.dim > 1: - self.y = [self.mesh.gridCC[:,1] if self.indActive is None else self.mesh.gridCC[indActive,1]][0] + self.y = [self.mesh.gridCC[:,1] if self.indActive is None else self.mesh.gridCC[self.indActive,1]][0] if self.mesh.dim > 2: - self.z = [self.mesh.gridCC[:,2] if self.indActive is None else self.mesh.gridCC[indActive,2]][0] + self.z = [self.mesh.gridCC[:,2] if self.indActive is None else self.mesh.gridCC[self.indActive,2]][0] @property def nP(self): @@ -1160,6 +1160,12 @@ class ParametrizedBlockInLayer(IdentityMap): elif self.mesh.dim == 3: return 9 + @property + def shape(self): + if self.indActive is not None: + return (sum(self.indActive), self.nP) + return (self.nC, self.nP) + def _validate_m(self, m): # TODO: more sanity checks here if self.mesh.dim == 2: