2021-11-10 14:41:04 +00:00
|
|
|
function initial_particle_grid_pos(i, j; grid_box_width, l)
|
|
|
|
dim1_pos(x) = (x - 0.5) * grid_box_width - l
|
|
|
|
|
2021-11-18 18:42:11 +00:00
|
|
|
return SVector(dim1_pos(i), dim1_pos(j))
|
2021-11-10 14:41:04 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
function generate_particles(grid_n, grid_box_width, l)
|
|
|
|
particles = Vector{Particle}(undef, grid_n^2)
|
|
|
|
|
|
|
|
particle_pos_in_grid_dim(i) = (i - 0.5) * grid_box_width - l
|
|
|
|
|
|
|
|
id = 1
|
|
|
|
|
|
|
|
for i in 1:grid_n
|
|
|
|
for j in 1:grid_n
|
|
|
|
particles[id] = Particle(;
|
|
|
|
id=id,
|
|
|
|
c=initial_particle_grid_pos(i, j; grid_box_width=grid_box_width, l=l),
|
|
|
|
φ=rand(Uniform(-π, π)),
|
|
|
|
)
|
|
|
|
|
|
|
|
id += 1
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
return particles
|
|
|
|
end
|