Sha256: aae978e01c15631d4d3b1be0e70e4de48d258966b0c19d558fad5558342fcb6d
Contents?: true
Size: 1.97 KB
Versions: 1
Compression:
Stored size: 1.97 KB
Contents
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') describe SPCore::Signal do describe '#remove_frequencies' do before :each do generator = SignalGenerator.new(:sample_rate => 2000, :size => 256) @original = generator.make_signal([40.0, 160.0]) @ideal_modified = generator.make_signal([160.0]) end it 'should produce the expected modified signal (with almost identical energy and RMS)' do modified = @original.remove_frequencies(0.0..80.0) begin actual = modified.energy ideal = @ideal_modified.energy error = (actual - ideal).abs / ideal error.should be_within(0.05).of(0.0) end begin actual = modified.rms ideal = @ideal_modified.rms error = (actual - ideal).abs / ideal error.should be_within(0.05).of(0.0) end #Plotter.new().plot_signals( # #"original" => @original, # "ideal modified" => @ideal_modified, # "actual modified" => modified #) end end describe '#keep_frequencies' do before :each do generator = SignalGenerator.new(:sample_rate => 2000, :size => 256) @original = generator.make_signal([40.0, 160.0]) @ideal_modified = generator.make_signal([160.0]) end it 'should produce the expected modified signal (with almost identical energy and RMS)' do modified = @original.keep_frequencies(80.0..240.0) begin actual = modified.energy ideal = @ideal_modified.energy error = (actual - ideal).abs / ideal error.should be_within(0.05).of(0.0) end begin actual = modified.rms ideal = @ideal_modified.rms error = (actual - ideal).abs / ideal error.should be_within(0.05).of(0.0) end #Plotter.new().plot_signals( # #"original" => @original, # "ideal modified" => @ideal_modified, # "actual modified" => modified #) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
spcore-0.1.9 | spec/analysis/signal_spec.rb |