mirror of
https://github.com/wassname/simpeg.git
synced 2026-07-23 13:10:51 +08:00
update solver utils.
This commit is contained in:
@@ -42,10 +42,9 @@ def DSolverWrap(fun, factorize=True, checkAccuracy=True, accuracyTol=1e-6):
|
||||
return X
|
||||
|
||||
def clean(self):
|
||||
if hasattr(self.solver, 'clean'):
|
||||
if factorize and hasattr(self.solver, 'clean'):
|
||||
return self.solver.clean()
|
||||
|
||||
|
||||
def __mul__(self, val):
|
||||
if type(val) is np.ndarray:
|
||||
return self.solve(val)
|
||||
@@ -87,9 +86,13 @@ def ISolverWrap(fun, checkAccuracy=True, accuracyTol=1e-5):
|
||||
_checkAccuracy(self.A, b, X, accuracyTol)
|
||||
return X
|
||||
|
||||
def clean(self):
|
||||
if hasattr(self.solver, 'clean'):
|
||||
return self.solver.clean()
|
||||
|
||||
def __mul__(self, val):
|
||||
if type(val) is np.ndarray:
|
||||
return self.solve(val)
|
||||
raise TypeError('Can only multiply by a numpy array.')
|
||||
|
||||
return type(fun.__name__, (object,), {"__init__": __init__, "solve": solve, "__mul__": __mul__})
|
||||
return type(fun.__name__, (object,), {"__init__": __init__, "solve": solve, "clean": clean, "__mul__": __mul__})
|
||||
|
||||
Reference in New Issue
Block a user