本文整理汇总了Python中qr_mumps.solver.QRMUMPSSolver.solve方法的典型用法代码示例。如果您正苦于以下问题:Python QRMUMPSSolver.solve方法的具体用法?Python QRMUMPSSolver.solve怎么用?Python QRMUMPSSolver.solve使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qr_mumps.solver.QRMUMPSSolver
的用法示例。
在下文中一共展示了QRMUMPSSolver.solve方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_dense_solve_single_rhs
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
def test_dense_solve_single_rhs(self):
solver = QRMUMPSSolver(self.A, verbose=False)
solver.factorize()
e = np.ones(self.n, dtype=np.complex64)
rhs = self.A * e
x = solver.solve(rhs)
assert np.allclose(x, e, 1e-5)
示例2: test_dense_solve_single_rhs
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
def test_dense_solve_single_rhs(self):
solver = QRMUMPSSolver((self.m, self.n, self.arow, self.acol, self.aval), verbose=False)
solver.factorize()
e = np.ones(self.n, dtype=np.float64)
rhs = np.dot(self.A, e)
x = solver.solve(rhs)
assert np.allclose(np.dot(self.A,x), rhs, 1e-5)
示例3: test_dense_solve_multiple_rhs
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
def test_dense_solve_multiple_rhs(self):
solver = QRMUMPSSolver((self.m, self.n, self.arow, self.acol, self.aval), verbose=False)
solver.factorize()
B = np.ones([self.n, 3], dtype=np.complex64)
B[: ,1] = 2 * B[:,1]
B[: ,2] = 3 * B[:,2]
rhs = np.dot(self.A,B)
x = solver.solve(rhs)
assert np.allclose(x, B, 1e-5)
示例4: test_dense_solve_multiple_rhs
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
def test_dense_solve_multiple_rhs(self):
solver = QRMUMPSSolver(self.A, verbose=False)
solver.factorize()
B = np.ones([self.m, 3], dtype=np.float64)
B[:, 1] = 2 * B[:, 1]
B[:, 2] = 3 * B[:, 2]
x = solver.solve(B)
assert np.allclose(self.A * x[:, 0], B[:, 0], 1e-5)
assert np.allclose(self.A * x[:, 1], B[:, 1], 1e-5)
assert np.allclose(self.A * x[:, 2], B[:, 2], 1e-5)
示例5: LLSparseMatrix
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
A = LLSparseMatrix(mm_filename=sys.argv[1], itype=types.INT32_T, dtype=types.COMPLEX128_T)
(n, m) = A.shape
print "A:"
print A
e = np.ones(n, dtype=np.complex128)
rhs = A * e
solver = QRMUMPSSolver(A, verbose=True)
solver.analyze()
solver.factorize()
x = solver.solve(rhs)
print "x should be 1-column vector:"
print x
print "=" * 80
rhs = np.ones([n, 3], dtype=np.complex128)
rhs[:, 1] = 2 * rhs[:, 1]
rhs[:, 2] = 3 * rhs[:, 2]
x = solver.solve(rhs)
print "x:"
print x
print x[:, 0]
示例6: QRMUMPSSolver
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
print "A:"
print A
solver = QRMUMPSSolver((m, n, arow, acol, aval), verbose=False)
solver.analyze()
solver.factorize()
print "\n\nSolving Ax = b where b is a vector"
e = np.ones(n, dtype=np.float64)
b = np.dot(A, e)
print "b:"
print b
x = solver.solve(b)
np.testing.assert_almost_equal(x, e)
print "x: it should be a vector of ones"
print x
print "\n" + "=" * 80 + "\n"
print "Solving Ax = B where B is a matrix"
E = np.ones([n, 3], dtype=np.float64)
E[:, 1] = 2 * E[:, 1]
E[:, 2] = 3 * E[:, 2]
B = np.dot(A, E)
print "B:"
print B
示例7: xrange
# 需要导入模块: from qr_mumps.solver import QRMUMPSSolver [as 别名]
# 或者: from qr_mumps.solver.QRMUMPSSolver import solve [as 别名]
for i in xrange(0,10):
print " "+"-"*76
print " i = %d"%i
print " "+"-"*76
solver = QRMUMPSSolver((m, n, arow, acol, aval), verbose=False)
solver.factorize('scotch')
print solver.factorization_statistics
e = (i+1)*np.ones(n, dtype=np.float64)
rhs = np.dot(A, e)
print " rhs:"
print rhs
x = solver.solve(rhs)
print " x:"
print x
print "-"*80
print "solving with multiple rhs"
print "-"*80
B = np.ones([n, 3], dtype=np.float64)
B[:, 1] = 2 * B[:, 1]
B[:, 2] = 3 * B[:, 2]
rhs = np.dot(A, B)
print "rhs:"
print rhs