Skip to content

Commit

Permalink
WIP
Browse files Browse the repository at this point in the history
  • Loading branch information
vchuravy committed Feb 9, 2023
1 parent d6f99e0 commit 197f7b3
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 5 deletions.
6 changes: 5 additions & 1 deletion src/Config.jl
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,11 @@ end
Config(content::String) = create!(Config(), content)

function create!(config::Config, d::Dict)
str = sprint(JSON.print, d)
str = ""
for (key, val) in d
str *= string(key, "=", val, ", ")
end
@show str
create!(config, str)
end
Config(d::Dict) = create!(Config(), d)
Expand Down
16 changes: 12 additions & 4 deletions test/test_solver.jl
Original file line number Diff line number Diff line change
Expand Up @@ -47,15 +47,22 @@ using AMGX: Config, Resources, AMGXVector, AMGXMatrix, Solver, dDDI, dFFI
AMGX.setup!(s, M)
AMGX.solve!(x, s, b; zero_inital_guess=true)
@test AMGX.get_status(s) == AMGX.DIVERGED
@test AMGX.get_iterations_number(s) == 0
@test AMGX.get_iteration_residual(s) > 1.0

# Need a proper way to test for build version
if AMGX.build_info()[1] != "2.2.0.132-opensource"
@test AMGX.get_iterations_number(s) == 0
@test AMGX.get_iteration_residual(s) > 1.0
else
@test AMGX.get_iterations_number(s) == -1
@test_throws AMGX.AMGXException("Incorrect parameters for amgx call.") AMGX.get_iteration_residual(s)
end

close(M)
@test_throws ErrorException AMGX.solve!(x, s, b; zero_inital_guess=true)
end

@scope @testset "get_iterations_number" begin
c = @! Config(Dict("monitor_residual" => 1, "tolerance" => 1e-14, "store_res_history" => 1))
c = @! Config(Dict("monitor_residual" => 1, "tolerance" => "1e-14", "store_res_history" => 1))
r = @! Resources(c)
M = @! AMGXMatrix(r, mode)
x = @! AMGXVector(r, mode)
Expand All @@ -67,8 +74,9 @@ using AMGX: Config, Resources, AMGXVector, AMGXMatrix, Solver, dDDI, dFFI
AMGX.upload!(b, [1.0, 2.0, 4.0])
AMGX.setup!(s, M)
AMGX.solve!(x, s, b)
@show niter = AMGX.get_iterations_number(s)
@test AMGX.get_iteration_residual(s) < 1e-14
niter = AMGX.get_iterations_number(s)
@show niter = AMGX.get_iterations_number(s)
@test AMGX.get_iteration_residual(s, niter) == AMGX.get_iteration_residual(s)
end
end
Expand Down

0 comments on commit 197f7b3

Please sign in to comment.