@@ -16,66 +16,65 @@ struct BenchmarkCase
16
16
description:: String
17
17
end
18
18
19
- # Helper functions to reduce code duplication
20
- function make_ws_graph (N, k, β= 0.0 ; rng= StableRNG (1 ))
21
- watts_strogatz (N, k, β; rng)
22
- end
23
-
24
- function make_mixed_vertices (v1, v2, N; rng= StableRNG (1 ))
25
- vertex = [v1, v2]
26
- vertex[shuffle (rng, vcat ([1 for _ in 1 : N÷ 2 ], [2 for _ in 1 : N÷ 2 ]))]
27
- end
28
-
29
19
# Standard benchmark cases
30
- const BENCHMARK_CASES = [
20
+ BENCHMARK_CASES = [
31
21
BenchmarkCase (
32
22
" diffusion_static_edge" ,
33
23
N -> begin
34
- g = make_ws_graph (N, N ÷ 2 )
24
+ g = watts_strogatz (N, N ÷ 2 , 0.0 ; rng = StableRNG ( 1 ) )
35
25
Network (g, diffusion_vertex (), diffusion_edge ())
36
26
end ,
27
+ # [10,20],
37
28
[100 , 300 , 1000 , 3000 ],
38
29
" Diffusion network with static edges"
39
30
),
40
31
41
32
BenchmarkCase (
42
33
" diffusion_ode_edge" ,
43
34
N -> begin
44
- g = make_ws_graph (N, N ÷ 2 )
35
+ g = watts_strogatz (N, N ÷ 2 , 0.0 ; rng = StableRNG ( 1 ) )
45
36
Network (g, diffusion_vertex (), diffusion_dedge ())
46
37
end ,
38
+ # [10,20],
47
39
[100 , 300 , 1000 , 3000 ],
48
40
" Diffusion network with ODE edges"
49
41
),
50
42
51
43
BenchmarkCase (
52
44
" kuramoto_homogeneous" ,
53
45
N -> begin
54
- g = make_ws_graph (N, 3 , 0.8 )
46
+ g = watts_strogatz (N, 3 , 0.8 ; rng = StableRNG ( 1 ) )
55
47
Network (g, kuramoto_vertex_2d (), static_kuramoto_edge ())
56
48
end ,
49
+ # [10,20],
57
50
[100 , 1_000 , 10_000 , 100_000 ],
58
51
" Homogeneous Kuramoto oscillators"
59
52
),
60
53
61
54
BenchmarkCase (
62
55
" kuramoto_heterogeneous" ,
63
56
N -> begin
64
- g = make_ws_graph (N, 3 , 0.8 )
65
- vertices = make_mixed_vertices (kuramoto_vertex_1d (), kuramoto_vertex_2d (), N)
57
+ g = watts_strogatz (N, 3 , 0.8 ; rng= StableRNG (1 ))
58
+ rng = StableRNG (1 )
59
+ vtypes = [kuramoto_vertex_1d (), kuramoto_vertex_2d ()]
60
+ vertices = vtypes[shuffle (rng, vcat ([1 for _ in 1 : N÷ 2 ], [2 for _ in 1 : N÷ 2 ]))]
66
61
Network (g, vertices, static_kuramoto_edge ())
67
62
end ,
63
+ # [10,20],
68
64
[100 , 1_000 , 10_000 , 100_000 ],
69
65
" Heterogeneous Kuramoto oscillators"
70
66
),
71
67
72
68
BenchmarkCase (
73
69
" powergrid" ,
74
70
N -> begin
75
- g = make_ws_graph (N, 3 , 0.8 )
76
- vertices = make_mixed_vertices (pqnode (), generator (), N)
71
+ g = watts_strogatz (N, 3 , 0.8 ; rng= StableRNG (1 ))
72
+ rng = StableRNG (1 )
73
+ vtypes = [pqnode (), generator ()]
74
+ vertices = vtypes[shuffle (rng, vcat ([1 for _ in 1 : N÷ 2 ], [2 for _ in 1 : N÷ 2 ]))]
77
75
Network (g, vertices, piline ())
78
76
end ,
77
+ # [10,20],
79
78
[100 , 1_000 , 10_000 , 100_000 ],
80
79
" Power grid network with PQ nodes and generators"
81
80
)
0 commit comments