redshift 1.3.15 → 1.3.16
Sign up to get free protection for your applications and to get access to all the features.
- data/RELEASE-NOTES +4 -0
- data/bench/diff-bench +2 -2
- data/bench/run +1 -1
- data/bench/strictness.rb +2 -2
- data/examples/ball.rb +1 -1
- data/examples/collide.rb +1 -1
- data/examples/delay.rb +1 -1
- data/examples/derivative.rb +1 -1
- data/examples/euler.rb +1 -1
- data/examples/lotka-volterra.rb +1 -1
- data/examples/pid.rb +1 -1
- data/examples/subsystem.rb +1 -1
- data/examples/thermostat.rb +1 -1
- data/lib/redshift/component.rb +2 -2
- data/lib/redshift/redshift.rb +2 -2
- data/lib/{accessible-index.rb → redshift/util/accessible-index.rb} +0 -0
- data/lib/redshift/util/argos.rb +214 -0
- data/lib/redshift/util/histogram.rb +155 -0
- data/lib/redshift/util/object-diff.rb +83 -0
- data/lib/redshift/util/plot.rb +386 -0
- data/lib/redshift/util/random.rb +261 -0
- data/lib/redshift/util/superhash.rb +454 -0
- data/lib/redshift/util/tracer.rb +113 -0
- data/lib/redshift/util/tracer/trace.rb +145 -0
- data/lib/redshift/util/tracer/var.rb +112 -0
- data/rakefile +2 -2
- data/test/test_flow_trans.rb +28 -25
- metadata +45 -7
- data/examples/persist-ball.rb +0 -68
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redshift
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 59
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 1
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 1.3.
|
9
|
+
- 16
|
10
|
+
version: 1.3.16
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Joel VanderWerf
|
@@ -89,7 +89,6 @@ files:
|
|
89
89
|
- examples/external-lib.rb
|
90
90
|
- examples/guard-debugger.rb
|
91
91
|
- examples/lotka-volterra.rb
|
92
|
-
- examples/persist-ball.rb
|
93
92
|
- examples/pid.rb
|
94
93
|
- examples/ports.rb
|
95
94
|
- examples/queue.rb
|
@@ -108,7 +107,6 @@ files:
|
|
108
107
|
- examples/sync.rb
|
109
108
|
- examples/thermostat.rb
|
110
109
|
- examples/zeno.rb
|
111
|
-
- lib/accessible-index.rb
|
112
110
|
- lib/redshift.rb
|
113
111
|
- lib/redshift/component.rb
|
114
112
|
- lib/redshift/meta.rb
|
@@ -131,6 +129,16 @@ files:
|
|
131
129
|
- lib/redshift/target/c/library.rb
|
132
130
|
- lib/redshift/target/c/world-gen.rb
|
133
131
|
- lib/redshift/target/spec.rb
|
132
|
+
- lib/redshift/util/accessible-index.rb
|
133
|
+
- lib/redshift/util/argos.rb
|
134
|
+
- lib/redshift/util/histogram.rb
|
135
|
+
- lib/redshift/util/object-diff.rb
|
136
|
+
- lib/redshift/util/plot.rb
|
137
|
+
- lib/redshift/util/random.rb
|
138
|
+
- lib/redshift/util/superhash.rb
|
139
|
+
- lib/redshift/util/tracer.rb
|
140
|
+
- lib/redshift/util/tracer/trace.rb
|
141
|
+
- lib/redshift/util/tracer/var.rb
|
134
142
|
- lib/redshift/world.rb
|
135
143
|
- rakefile
|
136
144
|
- test/test.rb
|
@@ -200,5 +208,35 @@ rubygems_version: 1.3.7
|
|
200
208
|
signing_key:
|
201
209
|
specification_version: 3
|
202
210
|
summary: Simulation of hybrid automata
|
203
|
-
test_files:
|
204
|
-
|
211
|
+
test_files:
|
212
|
+
- test/test_setup.rb
|
213
|
+
- test/test_inherit_link.rb
|
214
|
+
- test/test_discrete_isolated.rb
|
215
|
+
- test/test_connect_strict.rb
|
216
|
+
- test/test_buffer.rb
|
217
|
+
- test/test_world.rb
|
218
|
+
- test/test_flow_link.rb
|
219
|
+
- test/test_reset.rb
|
220
|
+
- test/test_inherit_flow.rb
|
221
|
+
- test/test_connect.rb
|
222
|
+
- test/test_inherit_state.rb
|
223
|
+
- test/test_flow_trans.rb
|
224
|
+
- test/test_delay.rb
|
225
|
+
- test/test_strict_reset_error.rb
|
226
|
+
- test/test_flow.rb
|
227
|
+
- test/test_derivative.rb
|
228
|
+
- test/test_inherit.rb
|
229
|
+
- test/test_inherit_transition.rb
|
230
|
+
- test/test_connect_parallel.rb
|
231
|
+
- test/test_queue_alone.rb
|
232
|
+
- test/test_exit.rb
|
233
|
+
- test/test_discrete.rb
|
234
|
+
- test/test_strictness_error.rb
|
235
|
+
- test/test_sync.rb
|
236
|
+
- test/test_queue.rb
|
237
|
+
- test/test_flow_sub.rb
|
238
|
+
- test/test_inherit_setup.rb
|
239
|
+
- test/test_numerics.rb
|
240
|
+
- test/test_strict_continuity.rb
|
241
|
+
- test/test_constant.rb
|
242
|
+
- test/test_inherit_event.rb
|
data/examples/persist-ball.rb
DELETED
@@ -1,68 +0,0 @@
|
|
1
|
-
require 'redshift'
|
2
|
-
require 'plot/plot'
|
3
|
-
require 'nr/random'
|
4
|
-
|
5
|
-
include RedShift
|
6
|
-
include NR::Random
|
7
|
-
include Math
|
8
|
-
|
9
|
-
|
10
|
-
class Ball < Component
|
11
|
-
|
12
|
-
flow {
|
13
|
-
euler " x' = @vx "
|
14
|
-
euler " y' = @vy "
|
15
|
-
}
|
16
|
-
|
17
|
-
defaults {
|
18
|
-
@x = 0
|
19
|
-
@y = 0
|
20
|
-
}
|
21
|
-
|
22
|
-
end
|
23
|
-
|
24
|
-
world = World.open "ball.world"
|
25
|
-
|
26
|
-
unless world
|
27
|
-
|
28
|
-
world = World.new {time_step 0.01}
|
29
|
-
|
30
|
-
seq = UniformSequence.new :min => 0, :max => 2*PI
|
31
|
-
|
32
|
-
5.times do
|
33
|
-
world.create(Ball) {
|
34
|
-
angle = seq.next
|
35
|
-
@vx = cos angle
|
36
|
-
@vy = sin angle
|
37
|
-
}
|
38
|
-
end
|
39
|
-
|
40
|
-
end
|
41
|
-
|
42
|
-
balls = world.select { |c| c.type == Ball }
|
43
|
-
|
44
|
-
data = {}
|
45
|
-
for b in balls
|
46
|
-
data[b] = [[b.x, b.y]]
|
47
|
-
end
|
48
|
-
|
49
|
-
50.times do
|
50
|
-
world.run
|
51
|
-
for b in balls
|
52
|
-
data[b] << [b.x, b.y]
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
Plot.new ('gnuplot') {
|
57
|
-
|
58
|
-
command 'set xrange [ -2 : 2 ]; set yrange [ -2 : 2 ]'
|
59
|
-
|
60
|
-
for b in balls
|
61
|
-
add data[b], "title \"#{balls.index(b)}\" with lines"
|
62
|
-
end
|
63
|
-
|
64
|
-
show
|
65
|
-
pause 5
|
66
|
-
}
|
67
|
-
|
68
|
-
world.save "ball.world"
|