r4068 - in trunk/bse: . tests
- From: timj svn gnome org
- To: svn-commits-list gnome org
- Subject: r4068 - in trunk/bse: . tests
- Date: Sat, 4 Nov 2006 22:24:59 -0500 (EST)
Author: timj
Date: 2006-11-04 22:24:19 -0500 (Sat, 04 Nov 2006)
New Revision: 4068
Modified:
trunk/bse/ChangeLog
trunk/bse/tests/filtertest.cc
Log:
Sun Nov 5 04:23:07 2006 Tim Janik <timj gtk org>
* tests/filtertest.cc (random_filter_tests): extended fixed orders to 32
and random orders to 64. cut the requested order for band filters in
half, because it's doubled upon design.
Modified: trunk/bse/ChangeLog
===================================================================
--- trunk/bse/ChangeLog 2006-11-05 02:22:31 UTC (rev 4067)
+++ trunk/bse/ChangeLog 2006-11-05 03:24:19 UTC (rev 4068)
@@ -1,3 +1,9 @@
+Sun Nov 5 04:23:07 2006 Tim Janik <timj gtk org>
+
+ * tests/filtertest.cc (random_filter_tests): extended fixed orders to 32
+ and random orders to 64. cut the requested order for band filters in
+ half, because it's doubled upon design.
+
Sat Nov 4 20:09:33 2006 Tim Janik <timj gtk org>
* bsefilter-ellf.c: removed ellf-behavior special casing. switched
Modified: trunk/bse/tests/filtertest.cc
===================================================================
--- trunk/bse/tests/filtertest.cc 2006-11-05 02:22:31 UTC (rev 4067)
+++ trunk/bse/tests/filtertest.cc 2006-11-05 03:24:19 UTC (rev 4068)
@@ -558,20 +558,20 @@
};
const int n_sampling_frequencies = sizeof (sampling_frequencies) / sizeof (sampling_frequencies[0]);
const int filter_orders[] = {
- 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* used for random orders */
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 19, 30, 31, 32,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, /* used for random orders */
};
int n_orders = sizeof (filter_orders) / sizeof (filter_orders[0]);
int oix, max_order_index = 0;
for (oix = 0; oix < n_orders; oix++)
max_order_index = filter_orders[oix] ? oix : max_order_index;
- int rand_order_width = (32 - filter_orders[max_order_index]);
+ int rand_order_width = 64 - filter_orders[max_order_index] + 1;
double pbe1;
FilterSetup filters[100000] = { { 0, }, };
- uint filter_index;
+ uint filter_index, skip_count = 6;
if (sfi_init_settings().test_quick)
- n_orders = 5;
+ n_orders = 9;
#define MAKE_FILTER(frequest, filter_type) do \
{ \
@@ -599,13 +599,14 @@
/* band filters */
if (pbe1 + 0.1 < 0.48)
{
+ frequest.order = (frequest.order + 1) / 2;
frequest.passband_edge2 = g_random_double_range (pbe1 + 0.1, 0.48) * frequest.sampling_frequency;
MAKE_FILTER (frequest, BSE_IIR_FILTER_BAND_PASS);
MAKE_FILTER (frequest, BSE_IIR_FILTER_BAND_STOP);
}
}
/* design and test filters */
- generic_filter_tests ("Random Butterworth", filter_index, filters, 3);
+ generic_filter_tests ("Random Butterworth", filter_index, filters, skip_count);
/* generate filter requirements */
filter_index = 0;
@@ -624,6 +625,7 @@
/* band filters */
if (pbe1 + 0.1 < 0.48)
{
+ frequest.order = (frequest.order + 1) / 2;
frequest.passband_edge2 = g_random_double_range (pbe1 + 0.1, 0.48) * frequest.sampling_frequency;
frequest.passband_ripple_db = g_random_double_range (0.0001, 0.001) * pow (9, g_random_int() % 5); /* 0.0001 .. 6.6 */
MAKE_FILTER (frequest, BSE_IIR_FILTER_BAND_PASS);
@@ -632,7 +634,7 @@
}
}
/* design and test filters */
- generic_filter_tests ("Random Chebyshev1", filter_index, filters, 3);
+ generic_filter_tests ("Random Chebyshev1", filter_index, filters, skip_count);
/* generate filter requirements */
filter_index = 0;
@@ -654,6 +656,7 @@
/* band filters */
if (pbe1 + 0.1 < 0.48)
{
+ frequest.order = (frequest.order + 1) / 2;
frequest.passband_edge2 = g_random_double_range (pbe1 + 0.1, 0.48) * frequest.sampling_frequency;
frequest.passband_ripple_db = g_random_double_range (0.0001, 0.001) * pow (9, g_random_int() % 5); /* 0.0001 .. 6.6 */
frequest.stopband_db = g_random_double_range (-9, -150) - 2 * frequest.order;
@@ -664,7 +667,7 @@
}
}
/* design and test filters */
- generic_filter_tests ("Random Elliptic (dB)", filter_index, filters, 3);
+ generic_filter_tests ("Random Elliptic (dB)", filter_index, filters, skip_count);
/* generate filter requirements */
filter_index = 0;
@@ -686,6 +689,7 @@
/* band filters */
if (pbe1 + 0.1 < 0.48)
{
+ frequest.order = (frequest.order + 1) / 2;
frequest.passband_edge2 = g_random_double_range (pbe1 + 0.1, 0.48) * frequest.sampling_frequency;
frequest.passband_ripple_db = g_random_double_range (0.0001, 0.001) * pow (9, g_random_int() % 5); /* 0.0001 .. 6.6 */
frequest.stopband_edge = g_random_double_range (MAX (frequest.passband_edge, frequest.passband_edge2) + 0.01, 0.491 * frequest.sampling_frequency);
@@ -698,7 +702,7 @@
}
}
/* design and test filters */
- generic_filter_tests ("Random Elliptic (Hz)", filter_index, filters, 3);
+ generic_filter_tests ("Random Elliptic (Hz)", filter_index, filters, skip_count);
#undef MAKE_FILTER
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]