public static void airy_cbi_values_test()
    //****************************************************************************80
    //
    //  Purpose:
    //
    //    AIRY_CBI_VALUES_TEST tests AIRY_CBI_VALUES.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    13 April 2007
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        Complex cbi = new();
        Complex x   = new();

        Console.WriteLine("");
        Console.WriteLine("AIRY_CBI_VALUES_TEST:");
        Console.WriteLine("  AIRY_CBI_VALUES stores values of ");
        Console.WriteLine("  the Airy functions Bi(X) for complex argument.");
        Console.WriteLine("");
        Console.WriteLine("                X                     Bi");
        Console.WriteLine("");
        int n_data = 0;

        for (;;)
        {
            Airy.airy_cbi_values(ref n_data, ref x, ref cbi);
            if (n_data == 0)
            {
                break;
            }

            Console.WriteLine("  "
                              + x.Real.ToString("0.######").PadLeft(14) + "  "
                              + x.Imaginary.ToString("0.######").PadLeft(14) + "  "
                              + cbi.Real.ToString("0.################").PadLeft(24) + "  "
                              + cbi.Imaginary.ToString("0.################").PadLeft(24) + "");
        }
    }
    public static void airy_ai_values_test()
    //****************************************************************************80
    //
    //  Purpose:
    //
    //    AIRY_AI_VALUES_TEST tests AIRY_AI_VALUES.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    20 January 2007
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        double ai = 0;
        double x  = 0;

        Console.WriteLine("");
        Console.WriteLine("AIRY_AI_VALUES_TEST:");
        Console.WriteLine("  AIRY_AI_VALUES stores values of ");
        Console.WriteLine("  the Airy functions Ai(X).");
        Console.WriteLine("");
        Console.WriteLine("                X                     Ai(X)");
        Console.WriteLine("");
        int n_data = 0;

        for (;;)
        {
            Airy.airy_ai_values(ref n_data, ref x, ref ai);
            if (n_data == 0)
            {
                break;
            }

            Console.WriteLine("  "
                              + x.ToString("0.################").PadLeft(24) + "  "
                              + ai.ToString("0.################").PadLeft(24) + "");
        }
    }
    public static void airy_bi_prime_values_test()
    //****************************************************************************80
    //
    //  Purpose:
    //
    //    AIRY_BI_PRIME_VALUES_TEST tests AIRY_BI_PRIME_VALUES.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    20 January 2007
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        double bip = 0;
        double x   = 0;

        Console.WriteLine("");
        Console.WriteLine("AIRY_BI_PRIME_VALUES_TEST:");
        Console.WriteLine("  AIRY_BI_PRIME_VALUES stores values of ");
        Console.WriteLine("  the derivative of Airy function Bi'(X).");
        Console.WriteLine("");
        Console.WriteLine("                X                     Bi'");
        Console.WriteLine("");
        int n_data = 0;

        for (;;)
        {
            Airy.airy_bi_prime_values(ref n_data, ref x, ref bip);
            if (n_data == 0)
            {
                break;
            }

            Console.WriteLine("  "
                              + x.ToString("0.################").PadLeft(24) + "  "
                              + bip.ToString("0.################").PadLeft(24) + "");
        }
    }