mirror of
https://github.com/wassname/simpeg.git
synced 2026-09-09 11:34:26 +08:00
PropMap Bug fix with unmapped derivs.
This commit is contained in:
+4
-1
@@ -68,7 +68,10 @@ class Property(object):
|
|||||||
|
|
||||||
if mapping is None and prop.propertyLink is not None:
|
if mapping is None and prop.propertyLink is not None:
|
||||||
linkName, linkMapClass = prop.propertyLink
|
linkName, linkMapClass = prop.propertyLink
|
||||||
linkMap = linkMapClass(None) * getattr(self, '%sMap'%linkName)
|
linkedMap = getattr(self, '%sMap'%linkName)
|
||||||
|
if linkedMap is None:
|
||||||
|
return None
|
||||||
|
linkMap = linkMapClass(None) * linkedMap
|
||||||
m = getattr(self, '%s'%linkName)
|
m = getattr(self, '%s'%linkName)
|
||||||
return linkMap.deriv( m )
|
return linkMap.deriv( m )
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,8 @@ class MyPropMap(Maps.PropMap):
|
|||||||
class MyReciprocalPropMap(Maps.PropMap):
|
class MyReciprocalPropMap(Maps.PropMap):
|
||||||
sigma = Maps.Property("Electrical Conductivity", defaultInvProp=True, propertyLink=('rho', Maps.ReciprocalMap))
|
sigma = Maps.Property("Electrical Conductivity", defaultInvProp=True, propertyLink=('rho', Maps.ReciprocalMap))
|
||||||
rho = Maps.Property("Electrical Resistivity", propertyLink=('sigma', Maps.ReciprocalMap))
|
rho = Maps.Property("Electrical Resistivity", propertyLink=('sigma', Maps.ReciprocalMap))
|
||||||
mu = Maps.Property("Mu", defaultVal=mu_0)
|
mu = Maps.Property("Mu", defaultVal=mu_0, propertyLink=('mui', Maps.ReciprocalMap))
|
||||||
|
mui = Maps.Property("Mu", defaultVal=1./mu_0, propertyLink=('mu', Maps.ReciprocalMap))
|
||||||
|
|
||||||
|
|
||||||
class TestPropMaps(unittest.TestCase):
|
class TestPropMaps(unittest.TestCase):
|
||||||
@@ -102,6 +103,11 @@ class TestPropMaps(unittest.TestCase):
|
|||||||
assert pm.sigmaDeriv is not None
|
assert pm.sigmaDeriv is not None
|
||||||
assert pm.rhoDeriv is not None
|
assert pm.rhoDeriv is not None
|
||||||
|
|
||||||
|
assert pm.muMap is None
|
||||||
|
assert pm.muDeriv is None
|
||||||
|
assert pm.muiMap is None
|
||||||
|
assert pm.muiDeriv is None
|
||||||
|
|
||||||
PM = MyReciprocalPropMap([('rho', iMap)])
|
PM = MyReciprocalPropMap([('rho', iMap)])
|
||||||
pm = PM(np.r_[1,2.,3])
|
pm = PM(np.r_[1,2.,3])
|
||||||
# print pm.sigma
|
# print pm.sigma
|
||||||
|
|||||||
Reference in New Issue
Block a user