private static void test01() //****************************************************************************80 // // Purpose: // // TEST01 tests VAN_DER_CORPUT. // // Licensing: // // This code is distributed under the GNU LGPL license. // // Modified: // // 09 August 2016 // // Author: // // John Burkardt // { int i; Console.WriteLine(""); Console.WriteLine("TEST01"); Console.WriteLine(" VAN_DER_CORPUT computes the elements of a"); Console.WriteLine(" van der Corput sequence."); Console.WriteLine(" Each call produces the next value. By default,"); Console.WriteLine(" the base is 2, and the sequence starts at element 1."); Console.WriteLine(""); Console.WriteLine(" In this test, we call VAN_DER_CORPUT several times."); Console.WriteLine(""); Console.WriteLine(" Seed van der Corput"); Console.WriteLine(""); for (i = 1; i <= 10; i++) { int seed = VanDerCorput.van_der_corput_seed_get(); double r = VanDerCorput.van_der_corput(); Console.WriteLine(seed.ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r.ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } }
private static void test045() //****************************************************************************80 // // Purpose: // // TEST045 tests VAN_DER_CORPUT, VAN_DER_CORPUT_SEED_GET, VAN_DER_CORPUT_SEED_SET. // // Licensing: // // This code is distributed under the GNU LGPL license. // // Modified: // // 09 August 2016 // // Author: // // John Burkardt // { int i; double r; Console.WriteLine(""); Console.WriteLine("TEST045"); Console.WriteLine(" VAN_DER_CORPUT_SEED_GET gets the current seed."); Console.WriteLine(" VAN_DER_CORPUT_SEED_SET sets the current seed."); Console.WriteLine(""); Console.WriteLine(" The van der Corput base is usually a prime, but this is"); Console.WriteLine(" not required."); Console.WriteLine(""); Console.WriteLine(" In this test, we compute a van der Corput sequence"); Console.WriteLine(" starting with the default seed, then check the seed,"); Console.WriteLine(" reset the seed, and recompute the sequence."); int base_ = 2; VanDerCorput.van_der_corput_base_set(base_); int seed = 0; VanDerCorput.van_der_corput_seed_set(seed); Console.WriteLine(""); Console.WriteLine(" All computations will use base " + base_ + "."); Console.WriteLine(""); seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" Set SEED = " + seed + ""); Console.WriteLine(""); Console.WriteLine(" Seed van der Corput"); Console.WriteLine(""); for (i = 1; i <= 10; i++) { seed = VanDerCorput.van_der_corput_seed_get(); r = VanDerCorput.van_der_corput(); Console.WriteLine(seed.ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r.ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" Current seed is " + seed + ""); Console.WriteLine(""); seed = 100; VanDerCorput.van_der_corput_seed_set(seed); Console.WriteLine(""); Console.WriteLine(" Set SEED = " + seed + ""); Console.WriteLine(""); Console.WriteLine(" Seed van der Corput"); Console.WriteLine(""); for (i = 1; i <= 10; i++) { seed = VanDerCorput.van_der_corput_seed_get(); r = VanDerCorput.van_der_corput(); Console.WriteLine(seed.ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r.ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" Current seed is " + seed + ""); Console.WriteLine(""); seed = 3; VanDerCorput.van_der_corput_seed_set(seed); Console.WriteLine(""); Console.WriteLine(" Reset seed to " + seed + ""); Console.WriteLine(""); Console.WriteLine(" Seed van der Corput"); Console.WriteLine(""); for (i = 1; i <= 10; i++) { seed = VanDerCorput.van_der_corput_seed_get(); r = VanDerCorput.van_der_corput(); Console.WriteLine(seed.ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r.ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } }
private static void test03() //****************************************************************************80 // // Purpose: // // TEST03 tests VAN_DER_CORPUT_SEQUENCE, VAN_DER_CORPUT_SEED_GET, VAN_DER_CORPUT_SEED_SET. // // Licensing: // // This code is distributed under the GNU LGPL license. // // Modified: // // 09 August 2016 // // Author: // // John Burkardt // { const int NMAX = 10; int i; double[] r = new double[NMAX]; Console.WriteLine(""); Console.WriteLine("TEST03"); Console.WriteLine(" VAN_DER_CORPUT_SEED_SET specifies the next element of"); Console.WriteLine(" the van der Corput sequence to compute."); Console.WriteLine(" VAN_DER_CORPUT_SEED_GET reports the next element of the"); Console.WriteLine(" van der Corput sequence that will be computed."); Console.WriteLine(""); Console.WriteLine(" By default, the sequence starts at element 1."); Console.WriteLine(""); Console.WriteLine(" In this test, we demonstrate computing elements"); Console.WriteLine(" affects the seed, and how resetting the seed determines"); Console.WriteLine(" the next element computed."); Console.WriteLine(""); Console.WriteLine(" We start at element 0 and compute 10 elements."); Console.WriteLine(""); int seed = 0; VanDerCorput.van_der_corput_seed_set(seed); int n = NMAX; VanDerCorput.van_der_corput_sequence(n, ref r); for (i = 0; i < n; i++) { Console.WriteLine((seed + i).ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r[i].ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" The current seed is " + seed + ""); Console.WriteLine(""); Console.WriteLine(" We jump back to element 6 and compute 10 elements."); Console.WriteLine(""); seed = 6; VanDerCorput.van_der_corput_seed_set(seed); n = NMAX; VanDerCorput.van_der_corput_sequence(n, ref r); for (i = 0; i < n; i++) { Console.WriteLine((seed + i).ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r[i].ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" The current seed is " + seed + ""); Console.WriteLine(""); Console.WriteLine(" We restart at element 0 and compute 6 elements."); Console.WriteLine(""); seed = 0; VanDerCorput.van_der_corput_seed_set(seed); n = 6; VanDerCorput.van_der_corput_sequence(n, ref r); for (i = 0; i < n; i++) { Console.WriteLine((seed + i).ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r[i].ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" The current seed is " + seed + ""); Console.WriteLine(""); Console.WriteLine(" We jump to element 100 and compute 5 elements."); Console.WriteLine(""); seed = 100; VanDerCorput.van_der_corput_seed_set(seed); n = 5; VanDerCorput.van_der_corput_sequence(n, ref r); for (i = 0; i < n; i++) { Console.WriteLine((seed + i).ToString(CultureInfo.InvariantCulture).PadLeft(6) + " " + r[i].ToString(CultureInfo.InvariantCulture).PadLeft(10) + ""); } seed = VanDerCorput.van_der_corput_seed_get(); Console.WriteLine(""); Console.WriteLine(" The current seed is " + seed + ""); }