def test_ml_solve_laplace2d_SF(): A, b, x_exact = example_laplace2d(900) param = ilupp.iluplusplus_precond_parameter() param.PREPROCESSING.set_SPARSE_FIRST() param.threshold = 1e-2 x, info = ilupp.solve(A, b, atol=1e-8, rtol=1e-8, params=param, info=True) print('Convergence info:', info) assert np.allclose(x_exact, x)
def test_ml_solve_laplace2d_MWM_sPQ(): A, b, x_exact = example_laplace2d(900) param = ilupp.iluplusplus_precond_parameter() param.PREPROCESSING.set_MAX_WEIGHTED_MATCHING_ORDERING_SYM_PQ() param.threshold = 1e-2 x, info = ilupp.solve(A, b, atol=1e-8, rtol=1e-8, params=param, info=True) print('Convergence info:', info) assert np.allclose(x_exact, x)
def test_ml_solve_random(): A, b, x_exact = example_random(50) x = ilupp.solve(A, b, atol=1e-8) print('Error:', np.linalg.norm(x - x_exact)) assert np.allclose(x, x_exact)