>From 96699e5a3e9b7b7f585245e8232bb2cbfed75c62 Mon Sep 17 00:00:00 2001 From: Alick Zhao Date: Fri, 2 Nov 2012 19:41:47 +0800 Subject: [PATCH] fix noise seed in channel_model This is a followup of the fix in commit 0d6871b3. The channel_model block is a heir-block which contains a noise source inside. The noise source need the seed to be negative to generate gaussian or uniform noise. --- gnuradio-core/src/lib/hier/gr_channel_model.h | 2 +- gnuradio-core/src/lib/hier/gr_channel_model.i | 2 +- .../examples/narrowband/benchmark_add_channel.py | 2 +- gr-digital/examples/ofdm/benchmark_add_channel.py | 2 +- gr-filter/include/filter/channel_model.h | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gnuradio-core/src/lib/hier/gr_channel_model.h b/gnuradio-core/src/lib/hier/gr_channel_model.h index 3f289e3..f0b31b1 100644 --- a/gnuradio-core/src/lib/hier/gr_channel_model.h +++ b/gnuradio-core/src/lib/hier/gr_channel_model.h @@ -36,7 +36,7 @@ GR_CORE_API gr_channel_model_sptr gr_make_channel_model(double noise_voltage=0.0 double frequency_offset=0.0, double epsilon=1.0, const std::vector &taps=std::vector(1, 1), - double noise_seed=3021); + double noise_seed=0); /*! * \brief channel simulator diff --git a/gnuradio-core/src/lib/hier/gr_channel_model.i b/gnuradio-core/src/lib/hier/gr_channel_model.i index 24a9388..9aa6ebf 100644 --- a/gnuradio-core/src/lib/hier/gr_channel_model.i +++ b/gnuradio-core/src/lib/hier/gr_channel_model.i @@ -26,7 +26,7 @@ gr_channel_model_sptr gr_make_channel_model(double noise_voltage=0.0, double frequency_offset=0.0, double epsilon=1.0, const std::vector &taps=std::vector(1, 1), - double noise_seed=3021); + double noise_seed=0); class gr_channel_model : public gr_hier_block2 { diff --git a/gr-digital/examples/narrowband/benchmark_add_channel.py b/gr-digital/examples/narrowband/benchmark_add_channel.py index 841833a..c69ee60 100755 --- a/gr-digital/examples/narrowband/benchmark_add_channel.py +++ b/gr-digital/examples/narrowband/benchmark_add_channel.py @@ -44,7 +44,7 @@ class my_top_block(gr.top_block): self.src = gr.file_source(gr.sizeof_gr_complex, ifile) #self.throttle = gr.throttle(gr.sizeof_gr_complex, options.sample_rate) self.channel = gr.channel_model(noise_voltage, frequency_offset, - time_offset, noise_seed=random.randint(0,100000)) + time_offset, noise_seed=-random.randint(0,100000)) self.phase = gr.multiply_const_cc(complex(math.cos(phase_offset), math.sin(phase_offset))) self.snk = gr.file_sink(gr.sizeof_gr_complex, ofile) diff --git a/gr-digital/examples/ofdm/benchmark_add_channel.py b/gr-digital/examples/ofdm/benchmark_add_channel.py index 01776d2..cbdd990 100755 --- a/gr-digital/examples/ofdm/benchmark_add_channel.py +++ b/gr-digital/examples/ofdm/benchmark_add_channel.py @@ -46,7 +46,7 @@ class my_top_block(gr.top_block): self.src = gr.file_source(gr.sizeof_gr_complex, ifile) #self.throttle = gr.throttle(gr.sizeof_gr_complex, options.sample_rate) self.channel = gr.channel_model(noise_voltage, frequency_offset, - time_offset, noise_seed=random.randint(0,100000)) + time_offset, noise_seed=-random.randint(0,100000)) self.phase = gr.multiply_const_cc(complex(math.cos(phase_offset), math.sin(phase_offset))) self.snk = gr.file_sink(gr.sizeof_gr_complex, ofile) diff --git a/gr-filter/include/filter/channel_model.h b/gr-filter/include/filter/channel_model.h index 2e808de..49c0818 100644 --- a/gr-filter/include/filter/channel_model.h +++ b/gr-filter/include/filter/channel_model.h @@ -68,7 +68,7 @@ namespace gr { double frequency_offset=0.0, double epsilon=1.0, const std::vector &taps=std::vector(1,1), - double noise_seed=3021); + double noise_seed=0); virtual void set_noise_voltage(double noise_voltage) = 0; virtual void set_frequency_offset(double frequency_offset) = 0; -- 1.7.7.6