- bug fix in parametrized block when active cells are used - need a shape

- add a pole receiver for DC
This commit is contained in:
Lindsey Heagy
2016-05-29 13:40:21 -07:00
parent e8e022fcc6
commit 9a7225c9f6
2 changed files with 17 additions and 4 deletions
+8 -1
View File
@@ -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):
+9 -3
View File
@@ -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: