Skip to content

Commit 5b5fa66

Browse files
committed
formatting
1 parent c204d45 commit 5b5fa66

1 file changed

Lines changed: 28 additions & 26 deletions

File tree

bin/solve.jl

Lines changed: 28 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,28 @@ using LinearAlgebra
66
using KrylovSubspaceMethods
77

88
function parse_commandline()
9-
s = ArgParseSettings(description="Solve a linear system Ax = b using iterative methods.")
9+
s = ArgParseSettings(
10+
description = "Solve a linear system Ax = b using iterative methods.",
11+
)
1012

1113
@add_arg_table! s begin
1214
"matrix"
13-
help = "Path to .mtx matrix file"
14-
required = true
15+
help = "Path to .mtx matrix file"
16+
required = true
1517
"--method", "-m"
16-
help = "cg, cgw, minres, gmres"
17-
default = "cg"
18+
help = "cg, cgw, minres, gmres"
19+
default = "cg"
1820
"--tol"
19-
help = "Convergence tolerance"
20-
arg_type = Float64
21-
default = 1e-6
21+
help = "Convergence tolerance"
22+
arg_type = Float64
23+
default = 1e-6
2224
"--maxiter"
23-
help = "Maximum iterations"
24-
arg_type = Int
25-
default = 1000
25+
help = "Maximum iterations"
26+
arg_type = Int
27+
default = 1000
2628
"--rhs"
27-
help = "Path to b (one number per line). If empty: synthetic b with x_exact=1"
28-
default = ""
29+
help = "Path to b (one number per line). If empty: synthetic b with x_exact=1"
30+
default = ""
2931
end
3032

3133
return parse_args(s)
@@ -44,14 +46,14 @@ end
4446
function main()
4547
args = parse_commandline()
4648

47-
println("Reading matrix: $(args["matrix"])")
49+
println("Reading matrix: $(args["matrix"])")
4850
A = MatrixMarket.mmread(args["matrix"])
4951
n = size(A, 1)
5052

5153
x_exact, b = load_rhs(args["rhs"], n)
5254
if b === nothing
5355
b = A * x_exact
54-
println("No b specified — synthetic system with x_exact = 1 generated.")
56+
println("No b specified — synthetic system with x_exact = 1 generated.")
5557
end
5658

5759
x0 = zeros(n)
@@ -60,29 +62,29 @@ function main()
6062
tol = args["tol"]
6163
maxiter = args["maxiter"]
6264

63-
println("Solving with method: $method (tol=$tol, maxiter=$maxiter)")
65+
println("Solving with method: $method (tol=$tol, maxiter=$maxiter)")
6466

6567
result = if method == "cg"
66-
cg(A, b, x0; tol=tol, maxiter=maxiter)
68+
cg(A, b, x0; tol = tol, maxiter = maxiter)
6769
elseif method == "cgw"
68-
cgw(A, b, x0; tol=tol, maxiter=maxiter)
70+
cgw(A, b, x0; tol = tol, maxiter = maxiter)
6971
elseif method == "minres"
70-
minres(A, b, x0; tol=tol, maxiter=maxiter)
72+
minres(A, b, x0; tol = tol, maxiter = maxiter)
7173
elseif method == "gmres"
72-
gmres(A, b, x0; tol=tol, maxiter=maxiter)
74+
gmres(A, b, x0; tol = tol, maxiter = maxiter)
7375
else
74-
error("Unknown method: $method")
76+
error("Unknown method: $method")
7577
end
7678

7779
println()
78-
println("Converged: $(result.converged)")
79-
println("Iterations: $(result.iterations)")
80-
println("Final residual: $(result.residuals[end])")
81-
println("Final solution vector x: $(result.x)")
80+
println("Converged: $(result.converged)")
81+
println("Iterations: $(result.iterations)")
82+
println("Final residual: $(result.residuals[end])")
83+
println("Final solution vector x: $(result.x)")
8284

8385
if x_exact !== nothing
8486
err = norm(result.x - x_exact)
85-
println("Error ‖x - x_exact‖: $err")
87+
println("Error ‖x - x_exact‖: $err")
8688
end
8789
end
8890

0 commit comments

Comments
 (0)