No flags found
Use flags to group coverage reports by test type, project and/or folders.
Then setup custom commit statuses and notifications for each flag.
e.g., #unittest #integration
#production #enterprise
#frontend #backend
46ab8fe
... +0 ...
29d10dc
Use flags to group coverage reports by test type, project and/or folders.
Then setup custom commit statuses and notifications for each flag.
e.g., #unittest #integration
#production #enterprise
#frontend #backend
27 | 27 | plt = plot_terrain_ac_particles(0,4,particles) |
|
28 | 28 | savefig(plt,"test_terrain.png") |
|
29 | 29 | """ |
|
30 | - | function plot_terrain_ac_particles(xpos,ypos,particles) |
|
30 | + | function plot_terrain_ac(xpos,ypos) |
|
31 | 31 | #@show "terrain plotter being called" |
|
32 | - | X = xpos[1] - 0.6 .+ [-1, -0.1, -0.09, 0.3, 0.7, 0.8, 0.7, 0.3, -0.09, -0.1, -1]; |
|
32 | + | X = xpos[1] - 0.6 .+ [-1,-0.1,-0.09,0.3,0.7,0.8,0.7, 0.3, -0.09, -0.1, -1]; |
|
33 | 33 | Y = ypos .+ [-0.05, -0.05, -0.4, -0.05, -0.05,0, 0.05, 0.05, 0.4, 0.05, 0.05]; |
|
34 | 34 | ||
35 | 35 | # Here are the mountains |
40 | 40 | # Call the ground function on the x locations that are deemed as mountain above |
|
41 | 41 | Mountains = map.(ground,plotVectorMountains) |
|
42 | 42 | ||
43 | - | plt = plot(plotVectorMountains,Mountains,leg=false) # Plot the terrain |
|
44 | - | plot!(X,Y,leg=false) # Plot the aircraft |
|
45 | - | scatter!(particles,4*ones(length(particles)),leg=false) |
|
43 | + | plt = plot(plotVectorMountains,Mountains,label="Terrain") # Plot the terrain |
|
44 | + | plot!(X,Y,label="Aircraft") # Plot the aircraft |
|
45 | + | ||
46 | 46 | return plt |
|
47 | 47 | end |
|
48 | 48 |
51 | 51 | Take input array of plots and convert to gif animation |
|
52 | 52 | """ |
|
53 | 53 | function write_particles_gif(plots) |
|
54 | - | @show "Making gif" |
|
54 | + | print("\n Making gif\n") |
|
55 | 55 | frames = Frames(MIME("image/png"), fps=5) |
|
56 | 56 | for plt in plots |
|
57 | - | print(".") |
|
58 | 57 | push!(frames, plt) |
|
59 | 58 | end |
|
60 | - | write("fjord.gif", frames) |
|
59 | + | write("../img/Fjord/26June/fjord.mp4", frames) |
|
61 | 60 | return nothing |
|
62 | 61 | end # End of the reel gif writing function |
|
63 | 62 |
68 | 67 | dt = 0.1 # time step |
|
69 | 68 | ||
70 | 69 | ypos = 4 # Height of the aircraft stays constant |
|
71 | - | meas_stdev = 0.1 |
|
70 | + | meas_stdev = 2 |
|
72 | 71 | A = [1] |
|
73 | 72 | B = [0] |
|
74 | 73 | f(x, u, rng) = x #+ [1.0] # Investigating fixed state |
77 | 76 | ||
78 | 77 | model = ParticleFilterModel{Vector{Float64}}(f, g) |
|
79 | 78 | ||
80 | - | N = 1000 # Rpb: Was 1000 before |
|
79 | + | N = 50 # Rpb: Was 1000 before |
|
81 | 80 | ||
82 | 81 | filter_sir = SIRParticleFilter(model, N) # This was originally present |
|
83 | 82 | filter_cem = CEMParticleFilter(model, N) # This is the cem filter |
|
84 | 83 | ||
85 | - | b = ParticleCollection([[80.0*rand(1)[1]-40.0] for i in 1:N]) |
|
84 | + | b_sir = ParticleCollection([[80.0*rand(1)[1]-40.0] for i in 1:N]) |
|
85 | + | b_cem = b_sir |
|
86 | 86 | ||
87 | 87 | x = [-25.0] |
|
88 | 88 | ||
89 | 89 | plots = [] |
|
90 | - | plt = plot_terrain_ac_particles(x,ypos,particles(b)) |
|
91 | - | push!(plots,plt) |
|
90 | + | ||
91 | + | plt = plot_terrain_ac(x,ypos) |
|
92 | + | scatter!([p[1] for p in particles(b_sir)],[ypos for p in particles(b_sir)],label="SIR",xlim=(-30,30),color=:blue) |
|
93 | + | ||
94 | + | scatter!([p[1] for p in particles(b_cem)],[ypos for p in particles(b_cem)],label="CEM",xlim=(-30,30),color=:green) |
|
95 | + | ||
96 | + | # scatter!(particles(b_sir),4*ones(length(particles(b_sir))),label="SIR",xlim=(-30,30),color=:blue) |
|
97 | + | # scatter!(particles(b_cem),4*ones(length(particles(b_cem))),label="CEM",xlim=(-30,30),color=:green) |
|
98 | + | push!(plots,plt) |
|
92 | 99 | for i in 1:50 #RpB: was 100 before |
|
93 | - | print(".") |
|
94 | - | u = 1 |
|
95 | - | x = f(x, u, rng) |
|
96 | - | #@show x |
|
97 | - | y = h(x, rng) |
|
98 | - | #@show y |
|
99 | - | b = update(filter_cem, b, u, y) |
|
100 | - | ||
101 | - | #@show particles(b) |
|
100 | + | #print(".") |
|
101 | + | u = 1 |
|
102 | + | x = f(x, u, rng) |
|
103 | + | y = h(x, rng) |
|
104 | + | b_sir = update(filter_sir, b_sir, u, y) |
|
105 | + | ||
102 | 106 | # RpB: This is the update_cem |
|
103 | - | #b_cem = update(filter_cem,b,u,y) |
|
104 | - | #@show particles(b_cem) |
|
105 | - | plt = plot_terrain_ac_particles(x,ypos,particles(b)) |
|
106 | - | push!(plots, plt) |
|
107 | + | b_cem = update(filter_cem,b_cem,u,y) |
|
108 | + | ||
109 | + | plt = plot_terrain_ac(x,ypos) |
|
110 | + | ||
111 | + | scatter!([p[1] for p in particles(b_sir)],[ypos for p in particles(b_sir)],label="SIR",xlim=(-30,30),color=:blue) |
|
112 | + | ||
113 | + | scatter!([p[1] for p in particles(b_cem)],[ypos for p in particles(b_cem)],label="CEM",xlim=(-30,30),color=:green) |
|
114 | + | ||
115 | + | # scatter!(particles(b_sir),4*ones(length(particles(b_sir))),label="SIR",xlim=(-30,30),color=:blue) |
|
116 | + | # scatter!(particles(b_cem),4*ones(length(particles(b_cem))),label="CEM",xlim=(-30,30),color=:green) |
|
117 | + | ||
118 | + | push!(plots, plt) |
|
107 | 119 | end |
|
108 | 120 | return plots |
|
109 | 121 | end # End of the runexp function |
|
110 | 122 | ||
111 | 123 | ||
112 | - | ||
113 | 124 | @show "Sandbox says: Calling runexp" |
|
114 | 125 | plots = runexp() |
|
115 | 126 |
Files | Coverage |
---|---|
src | -0.14% 20.76% |
Project Totals (16 files) | 20.76% |
29d10dc
46ab8fe