|\^/| Maple 12 (IBM INTEL LINUX) ._|\| |/|_. Copyright (c) Maplesoft, a division of Waterloo Maple Inc. 2008 \ MAPLE / All rights reserved. Maple is a trademark of <____ ____> Waterloo Maple Inc. | Type ? for help. > #BEGIN OUTFILE1 > # Begin Function number 3 > check_sign := proc( x0 ,xf) > local ret; > if (xf > x0) then # if number 1 > ret := 1.0; > else > ret := -1.0; > fi;# end if 1; > ret;; > end; check_sign := proc(x0, xf) local ret; if x0 < xf then ret := 1.0 else ret := -1.0 end if; ret end proc > # End Function number 3 > # Begin Function number 4 > est_size_answer := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local min_size; > min_size := glob_large_float; > if (omniabs(array_y[1]) < min_size) then # if number 1 > min_size := omniabs(array_y[1]); > omniout_float(ALWAYS,"min_size",32,min_size,32,""); > fi;# end if 1; > if (min_size < 1.0) then # if number 1 > min_size := 1.0; > omniout_float(ALWAYS,"min_size",32,min_size,32,""); > fi;# end if 1; > min_size; > end; est_size_answer := proc() local min_size; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; min_size := glob_large_float; if omniabs(array_y[1]) < min_size then min_size := omniabs(array_y[1]); omniout_float(ALWAYS, "min_size", 32, min_size, 32, "") end if; if min_size < 1.0 then min_size := 1.0; omniout_float(ALWAYS, "min_size", 32, min_size, 32, "") end if; min_size end proc > # End Function number 4 > # Begin Function number 5 > test_suggested_h := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local max_value3,hn_div_ho,hn_div_ho_2,hn_div_ho_3,value3,no_terms; > max_value3 := 0.0; > no_terms := glob_max_terms; > hn_div_ho := 0.5; > hn_div_ho_2 := 0.25; > hn_div_ho_3 := 0.125; > omniout_float(ALWAYS,"hn_div_ho",32,hn_div_ho,32,""); > omniout_float(ALWAYS,"hn_div_ho_2",32,hn_div_ho_2,32,""); > omniout_float(ALWAYS,"hn_div_ho_3",32,hn_div_ho_3,32,""); > value3 := omniabs(array_y[no_terms-3] + array_y[no_terms - 2] * hn_div_ho + array_y[no_terms - 1] * hn_div_ho_2 + array_y[no_terms] * hn_div_ho_3); > if (value3 > max_value3) then # if number 1 > max_value3 := value3; > omniout_float(ALWAYS,"value3",32,value3,32,""); > fi;# end if 1; > omniout_float(ALWAYS,"max_value3",32,max_value3,32,""); > max_value3; > end; test_suggested_h := proc() local max_value3, hn_div_ho, hn_div_ho_2, hn_div_ho_3, value3, no_terms; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; max_value3 := 0.; no_terms := glob_max_terms; hn_div_ho := 0.5; hn_div_ho_2 := 0.25; hn_div_ho_3 := 0.125; omniout_float(ALWAYS, "hn_div_ho", 32, hn_div_ho, 32, ""); omniout_float(ALWAYS, "hn_div_ho_2", 32, hn_div_ho_2, 32, ""); omniout_float(ALWAYS, "hn_div_ho_3", 32, hn_div_ho_3, 32, ""); value3 := omniabs(array_y[no_terms - 3] + array_y[no_terms - 2]*hn_div_ho + array_y[no_terms - 1]*hn_div_ho_2 + array_y[no_terms]*hn_div_ho_3); if max_value3 < value3 then max_value3 := value3; omniout_float(ALWAYS, "value3", 32, value3, 32, "") end if; omniout_float(ALWAYS, "max_value3", 32, max_value3, 32, ""); max_value3 end proc > # End Function number 5 > # Begin Function number 6 > reached_interval := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local ret; > if (glob_check_sign * (array_x[1]) >= glob_check_sign * glob_next_display) then # if number 1 > ret := true; > else > ret := false; > fi;# end if 1; > return(ret); > end; reached_interval := proc() local ret; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; if glob_check_sign*glob_next_display <= glob_check_sign*array_x[1] then ret := true else ret := false end if; return ret end proc > # End Function number 6 > # Begin Function number 7 > display_alot := proc(iter) > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local abserr, analytic_val_y, ind_var, numeric_val, relerr, term_no; > #TOP DISPLAY ALOT > if (reached_interval()) then # if number 1 > if (iter >= 0) then # if number 2 > ind_var := array_x[1]; > omniout_float(ALWAYS,"x[1] ",33,ind_var,20," "); > analytic_val_y := exact_soln_y(ind_var); > omniout_float(ALWAYS,"y[1] (analytic) ",33,analytic_val_y,20," "); > term_no := 1; > numeric_val := array_y[term_no]; > abserr := omniabs(numeric_val - analytic_val_y); > omniout_float(ALWAYS,"y[1] (numeric) ",33,numeric_val,20," "); > if (omniabs(analytic_val_y) <> 0.0) then # if number 3 > relerr := abserr*100.0/omniabs(analytic_val_y); > if (relerr <> 0.0) then # if number 4 > glob_good_digits := -trunc(log10(relerr)) + 2; > else > glob_good_digits := Digits; > fi;# end if 4; > else > relerr := -1.0 ; > glob_good_digits := -1; > fi;# end if 3; > if (glob_iter = 1) then # if number 3 > array_1st_rel_error[1] := relerr; > else > array_last_rel_error[1] := relerr; > fi;# end if 3; > omniout_float(ALWAYS,"absolute error ",4,abserr,20," "); > omniout_float(ALWAYS,"relative error ",4,relerr,20,"%"); > omniout_int(INFO,"Correct digits ",32,glob_good_digits,4," ") > ; > omniout_float(ALWAYS,"h ",4,glob_h,20," "); > fi;# end if 2; > #BOTTOM DISPLAY ALOT > fi;# end if 1; > end; display_alot := proc(iter) local abserr, analytic_val_y, ind_var, numeric_val, relerr, term_no; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; if reached_interval() then if 0 <= iter then ind_var := array_x[1]; omniout_float(ALWAYS, "x[1] ", 33, ind_var, 20, " "); analytic_val_y := exact_soln_y(ind_var); omniout_float(ALWAYS, "y[1] (analytic) ", 33, analytic_val_y, 20, " "); term_no := 1; numeric_val := array_y[term_no]; abserr := omniabs(numeric_val - analytic_val_y); omniout_float(ALWAYS, "y[1] (numeric) ", 33, numeric_val, 20, " "); if omniabs(analytic_val_y) <> 0. then relerr := abserr*100.0/omniabs(analytic_val_y); if relerr <> 0. then glob_good_digits := -trunc(log10(relerr)) + 2 else glob_good_digits := Digits end if else relerr := -1.0; glob_good_digits := -1 end if; if glob_iter = 1 then array_1st_rel_error[1] := relerr else array_last_rel_error[1] := relerr end if; omniout_float(ALWAYS, "absolute error ", 4, abserr, 20, " "); omniout_float(ALWAYS, "relative error ", 4, relerr, 20, "%"); omniout_int(INFO, "Correct digits ", 32, glob_good_digits, 4, " "); omniout_float(ALWAYS, "h ", 4, glob_h, 20, " ") end if end if end proc > # End Function number 7 > # Begin Function number 8 > adjust_for_pole := proc(h_param) > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local hnew, sz2, tmp; > #TOP ADJUST FOR POLE > hnew := h_param; > glob_normmax := glob_small_float; > if (omniabs(array_y_higher[1,1]) > glob_small_float) then # if number 1 > tmp := omniabs(array_y_higher[1,1]); > if (tmp < glob_normmax) then # if number 2 > glob_normmax := tmp; > fi;# end if 2 > fi;# end if 1; > if (glob_look_poles and (omniabs(array_pole[1]) > glob_small_float) and (array_pole[1] <> glob_large_float)) then # if number 1 > sz2 := array_pole[1]/10.0; > if (sz2 < hnew) then # if number 2 > omniout_float(INFO,"glob_h adjusted to ",20,h_param,12,"due to singularity."); > omniout_str(INFO,"Reached Optimal"); > return(hnew); > fi;# end if 2 > fi;# end if 1; > if ( not glob_reached_optimal_h) then # if number 1 > glob_reached_optimal_h := true; > glob_curr_iter_when_opt := glob_current_iter; > glob_optimal_clock_start_sec := elapsed_time_seconds(); > glob_optimal_start := array_x[1]; > fi;# end if 1; > hnew := sz2; > ;#END block > return(hnew); > #BOTTOM ADJUST FOR POLE > end; adjust_for_pole := proc(h_param) local hnew, sz2, tmp; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; hnew := h_param; glob_normmax := glob_small_float; if glob_small_float < omniabs(array_y_higher[1, 1]) then tmp := omniabs(array_y_higher[1, 1]); if tmp < glob_normmax then glob_normmax := tmp end if end if; if glob_look_poles and glob_small_float < omniabs(array_pole[1]) and array_pole[1] <> glob_large_float then sz2 := array_pole[1]/10.0; if sz2 < hnew then omniout_float(INFO, "glob_h adjusted to ", 20, h_param, 12, "due to singularity."); omniout_str(INFO, "Reached Optimal"); return hnew end if end if; if not glob_reached_optimal_h then glob_reached_optimal_h := true; glob_curr_iter_when_opt := glob_current_iter; glob_optimal_clock_start_sec := elapsed_time_seconds(); glob_optimal_start := array_x[1] end if; hnew := sz2; return hnew end proc > # End Function number 8 > # Begin Function number 9 > prog_report := proc(x_start,x_end) > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local clock_sec, opt_clock_sec, clock_sec1, expect_sec, left_sec, percent_done, total_clock_sec; > #TOP PROGRESS REPORT > clock_sec1 := elapsed_time_seconds(); > total_clock_sec := convfloat(clock_sec1) - convfloat(glob_orig_start_sec); > glob_clock_sec := convfloat(clock_sec1) - convfloat(glob_clock_start_sec); > left_sec := convfloat(glob_max_sec) + convfloat(glob_orig_start_sec) - convfloat(clock_sec1); > expect_sec := comp_expect_sec(convfloat(x_end),convfloat(x_start),convfloat(array_x[1]) + convfloat(glob_h) ,convfloat( clock_sec1) - convfloat(glob_orig_start_sec)); > opt_clock_sec := convfloat( clock_sec1) - convfloat(glob_optimal_clock_start_sec); > glob_optimal_expect_sec := comp_expect_sec(convfloat(x_end),convfloat(x_start),convfloat(array_x[1]) +convfloat( glob_h) ,convfloat( opt_clock_sec)); > glob_total_exp_sec := glob_optimal_expect_sec + total_clock_sec; > percent_done := comp_percent(convfloat(x_end),convfloat(x_start),convfloat(array_x[1]) + convfloat(glob_h)); > glob_percent_done := percent_done; > omniout_str_noeol(INFO,"Total Elapsed Time "); > omniout_timestr(convfloat(total_clock_sec)); > omniout_str_noeol(INFO,"Elapsed Time(since restart) "); > omniout_timestr(convfloat(glob_clock_sec)); > if (convfloat(percent_done) < convfloat(100.0)) then # if number 1 > omniout_str_noeol(INFO,"Expected Time Remaining "); > omniout_timestr(convfloat(expect_sec)); > omniout_str_noeol(INFO,"Optimized Time Remaining "); > omniout_timestr(convfloat(glob_optimal_expect_sec)); > omniout_str_noeol(INFO,"Expected Total Time "); > omniout_timestr(convfloat(glob_total_exp_sec)); > fi;# end if 1; > omniout_str_noeol(INFO,"Time to Timeout "); > omniout_timestr(convfloat(left_sec)); > omniout_float(INFO, "Percent Done ",33,percent_done,4,"%"); > #BOTTOM PROGRESS REPORT > end; prog_report := proc(x_start, x_end) local clock_sec, opt_clock_sec, clock_sec1, expect_sec, left_sec, percent_done, total_clock_sec; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; clock_sec1 := elapsed_time_seconds(); total_clock_sec := convfloat(clock_sec1) - convfloat(glob_orig_start_sec); glob_clock_sec := convfloat(clock_sec1) - convfloat(glob_clock_start_sec); left_sec := convfloat(glob_max_sec) + convfloat(glob_orig_start_sec) - convfloat(clock_sec1); expect_sec := comp_expect_sec(convfloat(x_end), convfloat(x_start), convfloat(array_x[1]) + convfloat(glob_h), convfloat(clock_sec1) - convfloat(glob_orig_start_sec)); opt_clock_sec := convfloat(clock_sec1) - convfloat(glob_optimal_clock_start_sec); glob_optimal_expect_sec := comp_expect_sec(convfloat(x_end), convfloat(x_start), convfloat(array_x[1]) + convfloat(glob_h), convfloat(opt_clock_sec)); glob_total_exp_sec := glob_optimal_expect_sec + total_clock_sec; percent_done := comp_percent(convfloat(x_end), convfloat(x_start), convfloat(array_x[1]) + convfloat(glob_h)); glob_percent_done := percent_done; omniout_str_noeol(INFO, "Total Elapsed Time "); omniout_timestr(convfloat(total_clock_sec)); omniout_str_noeol(INFO, "Elapsed Time(since restart) "); omniout_timestr(convfloat(glob_clock_sec)); if convfloat(percent_done) < convfloat(100.0) then omniout_str_noeol(INFO, "Expected Time Remaining "); omniout_timestr(convfloat(expect_sec)); omniout_str_noeol(INFO, "Optimized Time Remaining "); omniout_timestr(convfloat(glob_optimal_expect_sec)); omniout_str_noeol(INFO, "Expected Total Time "); omniout_timestr(convfloat(glob_total_exp_sec)) end if; omniout_str_noeol(INFO, "Time to Timeout "); omniout_timestr(convfloat(left_sec)); omniout_float(INFO, "Percent Done ", 33, percent_done, 4, "%") end proc > # End Function number 9 > # Begin Function number 10 > check_for_pole := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local cnt, dr1, dr2, ds1, ds2, hdrc, m, n, nr1, nr2, ord_no, rad_c, rcs, rm0, rm1, rm2, rm3, rm4, found, h_new, ratio, term; > #TOP CHECK FOR POLE > #IN RADII REAL EQ = 1 > #Computes radius of convergence and r_order of pole from 3 adjacent Taylor series terms. EQUATUON NUMBER 1 > #Applies to pole of arbitrary r_order on the real axis, > #Due to Prof. George Corliss. > n := glob_max_terms; > m := n - 1 - 1; > while ((m >= 10) and ((omniabs(array_y_higher[1,m]) < glob_small_float) or (omniabs(array_y_higher[1,m-1]) < glob_small_float) or (omniabs(array_y_higher[1,m-2]) < glob_small_float ))) do # do number 2 > m := m - 1; > od;# end do number 2; > if (m > 10) then # if number 1 > rm0 := array_y_higher[1,m]/array_y_higher[1,m-1]; > rm1 := array_y_higher[1,m-1]/array_y_higher[1,m-2]; > hdrc := convfloat(m-1)*rm0-convfloat(m-2)*rm1; > if (omniabs(hdrc) > glob_small_float) then # if number 2 > rcs := glob_h/hdrc; > ord_no := convfloat(m-1)*rm0/hdrc - convfloat(m) + 2.0; > array_real_pole[1,1] := rcs; > array_real_pole[1,2] := ord_no; > else > array_real_pole[1,1] := glob_large_float; > array_real_pole[1,2] := glob_large_float; > fi;# end if 2 > else > array_real_pole[1,1] := glob_large_float; > array_real_pole[1,2] := glob_large_float; > fi;# end if 1; > #BOTTOM RADII REAL EQ = 1 > #TOP RADII COMPLEX EQ = 1 > #Computes radius of convergence for complex conjugate pair of poles. > #from 6 adjacent Taylor series terms > #Also computes r_order of poles. > #Due to Manuel Prieto. > #With a correction by Dennis J. Darland > n := glob_max_terms - 1 - 1; > cnt := 0; > while ((cnt < 5) and (n >= 10)) do # do number 2 > if (omniabs(array_y_higher[1,n]) > glob_small_float) then # if number 1 > cnt := cnt + 1; > else > cnt := 0; > fi;# end if 1; > n := n - 1; > od;# end do number 2; > m := n + cnt; > if (m <= 10) then # if number 1 > array_complex_pole[1,1] := glob_large_float; > array_complex_pole[1,2] := glob_large_float; > elif > ((omniabs(array_y_higher[1,m]) >= (glob_large_float)) or (omniabs(array_y_higher[1,m-1]) >=(glob_large_float)) or (omniabs(array_y_higher[1,m-2]) >= (glob_large_float)) or (omniabs(array_y_higher[1,m-3]) >= (glob_large_float)) or (omniabs(array_y_higher[1,m-4]) >= (glob_large_float)) or (omniabs(array_y_higher[1,m-5]) >= (glob_large_float))) then # if number 2 > array_complex_pole[1,1] := glob_large_float; > array_complex_pole[1,2] := glob_large_float; > else > rm0 := (array_y_higher[1,m])/(array_y_higher[1,m-1]); > rm1 := (array_y_higher[1,m-1])/(array_y_higher[1,m-2]); > rm2 := (array_y_higher[1,m-2])/(array_y_higher[1,m-3]); > rm3 := (array_y_higher[1,m-3])/(array_y_higher[1,m-4]); > rm4 := (array_y_higher[1,m-4])/(array_y_higher[1,m-5]); > nr1 := convfloat(m-1)*rm0 - 2.0*convfloat(m-2)*rm1 + convfloat(m-3)*rm2; > nr2 := convfloat(m-2)*rm1 - 2.0*convfloat(m-3)*rm2 + convfloat(m-4)*rm3; > dr1 := (-1.0)/rm1 + 2.0/rm2 - 1.0/rm3; > dr2 := (-1.0)/rm2 + 2.0/rm3 - 1.0/rm4; > ds1 := 3.0/rm1 - 8.0/rm2 + 5.0/rm3; > ds2 := 3.0/rm2 - 8.0/rm3 + 5.0/rm4; > if ((omniabs(nr1 * dr2 - nr2 * dr1) <= glob_small_float) or (omniabs(dr1) <= glob_small_float)) then # if number 3 > array_complex_pole[1,1] := glob_large_float; > array_complex_pole[1,2] := glob_large_float; > else > if (omniabs(nr1*dr2 - nr2 * dr1) > glob_small_float) then # if number 4 > rcs := ((ds1*dr2 - ds2*dr1 +dr1*dr2)/(nr1*dr2 - nr2 * dr1)); > #(Manuels) rcs := (ds1*dr2 - ds2*dr1)/(nr1*dr2 - nr2 * dr1) > ord_no := (rcs*nr1 - ds1)/(2.0*dr1) -convfloat(m)/2.0; > if (omniabs(rcs) > glob_small_float) then # if number 5 > if (rcs > 0.0) then # if number 6 > rad_c := sqrt(rcs) * omniabs(glob_h); > else > rad_c := glob_large_float; > fi;# end if 6 > else > rad_c := glob_large_float; > ord_no := glob_large_float; > fi;# end if 5 > else > rad_c := glob_large_float; > ord_no := glob_large_float; > fi;# end if 4 > fi;# end if 3; > array_complex_pole[1,1] := rad_c; > array_complex_pole[1,2] := ord_no; > fi;# end if 2; > #BOTTOM RADII COMPLEX EQ = 1 > found := false; > #TOP WHICH RADII EQ = 1 > if ( not found and ((array_real_pole[1,1] = glob_large_float) or (array_real_pole[1,2] = glob_large_float)) and ((array_complex_pole[1,1] <> glob_large_float) and (array_complex_pole[1,2] <> glob_large_float)) and ((array_complex_pole[1,1] > 0.0) and (array_complex_pole[1,2] > 0.0))) then # if number 2 > array_poles[1,1] := array_complex_pole[1,1]; > array_poles[1,2] := array_complex_pole[1,2]; > found := true; > array_type_pole[1] := 2; > if (glob_display_flag) then # if number 3 > if (reached_interval()) then # if number 4 > omniout_str(ALWAYS,"Complex estimate of poles used"); > fi;# end if 4; > fi;# end if 3; > fi;# end if 2; > if ( not found and ((array_real_pole[1,1] <> glob_large_float) and (array_real_pole[1,2] <> glob_large_float) and (array_real_pole[1,1] > 0.0) and (array_real_pole[1,2] > 0.0) and ((array_complex_pole[1,1] = glob_large_float) or (array_complex_pole[1,2] = glob_large_float) or (array_complex_pole[1,1] <= 0.0 ) or (array_complex_pole[1,2] <= 0.0)))) then # if number 2 > array_poles[1,1] := array_real_pole[1,1]; > array_poles[1,2] := array_real_pole[1,2]; > found := true; > array_type_pole[1] := 1; > if (glob_display_flag) then # if number 3 > if (reached_interval()) then # if number 4 > omniout_str(ALWAYS,"Real estimate of pole used"); > fi;# end if 4; > fi;# end if 3; > fi;# end if 2; > if ( not found and (((array_real_pole[1,1] = glob_large_float) or (array_real_pole[1,2] = glob_large_float)) and ((array_complex_pole[1,1] = glob_large_float) or (array_complex_pole[1,2] = glob_large_float)))) then # if number 2 > array_poles[1,1] := glob_large_float; > array_poles[1,2] := glob_large_float; > found := true; > array_type_pole[1] := 3; > if (reached_interval()) then # if number 3 > omniout_str(ALWAYS,"NO POLE"); > fi;# end if 3; > fi;# end if 2; > if ( not found and ((array_real_pole[1,1] < array_complex_pole[1,1]) and (array_real_pole[1,1] > 0.0) and (array_real_pole[1,2] > 0.0))) then # if number 2 > array_poles[1,1] := array_real_pole[1,1]; > array_poles[1,2] := array_real_pole[1,2]; > found := true; > array_type_pole[1] := 1; > if (glob_display_flag) then # if number 3 > if (reached_interval()) then # if number 4 > omniout_str(ALWAYS,"Real estimate of pole used"); > fi;# end if 4; > fi;# end if 3; > fi;# end if 2; > if ( not found and ((array_complex_pole[1,1] <> glob_large_float) and (array_complex_pole[1,2] <> glob_large_float) and (array_complex_pole[1,1] > 0.0) and (array_complex_pole[1,2] > 0.0))) then # if number 2 > array_poles[1,1] := array_complex_pole[1,1]; > array_poles[1,2] := array_complex_pole[1,2]; > array_type_pole[1] := 2; > found := true; > if (glob_display_flag) then # if number 3 > if (reached_interval()) then # if number 4 > omniout_str(ALWAYS,"Complex estimate of poles used"); > fi;# end if 4; > fi;# end if 3; > fi;# end if 2; > if ( not found ) then # if number 2 > array_poles[1,1] := glob_large_float; > array_poles[1,2] := glob_large_float; > array_type_pole[1] := 3; > if (reached_interval()) then # if number 3 > omniout_str(ALWAYS,"NO POLE"); > fi;# end if 3; > fi;# end if 2; > #BOTTOM WHICH RADII EQ = 1 > array_pole[1] := glob_large_float; > array_pole[2] := glob_large_float; > #TOP WHICH RADIUS EQ = 1 > if (array_pole[1] > array_poles[1,1]) then # if number 2 > array_pole[1] := array_poles[1,1]; > array_pole[2] := array_poles[1,2]; > fi;# end if 2; > #BOTTOM WHICH RADIUS EQ = 1 > #START ADJUST ALL SERIES > if (array_pole[1] * glob_ratio_of_radius < omniabs(glob_h)) then # if number 2 > h_new := array_pole[1] * glob_ratio_of_radius; > term := 1; > ratio := 1.0; > while (term <= glob_max_terms) do # do number 2 > array_y[term] := array_y[term]* ratio; > array_y_higher[1,term] := array_y_higher[1,term]* ratio; > array_x[term] := array_x[term]* ratio; > ratio := ratio * h_new / omniabs(glob_h); > term := term + 1; > od;# end do number 2; > glob_h := h_new; > fi;# end if 2; > #BOTTOM ADJUST ALL SERIES > if (reached_interval()) then # if number 2 > display_pole(); > fi;# end if 2 > end; check_for_pole := proc() local cnt, dr1, dr2, ds1, ds2, hdrc, m, n, nr1, nr2, ord_no, rad_c, rcs, rm0, rm1, rm2, rm3, rm4, found, h_new, ratio, term; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; n := glob_max_terms; m := n - 2; while 10 <= m and (omniabs(array_y_higher[1, m]) < glob_small_float or omniabs(array_y_higher[1, m - 1]) < glob_small_float or omniabs(array_y_higher[1, m - 2]) < glob_small_float) do m := m - 1 end do; if 10 < m then rm0 := array_y_higher[1, m]/array_y_higher[1, m - 1]; rm1 := array_y_higher[1, m - 1]/array_y_higher[1, m - 2]; hdrc := convfloat(m - 1)*rm0 - convfloat(m - 2)*rm1; if glob_small_float < omniabs(hdrc) then rcs := glob_h/hdrc; ord_no := convfloat(m - 1)*rm0/hdrc - convfloat(m) + 2.0; array_real_pole[1, 1] := rcs; array_real_pole[1, 2] := ord_no else array_real_pole[1, 1] := glob_large_float; array_real_pole[1, 2] := glob_large_float end if else array_real_pole[1, 1] := glob_large_float; array_real_pole[1, 2] := glob_large_float end if; n := glob_max_terms - 2; cnt := 0; while cnt < 5 and 10 <= n do if glob_small_float < omniabs(array_y_higher[1, n]) then cnt := cnt + 1 else cnt := 0 end if; n := n - 1 end do; m := n + cnt; if m <= 10 then array_complex_pole[1, 1] := glob_large_float; array_complex_pole[1, 2] := glob_large_float elif glob_large_float <= omniabs(array_y_higher[1, m]) or glob_large_float <= omniabs(array_y_higher[1, m - 1]) or glob_large_float <= omniabs(array_y_higher[1, m - 2]) or glob_large_float <= omniabs(array_y_higher[1, m - 3]) or glob_large_float <= omniabs(array_y_higher[1, m - 4]) or glob_large_float <= omniabs(array_y_higher[1, m - 5]) then array_complex_pole[1, 1] := glob_large_float; array_complex_pole[1, 2] := glob_large_float else rm0 := array_y_higher[1, m]/array_y_higher[1, m - 1]; rm1 := array_y_higher[1, m - 1]/array_y_higher[1, m - 2]; rm2 := array_y_higher[1, m - 2]/array_y_higher[1, m - 3]; rm3 := array_y_higher[1, m - 3]/array_y_higher[1, m - 4]; rm4 := array_y_higher[1, m - 4]/array_y_higher[1, m - 5]; nr1 := convfloat(m - 1)*rm0 - 2.0*convfloat(m - 2)*rm1 + convfloat(m - 3)*rm2; nr2 := convfloat(m - 2)*rm1 - 2.0*convfloat(m - 3)*rm2 + convfloat(m - 4)*rm3; dr1 := (-1)*(1.0)/rm1 + 2.0/rm2 - 1.0/rm3; dr2 := (-1)*(1.0)/rm2 + 2.0/rm3 - 1.0/rm4; ds1 := 3.0/rm1 - 8.0/rm2 + 5.0/rm3; ds2 := 3.0/rm2 - 8.0/rm3 + 5.0/rm4; if omniabs(nr1*dr2 - nr2*dr1) <= glob_small_float or omniabs(dr1) <= glob_small_float then array_complex_pole[1, 1] := glob_large_float; array_complex_pole[1, 2] := glob_large_float else if glob_small_float < omniabs(nr1*dr2 - nr2*dr1) then rcs := (ds1*dr2 - ds2*dr1 + dr1*dr2)/(nr1*dr2 - nr2*dr1); ord_no := (rcs*nr1 - ds1)/(2.0*dr1) - convfloat(m)/2.0; if glob_small_float < omniabs(rcs) then if 0. < rcs then rad_c := sqrt(rcs)*omniabs(glob_h) else rad_c := glob_large_float end if else rad_c := glob_large_float; ord_no := glob_large_float end if else rad_c := glob_large_float; ord_no := glob_large_float end if end if; array_complex_pole[1, 1] := rad_c; array_complex_pole[1, 2] := ord_no end if; found := false; if not found and (array_real_pole[1, 1] = glob_large_float or array_real_pole[1, 2] = glob_large_float) and array_complex_pole[1, 1] <> glob_large_float and array_complex_pole[1, 2] <> glob_large_float and 0. < array_complex_pole[1, 1] and 0. < array_complex_pole[1, 2] then array_poles[1, 1] := array_complex_pole[1, 1]; array_poles[1, 2] := array_complex_pole[1, 2]; found := true; array_type_pole[1] := 2; if glob_display_flag then if reached_interval() then omniout_str(ALWAYS, "Complex estimate of poles used") end if end if end if; if not found and array_real_pole[1, 1] <> glob_large_float and array_real_pole[1, 2] <> glob_large_float and 0. < array_real_pole[1, 1] and 0. < array_real_pole[1, 2] and ( array_complex_pole[1, 1] = glob_large_float or array_complex_pole[1, 2] = glob_large_float or array_complex_pole[1, 1] <= 0. or array_complex_pole[1, 2] <= 0.) then array_poles[1, 1] := array_real_pole[1, 1]; array_poles[1, 2] := array_real_pole[1, 2]; found := true; array_type_pole[1] := 1; if glob_display_flag then if reached_interval() then omniout_str(ALWAYS, "Real estimate of pole used") end if end if end if; if not found and (array_real_pole[1, 1] = glob_large_float or array_real_pole[1, 2] = glob_large_float) and ( array_complex_pole[1, 1] = glob_large_float or array_complex_pole[1, 2] = glob_large_float) then array_poles[1, 1] := glob_large_float; array_poles[1, 2] := glob_large_float; found := true; array_type_pole[1] := 3; if reached_interval() then omniout_str(ALWAYS, "NO POLE") end if end if; if not found and array_real_pole[1, 1] < array_complex_pole[1, 1] and 0. < array_real_pole[1, 1] and 0. < array_real_pole[1, 2] then array_poles[1, 1] := array_real_pole[1, 1]; array_poles[1, 2] := array_real_pole[1, 2]; found := true; array_type_pole[1] := 1; if glob_display_flag then if reached_interval() then omniout_str(ALWAYS, "Real estimate of pole used") end if end if end if; if not found and array_complex_pole[1, 1] <> glob_large_float and array_complex_pole[1, 2] <> glob_large_float and 0. < array_complex_pole[1, 1] and 0. < array_complex_pole[1, 2] then array_poles[1, 1] := array_complex_pole[1, 1]; array_poles[1, 2] := array_complex_pole[1, 2]; array_type_pole[1] := 2; found := true; if glob_display_flag then if reached_interval() then omniout_str(ALWAYS, "Complex estimate of poles used") end if end if end if; if not found then array_poles[1, 1] := glob_large_float; array_poles[1, 2] := glob_large_float; array_type_pole[1] := 3; if reached_interval() then omniout_str(ALWAYS, "NO POLE") end if end if; array_pole[1] := glob_large_float; array_pole[2] := glob_large_float; if array_poles[1, 1] < array_pole[1] then array_pole[1] := array_poles[1, 1]; array_pole[2] := array_poles[1, 2] end if; if array_pole[1]*glob_ratio_of_radius < omniabs(glob_h) then h_new := array_pole[1]*glob_ratio_of_radius; term := 1; ratio := 1.0; while term <= glob_max_terms do array_y[term] := array_y[term]*ratio; array_y_higher[1, term] := array_y_higher[1, term]*ratio; array_x[term] := array_x[term]*ratio; ratio := ratio*h_new/omniabs(glob_h); term := term + 1 end do; glob_h := h_new end if; if reached_interval() then display_pole() end if end proc > # End Function number 10 > # Begin Function number 11 > get_norms := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local iii; > if ( not glob_initial_pass) then # if number 2 > iii := 1; > while (iii <= glob_max_terms) do # do number 2 > array_norms[iii] := 0.0; > iii := iii + 1; > od;# end do number 2; > #TOP GET NORMS > iii := 1; > while (iii <= glob_max_terms) do # do number 2 > if (omniabs(array_y[iii]) > array_norms[iii]) then # if number 3 > array_norms[iii] := omniabs(array_y[iii]); > fi;# end if 3; > iii := iii + 1; > od;# end do number 2 > #BOTTOM GET NORMS > ; > fi;# end if 2; > end; get_norms := proc() local iii; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; if not glob_initial_pass then iii := 1; while iii <= glob_max_terms do array_norms[iii] := 0.; iii := iii + 1 end do; iii := 1; while iii <= glob_max_terms do if array_norms[iii] < omniabs(array_y[iii]) then array_norms[iii] := omniabs(array_y[iii]) end if; iii := iii + 1 end do end if end proc > # End Function number 11 > # Begin Function number 12 > atomall := proc() > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > local kkk, order_d, adj2, adj3 , temporary, term; > #TOP ATOMALL > #END OUTFILE1 > #BEGIN ATOMHDR1 > #emit pre mult CONST - LINEAR $eq_no = 1 i = 1 > array_tmp1[1] := array_const_0D1[1] * array_x[1]; > #emit pre add LINEAR - CONST $eq_no = 1 i = 1 > array_tmp2[1] := array_tmp1[1] + array_const_0D2[1]; > #emit pre sqrt 1 $eq_no = 1 > array_tmp3[1] := sqrt(array_tmp2[1]); > #emit pre arcsin FULL $eq_no = 1 > array_tmp4[1] := arcsin(array_tmp3[1]); > array_tmp4_a1[1] := cos(array_tmp4[1]); > #emit pre add CONST FULL $eq_no = 1 i = 1 > array_tmp5[1] := array_const_0D0[1] + array_tmp4[1]; > #emit pre assign xxx $eq_no = 1 i = 1 $min_hdrs = 5 > if ( not array_y_set_initial[1,2]) then # if number 1 > if (1 <= glob_max_terms) then # if number 2 > temporary := array_tmp5[1] * expt(glob_h , (1)) * factorial_3(0,1); > array_y[2] := temporary; > array_y_higher[1,2] := temporary; > temporary := temporary / glob_h; > array_y_higher[2,1] := temporary; > fi;# end if 2; > fi;# end if 1; > kkk := 2; > #END ATOMHDR1 > #BEGIN ATOMHDR2 > #emit pre mult CONST - LINEAR $eq_no = 1 i = 2 > array_tmp1[2] := array_const_0D1[1] * array_x[2]; > #emit pre add LINEAR - CONST $eq_no = 1 i = 2 > array_tmp2[2] := array_tmp1[2]; > #emit pre sqrt 2 $eq_no = 1 > array_tmp3[2] := array_tmp2[2] / array_tmp3[1]/2.0; > #emit pre arcsin FULL $eq_no = 1 > temp := att(1,array_tmp4_a1,array_tmp4,2); > array_tmp4[2] := (array_tmp3[2] - temp) / array_tmp4_a1[1]; > temp2 := att(1,array_tmp3,array_tmp4,1); > array_tmp4_a1[2] := -temp2; > #emit pre add CONST FULL $eq_no = 1 i = 2 > array_tmp5[2] := array_tmp4[2]; > #emit pre assign xxx $eq_no = 1 i = 2 $min_hdrs = 5 > if ( not array_y_set_initial[1,3]) then # if number 1 > if (2 <= glob_max_terms) then # if number 2 > temporary := array_tmp5[2] * expt(glob_h , (1)) * factorial_3(1,2); > array_y[3] := temporary; > array_y_higher[1,3] := temporary; > temporary := temporary / glob_h; > array_y_higher[2,2] := temporary; > fi;# end if 2; > fi;# end if 1; > kkk := 3; > #END ATOMHDR2 > #BEGIN ATOMHDR3 > #emit pre sqrt ID_LINEAR iii = 3 $eq_no = 1 > array_tmp3[3] := 0.0; > array_tmp3[3] := -ats(3,array_tmp3,array_tmp3,2) / array_tmp3[1] / 2.0; > #emit pre arcsin FULL $eq_no = 1 > temp := att(2,array_tmp4_a1,array_tmp4,2); > array_tmp4[3] := (array_tmp3[3] - temp) / array_tmp4_a1[1]; > temp2 := att(2,array_tmp3,array_tmp4,1); > array_tmp4_a1[3] := -temp2; > #emit pre add CONST FULL $eq_no = 1 i = 3 > array_tmp5[3] := array_tmp4[3]; > #emit pre assign xxx $eq_no = 1 i = 3 $min_hdrs = 5 > if ( not array_y_set_initial[1,4]) then # if number 1 > if (3 <= glob_max_terms) then # if number 2 > temporary := array_tmp5[3] * expt(glob_h , (1)) * factorial_3(2,3); > array_y[4] := temporary; > array_y_higher[1,4] := temporary; > temporary := temporary / glob_h * (2.0); > array_y_higher[2,3] := temporary; > fi;# end if 2; > fi;# end if 1; > kkk := 4; > #END ATOMHDR3 > #BEGIN ATOMHDR4 > #emit pre sqrt ID_LINEAR iii = 4 $eq_no = 1 > array_tmp3[4] := 0.0; > array_tmp3[4] := -ats(4,array_tmp3,array_tmp3,2) / array_tmp3[1] / 2.0; > #emit pre arcsin FULL $eq_no = 1 > temp := att(3,array_tmp4_a1,array_tmp4,2); > array_tmp4[4] := (array_tmp3[4] - temp) / array_tmp4_a1[1]; > temp2 := att(3,array_tmp3,array_tmp4,1); > array_tmp4_a1[4] := -temp2; > #emit pre add CONST FULL $eq_no = 1 i = 4 > array_tmp5[4] := array_tmp4[4]; > #emit pre assign xxx $eq_no = 1 i = 4 $min_hdrs = 5 > if ( not array_y_set_initial[1,5]) then # if number 1 > if (4 <= glob_max_terms) then # if number 2 > temporary := array_tmp5[4] * expt(glob_h , (1)) * factorial_3(3,4); > array_y[5] := temporary; > array_y_higher[1,5] := temporary; > temporary := temporary / glob_h * (3.0); > array_y_higher[2,4] := temporary; > fi;# end if 2; > fi;# end if 1; > kkk := 5; > #END ATOMHDR4 > #BEGIN ATOMHDR5 > #emit pre sqrt ID_LINEAR iii = 5 $eq_no = 1 > array_tmp3[5] := 0.0; > array_tmp3[5] := -ats(5,array_tmp3,array_tmp3,2) / array_tmp3[1] / 2.0; > #emit pre arcsin FULL $eq_no = 1 > temp := att(4,array_tmp4_a1,array_tmp4,2); > array_tmp4[5] := (array_tmp3[5] - temp) / array_tmp4_a1[1]; > temp2 := att(4,array_tmp3,array_tmp4,1); > array_tmp4_a1[5] := -temp2; > #emit pre add CONST FULL $eq_no = 1 i = 5 > array_tmp5[5] := array_tmp4[5]; > #emit pre assign xxx $eq_no = 1 i = 5 $min_hdrs = 5 > if ( not array_y_set_initial[1,6]) then # if number 1 > if (5 <= glob_max_terms) then # if number 2 > temporary := array_tmp5[5] * expt(glob_h , (1)) * factorial_3(4,5); > array_y[6] := temporary; > array_y_higher[1,6] := temporary; > temporary := temporary / glob_h * (4.0); > array_y_higher[2,5] := temporary; > fi;# end if 2; > fi;# end if 1; > kkk := 6; > #END ATOMHDR5 > #BEGIN OUTFILE3 > #Top Atomall While Loop-- outfile3 > while (kkk <= glob_max_terms) do # do number 1 > #END OUTFILE3 > #BEGIN OUTFILE4 > #emit sqrt LINEAR $eq_no = 1 > array_tmp3[kkk] := 0.0; > array_tmp3[kkk] := -ats(kkk,array_tmp3,array_tmp3,2) /array_tmp3[1] / 2.0; > #emit arcsin $eq_no = 1 > temp := att(kkk-1,array_tmp4_a1,array_tmp4,2); > array_tmp4[kkk] := (array_tmp3[kkk] - temp) / array_tmp4_a1[1]; > temp2 := att(kkk-1,array_tmp3,array_tmp4,1); > array_tmp4_a1[kkk] := -temp2; > #emit NOT FULL - FULL add $eq_no = 1 > array_tmp5[kkk] := array_tmp4[kkk]; > #emit assign $eq_no = 1 > order_d := 1; > if (kkk + order_d + 1 <= glob_max_terms) then # if number 1 > if ( not array_y_set_initial[1,kkk + order_d]) then # if number 2 > temporary := array_tmp5[kkk] * expt(glob_h , (order_d)) / factorial_3((kkk - 1),(kkk + order_d - 1)); > array_y[kkk + order_d] := temporary; > array_y_higher[1,kkk + order_d] := temporary; > term := kkk + order_d - 1; > adj2 := kkk + order_d - 2; > adj3 := 2; > while (term >= 1) do # do number 2 > if (adj3 <= order_d + 1) then # if number 3 > if (adj2 > 1) then # if number 4 > temporary := temporary / glob_h * convfp(adj2); > else > temporary := temporary / glob_h; > fi;# end if 4; > array_y_higher[adj3,term] := temporary; > fi;# end if 3; > term := term - 1; > adj2 := adj2 - 1; > adj3 := adj3 + 1; > od;# end do number 2 > fi;# end if 2 > fi;# end if 1; > kkk := kkk + 1; > od;# end do number 1; > #BOTTOM ATOMALL > #END OUTFILE4 > #BEGIN OUTFILE5 > #BOTTOM ATOMALL ??? > end; Warning, `temp` is implicitly declared local to procedure `atomall` Warning, `temp2` is implicitly declared local to procedure `atomall` atomall := proc() local kkk, order_d, adj2, adj3, temporary, term, temp, temp2; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; array_tmp1[1] := array_const_0D1[1]*array_x[1]; array_tmp2[1] := array_tmp1[1] + array_const_0D2[1]; array_tmp3[1] := sqrt(array_tmp2[1]); array_tmp4[1] := arcsin(array_tmp3[1]); array_tmp4_a1[1] := cos(array_tmp4[1]); array_tmp5[1] := array_const_0D0[1] + array_tmp4[1]; if not array_y_set_initial[1, 2] then if 1 <= glob_max_terms then temporary := array_tmp5[1]*expt(glob_h, 1)*factorial_3(0, 1); array_y[2] := temporary; array_y_higher[1, 2] := temporary; temporary := temporary/glob_h; array_y_higher[2, 1] := temporary end if end if; kkk := 2; array_tmp1[2] := array_const_0D1[1]*array_x[2]; array_tmp2[2] := array_tmp1[2]; array_tmp3[2] := array_tmp2[2]/(array_tmp3[1]*2.0); temp := att(1, array_tmp4_a1, array_tmp4, 2); array_tmp4[2] := (array_tmp3[2] - temp)/array_tmp4_a1[1]; temp2 := att(1, array_tmp3, array_tmp4, 1); array_tmp4_a1[2] := -temp2; array_tmp5[2] := array_tmp4[2]; if not array_y_set_initial[1, 3] then if 2 <= glob_max_terms then temporary := array_tmp5[2]*expt(glob_h, 1)*factorial_3(1, 2); array_y[3] := temporary; array_y_higher[1, 3] := temporary; temporary := temporary/glob_h; array_y_higher[2, 2] := temporary end if end if; kkk := 3; array_tmp3[3] := 0.; array_tmp3[3] := -ats(3, array_tmp3, array_tmp3, 2)/(array_tmp3[1]*2.0) ; temp := att(2, array_tmp4_a1, array_tmp4, 2); array_tmp4[3] := (array_tmp3[3] - temp)/array_tmp4_a1[1]; temp2 := att(2, array_tmp3, array_tmp4, 1); array_tmp4_a1[3] := -temp2; array_tmp5[3] := array_tmp4[3]; if not array_y_set_initial[1, 4] then if 3 <= glob_max_terms then temporary := array_tmp5[3]*expt(glob_h, 1)*factorial_3(2, 3); array_y[4] := temporary; array_y_higher[1, 4] := temporary; temporary := temporary*2.0/glob_h; array_y_higher[2, 3] := temporary end if end if; kkk := 4; array_tmp3[4] := 0.; array_tmp3[4] := -ats(4, array_tmp3, array_tmp3, 2)/(array_tmp3[1]*2.0) ; temp := att(3, array_tmp4_a1, array_tmp4, 2); array_tmp4[4] := (array_tmp3[4] - temp)/array_tmp4_a1[1]; temp2 := att(3, array_tmp3, array_tmp4, 1); array_tmp4_a1[4] := -temp2; array_tmp5[4] := array_tmp4[4]; if not array_y_set_initial[1, 5] then if 4 <= glob_max_terms then temporary := array_tmp5[4]*expt(glob_h, 1)*factorial_3(3, 4); array_y[5] := temporary; array_y_higher[1, 5] := temporary; temporary := temporary*3.0/glob_h; array_y_higher[2, 4] := temporary end if end if; kkk := 5; array_tmp3[5] := 0.; array_tmp3[5] := -ats(5, array_tmp3, array_tmp3, 2)/(array_tmp3[1]*2.0) ; temp := att(4, array_tmp4_a1, array_tmp4, 2); array_tmp4[5] := (array_tmp3[5] - temp)/array_tmp4_a1[1]; temp2 := att(4, array_tmp3, array_tmp4, 1); array_tmp4_a1[5] := -temp2; array_tmp5[5] := array_tmp4[5]; if not array_y_set_initial[1, 6] then if 5 <= glob_max_terms then temporary := array_tmp5[5]*expt(glob_h, 1)*factorial_3(4, 5); array_y[6] := temporary; array_y_higher[1, 6] := temporary; temporary := temporary*4.0/glob_h; array_y_higher[2, 5] := temporary end if end if; kkk := 6; while kkk <= glob_max_terms do array_tmp3[kkk] := 0.; array_tmp3[kkk] := -ats(kkk, array_tmp3, array_tmp3, 2)/(array_tmp3[1]*2.0); temp := att(kkk - 1, array_tmp4_a1, array_tmp4, 2); array_tmp4[kkk] := (array_tmp3[kkk] - temp)/array_tmp4_a1[1]; temp2 := att(kkk - 1, array_tmp3, array_tmp4, 1); array_tmp4_a1[kkk] := -temp2; array_tmp5[kkk] := array_tmp4[kkk]; order_d := 1; if kkk + order_d + 1 <= glob_max_terms then if not array_y_set_initial[1, kkk + order_d] then temporary := array_tmp5[kkk]*expt(glob_h, order_d)/ factorial_3(kkk - 1, kkk + order_d - 1); array_y[kkk + order_d] := temporary; array_y_higher[1, kkk + order_d] := temporary; term := kkk + order_d - 1; adj2 := kkk + order_d - 2; adj3 := 2; while 1 <= term do if adj3 <= order_d + 1 then if 1 < adj2 then temporary := temporary*convfp(adj2)/glob_h else temporary := temporary/glob_h end if; array_y_higher[adj3, term] := temporary end if; term := term - 1; adj2 := adj2 - 1; adj3 := adj3 + 1 end do end if end if; kkk := kkk + 1 end do end proc > # End Function number 12 > #BEGIN ATS LIBRARY BLOCK > # Begin Function number 2 > omniout_str := proc(iolevel,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 1 > printf("%s\n",str); > fi;# end if 1; > end; omniout_str := proc(iolevel, str) global glob_iolevel; if iolevel <= glob_iolevel then printf("%s\n", str) end if end proc > # End Function number 2 > # Begin Function number 3 > omniout_str_noeol := proc(iolevel,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 1 > printf("%s",str); > fi;# end if 1; > end; omniout_str_noeol := proc(iolevel, str) global glob_iolevel; if iolevel <= glob_iolevel then printf("%s", str) end if end proc > # End Function number 3 > # Begin Function number 4 > omniout_labstr := proc(iolevel,label,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 1 > print(label,str); > fi;# end if 1; > end; omniout_labstr := proc(iolevel, label, str) global glob_iolevel; if iolevel <= glob_iolevel then print(label, str) end if end proc > # End Function number 4 > # Begin Function number 5 > omniout_float := proc(iolevel,prelabel,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 1 > if vallen = 4 then > printf("%-30s = %-42.4g %s \n",prelabel,value, postlabel); > else > printf("%-30s = %-42.32g %s \n",prelabel,value, postlabel); > fi;# end if 1; > fi;# end if 0; > end; omniout_float := proc(iolevel, prelabel, prelen, value, vallen, postlabel) global glob_iolevel; if iolevel <= glob_iolevel then if vallen = 4 then printf("%-30s = %-42.4g %s \n", prelabel, value, postlabel) else printf("%-30s = %-42.32g %s \n", prelabel, value, postlabel) end if end if end proc > # End Function number 5 > # Begin Function number 6 > omniout_int := proc(iolevel,prelabel,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 0 > if vallen = 5 then # if number 1 > printf("%-30s = %-32d %s\n",prelabel,value, postlabel); > else > printf("%-30s = %-32d %s \n",prelabel,value, postlabel); > fi;# end if 1; > fi;# end if 0; > end; omniout_int := proc(iolevel, prelabel, prelen, value, vallen, postlabel) global glob_iolevel; if iolevel <= glob_iolevel then if vallen = 5 then printf("%-30s = %-32d %s\n", prelabel, value, postlabel) else printf("%-30s = %-32d %s \n", prelabel, value, postlabel) end if end if end proc > # End Function number 6 > # Begin Function number 7 > omniout_float_arr := proc(iolevel,prelabel,elemnt,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= iolevel) then # if number 0 > print(prelabel,"[",elemnt,"]",value, postlabel); > fi;# end if 0; > end; omniout_float_arr := proc( iolevel, prelabel, elemnt, prelen, value, vallen, postlabel) global glob_iolevel; if iolevel <= glob_iolevel then print(prelabel, "[", elemnt, "]", value, postlabel) end if end proc > # End Function number 7 > # Begin Function number 8 > dump_series := proc(iolevel,dump_label,series_name,arr_series,numb) > global glob_iolevel; > local i; > if (glob_iolevel >= iolevel) then # if number 0 > i := 1; > while (i <= numb) do # do number 1 > print(dump_label,series_name > ,i,arr_series[i]); > i := i + 1; > od;# end do number 1 > fi;# end if 0 > end; dump_series := proc(iolevel, dump_label, series_name, arr_series, numb) local i; global glob_iolevel; if iolevel <= glob_iolevel then i := 1; while i <= numb do print(dump_label, series_name, i, arr_series[i]); i := i + 1 end do end if end proc > # End Function number 8 > # Begin Function number 9 > dump_series_2 := proc(iolevel,dump_label,series_name2,arr_series2,numb,subnum,arr_x) > global glob_iolevel; > local i,sub,ts_term; > if (glob_iolevel >= iolevel) then # if number 0 > sub := 1; > while (sub <= subnum) do # do number 1 > i := 1; > while (i <= numb) do # do number 2 > print(dump_label,series_name2,sub,i,arr_series2[sub,i]); > od;# end do number 2; > sub := sub + 1; > od;# end do number 1; > fi;# end if 0; > end; dump_series_2 := proc( iolevel, dump_label, series_name2, arr_series2, numb, subnum, arr_x) local i, sub, ts_term; global glob_iolevel; if iolevel <= glob_iolevel then sub := 1; while sub <= subnum do i := 1; while i <= numb do print(dump_label, series_name2, sub, i, arr_series2[sub, i]) end do; sub := sub + 1 end do end if end proc > # End Function number 9 > # Begin Function number 10 > cs_info := proc(iolevel,str) > global glob_iolevel,glob_correct_start_flag,glob_h,glob_reached_optimal_h; > if (glob_iolevel >= iolevel) then # if number 0 > print("cs_info " , str , " glob_correct_start_flag = " , glob_correct_start_flag , "glob_h := " , glob_h , "glob_reached_optimal_h := " , glob_reached_optimal_h) > fi;# end if 0; > end; cs_info := proc(iolevel, str) global glob_iolevel, glob_correct_start_flag, glob_h, glob_reached_optimal_h; if iolevel <= glob_iolevel then print("cs_info ", str, " glob_correct_start_flag = ", glob_correct_start_flag, "glob_h := ", glob_h, "glob_reached_optimal_h := ", glob_reached_optimal_h) end if end proc > # End Function number 10 > # Begin Function number 11 > logitem_time := proc(fd,secs_in) > global glob_sec_in_day, glob_sec_in_hour, glob_sec_in_minute, glob_sec_in_year; > local days_int, hours_int,minutes_int, sec_int, sec_temp, years_int; > fprintf(fd,""); > if (secs_in >= 0) then # if number 0 > years_int := trunc(secs_in / glob_sec_in_year); > sec_temp := (trunc(secs_in) mod trunc(glob_sec_in_year)); > days_int := trunc(sec_temp / glob_sec_in_day) ; > sec_temp := (sec_temp mod trunc(glob_sec_in_day)) ; > hours_int := trunc(sec_temp / glob_sec_in_hour); > sec_temp := (sec_temp mod trunc(glob_sec_in_hour)); > minutes_int := trunc(sec_temp / glob_sec_in_minute); > sec_int := (sec_temp mod trunc(glob_sec_in_minute)); > if (years_int > 0) then # if number 1 > fprintf(fd,"%d Years %d Days %d Hours %d Minutes %d Seconds",years_int,days_int,hours_int,minutes_int,sec_int); > elif > (days_int > 0) then # if number 2 > fprintf(fd,"%d Days %d Hours %d Minutes %d Seconds",days_int,hours_int,minutes_int,sec_int); > elif > (hours_int > 0) then # if number 3 > fprintf(fd,"%d Hours %d Minutes %d Seconds",hours_int,minutes_int,sec_int); > elif > (minutes_int > 0) then # if number 4 > fprintf(fd,"%d Minutes %d Seconds",minutes_int,sec_int); > else > fprintf(fd,"%d Seconds",sec_int); > fi;# end if 4 > else > fprintf(fd," Unknown"); > fi;# end if 3 > fprintf(fd,"\n"); > end; logitem_time := proc(fd, secs_in) local days_int, hours_int, minutes_int, sec_int, sec_temp, years_int; global glob_sec_in_day, glob_sec_in_hour, glob_sec_in_minute, glob_sec_in_year; fprintf(fd, ""); if 0 <= secs_in then years_int := trunc(secs_in/glob_sec_in_year); sec_temp := trunc(secs_in) mod trunc(glob_sec_in_year); days_int := trunc(sec_temp/glob_sec_in_day); sec_temp := sec_temp mod trunc(glob_sec_in_day); hours_int := trunc(sec_temp/glob_sec_in_hour); sec_temp := sec_temp mod trunc(glob_sec_in_hour); minutes_int := trunc(sec_temp/glob_sec_in_minute); sec_int := sec_temp mod trunc(glob_sec_in_minute); if 0 < years_int then fprintf(fd, "%d Years %d Days %d Hours %d Minutes %d Seconds", years_int, days_int, hours_int, minutes_int, sec_int) elif 0 < days_int then fprintf(fd, "%d Days %d Hours %d Minutes %d Seconds", days_int, hours_int, minutes_int, sec_int) elif 0 < hours_int then fprintf(fd, "%d Hours %d Minutes %d Seconds", hours_int, minutes_int, sec_int) elif 0 < minutes_int then fprintf(fd, "%d Minutes %d Seconds", minutes_int, sec_int) else fprintf(fd, "%d Seconds", sec_int) end if else fprintf(fd, " Unknown") end if; fprintf(fd, "\n") end proc > # End Function number 11 > # Begin Function number 12 > omniout_timestr := proc(secs_in) > global glob_sec_in_day, glob_sec_in_hour, glob_sec_in_minute, glob_sec_in_year; > local days_int, hours_int,minutes_int, sec_int, sec_temp, years_int; > if (secs_in >= 0) then # if number 3 > years_int := trunc(secs_in / glob_sec_in_year); > sec_temp := (trunc(secs_in) mod trunc(glob_sec_in_year)); > days_int := trunc(sec_temp / glob_sec_in_day) ; > sec_temp := (sec_temp mod trunc(glob_sec_in_day)) ; > hours_int := trunc(sec_temp / glob_sec_in_hour); > sec_temp := (sec_temp mod trunc(glob_sec_in_hour)); > minutes_int := trunc(sec_temp / glob_sec_in_minute); > sec_int := (sec_temp mod trunc(glob_sec_in_minute)); > if (years_int > 0) then # if number 4 > printf(" = %d Years %d Days %d Hours %d Minutes %d Seconds\n",years_int,days_int,hours_int,minutes_int,sec_int); > elif > (days_int > 0) then # if number 5 > printf(" = %d Days %d Hours %d Minutes %d Seconds\n",days_int,hours_int,minutes_int,sec_int); > elif > (hours_int > 0) then # if number 6 > printf(" = %d Hours %d Minutes %d Seconds\n",hours_int,minutes_int,sec_int); > elif > (minutes_int > 0) then # if number 7 > printf(" = %d Minutes %d Seconds\n",minutes_int,sec_int); > else > printf(" = %d Seconds\n",sec_int); > fi;# end if 7 > else > printf(" Unknown\n"); > fi;# end if 6 > end; omniout_timestr := proc(secs_in) local days_int, hours_int, minutes_int, sec_int, sec_temp, years_int; global glob_sec_in_day, glob_sec_in_hour, glob_sec_in_minute, glob_sec_in_year; if 0 <= secs_in then years_int := trunc(secs_in/glob_sec_in_year); sec_temp := trunc(secs_in) mod trunc(glob_sec_in_year); days_int := trunc(sec_temp/glob_sec_in_day); sec_temp := sec_temp mod trunc(glob_sec_in_day); hours_int := trunc(sec_temp/glob_sec_in_hour); sec_temp := sec_temp mod trunc(glob_sec_in_hour); minutes_int := trunc(sec_temp/glob_sec_in_minute); sec_int := sec_temp mod trunc(glob_sec_in_minute); if 0 < years_int then printf( " = %d Years %d Days %d Hours %d Minutes %d Seconds\n", years_int, days_int, hours_int, minutes_int, sec_int) elif 0 < days_int then printf( " = %d Days %d Hours %d Minutes %d Seconds\n", days_int, hours_int, minutes_int, sec_int) elif 0 < hours_int then printf( " = %d Hours %d Minutes %d Seconds\n", hours_int, minutes_int, sec_int) elif 0 < minutes_int then printf(" = %d Minutes %d Seconds\n", minutes_int, sec_int) else printf(" = %d Seconds\n", sec_int) end if else printf(" Unknown\n") end if end proc > # End Function number 12 > # Begin Function number 13 > ats := proc(mmm_ats,arr_a,arr_b,jjj_ats) > local iii_ats, lll_ats,ma_ats, ret_ats; > ret_ats := 0.0; > if (jjj_ats <= mmm_ats) then # if number 6 > ma_ats := mmm_ats + 1; > iii_ats := jjj_ats; > while (iii_ats <= mmm_ats) do # do number 1 > lll_ats := ma_ats - iii_ats; > ret_ats := ret_ats + arr_a[iii_ats]*arr_b[lll_ats]; > iii_ats := iii_ats + 1; > od;# end do number 1 > fi;# end if 6; > ret_ats; > end; ats := proc(mmm_ats, arr_a, arr_b, jjj_ats) local iii_ats, lll_ats, ma_ats, ret_ats; ret_ats := 0.; if jjj_ats <= mmm_ats then ma_ats := mmm_ats + 1; iii_ats := jjj_ats; while iii_ats <= mmm_ats do lll_ats := ma_ats - iii_ats; ret_ats := ret_ats + arr_a[iii_ats]*arr_b[lll_ats]; iii_ats := iii_ats + 1 end do end if; ret_ats end proc > # End Function number 13 > # Begin Function number 14 > att := proc(mmm_att,arr_aa,arr_bb,jjj_att) > global glob_max_terms; > local al_att, iii_att,lll_att, ma_att, ret_att; > ret_att := 0.0; > if (jjj_att <= mmm_att) then # if number 6 > ma_att := mmm_att + 2; > iii_att := jjj_att; > while (iii_att <= mmm_att) do # do number 1 > lll_att := ma_att - iii_att; > al_att := (lll_att - 1); > if (lll_att <= glob_max_terms) then # if number 7 > ret_att := ret_att + arr_aa[iii_att]*arr_bb[lll_att]* convfp(al_att); > fi;# end if 7; > iii_att := iii_att + 1; > od;# end do number 1; > ret_att := ret_att / convfp(mmm_att) ; > fi;# end if 6; > ret_att; > end; att := proc(mmm_att, arr_aa, arr_bb, jjj_att) local al_att, iii_att, lll_att, ma_att, ret_att; global glob_max_terms; ret_att := 0.; if jjj_att <= mmm_att then ma_att := mmm_att + 2; iii_att := jjj_att; while iii_att <= mmm_att do lll_att := ma_att - iii_att; al_att := lll_att - 1; if lll_att <= glob_max_terms then ret_att := ret_att + arr_aa[iii_att]*arr_bb[lll_att]*convfp(al_att) end if; iii_att := iii_att + 1 end do; ret_att := ret_att/convfp(mmm_att) end if; ret_att end proc > # End Function number 14 > # Begin Function number 15 > display_pole := proc() > global ALWAYS,glob_display_flag, glob_large_float, array_pole; > if ((array_pole[1] <> glob_large_float) and (array_pole[1] > 0.0) and (array_pole[2] <> glob_large_float) and (array_pole[2]> 0.0) and glob_display_flag) then # if number 6 > omniout_float(ALWAYS,"Radius of convergence ",4, array_pole[1],4," "); > omniout_float(ALWAYS,"Order of pole ",4, array_pole[2],4," "); > fi;# end if 6 > end; display_pole := proc() global ALWAYS, glob_display_flag, glob_large_float, array_pole; if array_pole[1] <> glob_large_float and 0. < array_pole[1] and array_pole[2] <> glob_large_float and 0. < array_pole[2] and glob_display_flag then omniout_float(ALWAYS, "Radius of convergence ", 4, array_pole[1], 4, " "); omniout_float(ALWAYS, "Order of pole ", 4, array_pole[2], 4, " ") end if end proc > # End Function number 15 > # Begin Function number 16 > logditto := proc(file) > fprintf(file,""); > fprintf(file,"ditto"); > fprintf(file,""); > end; logditto := proc(file) fprintf(file, ""); fprintf(file, "ditto"); fprintf(file, "") end proc > # End Function number 16 > # Begin Function number 17 > logitem_integer := proc(file,n) > fprintf(file,""); > fprintf(file,"%d",n); > fprintf(file,""); > end; logitem_integer := proc(file, n) fprintf(file, ""); fprintf(file, "%d", n); fprintf(file, "") end proc > # End Function number 17 > # Begin Function number 18 > logitem_str := proc(file,str) > fprintf(file,""); > fprintf(file,str); > fprintf(file,""); > end; logitem_str := proc(file, str) fprintf(file, ""); fprintf(file, str); fprintf(file, "") end proc > # End Function number 18 > # Begin Function number 19 > logitem_good_digits := proc(file,rel_error) > global glob_small_float; > local good_digits; > fprintf(file,""); > if (rel_error <> -1.0) then # if number 6 > if (rel_error <> 0.0) then # if number 7 > good_digits := 1-trunc(log10(rel_error)); > fprintf(file,"%d",good_digits); > else > good_digits := Digits; > fprintf(file,"%d",good_digits); > fi;# end if 7; > else > fprintf(file,"Unknown"); > fi;# end if 6; > fprintf(file,""); > end; logitem_good_digits := proc(file, rel_error) local good_digits; global glob_small_float; fprintf(file, ""); if rel_error <> -1.0 then if rel_error <> 0. then good_digits := 1 - trunc(log10(rel_error)); fprintf(file, "%d", good_digits) else good_digits := Digits; fprintf(file, "%d", good_digits) end if else fprintf(file, "Unknown") end if; fprintf(file, "") end proc > # End Function number 19 > # Begin Function number 20 > log_revs := proc(file,revs) > fprintf(file,revs); > end; log_revs := proc(file, revs) fprintf(file, revs) end proc > # End Function number 20 > # Begin Function number 21 > logitem_float := proc(file,x) > fprintf(file,""); > fprintf(file,"%g",x); > fprintf(file,""); > end; logitem_float := proc(file, x) fprintf(file, ""); fprintf(file, "%g", x); fprintf(file, "") end proc > # End Function number 21 > # Begin Function number 22 > logitem_pole := proc(file,pole) > fprintf(file,""); > if (pole = 0) then # if number 6 > fprintf(file,"NA"); > elif > (pole = 1) then # if number 7 > fprintf(file,"Real"); > elif > (pole = 2) then # if number 8 > fprintf(file,"Complex"); > else > fprintf(file,"No Pole"); > fi;# end if 8 > fprintf(file,""); > end; logitem_pole := proc(file, pole) fprintf(file, ""); if pole = 0 then fprintf(file, "NA") elif pole = 1 then fprintf(file, "Real") elif pole = 2 then fprintf(file, "Complex") else fprintf(file, "No Pole") end if; fprintf(file, "") end proc > # End Function number 22 > # Begin Function number 23 > logstart := proc(file) > fprintf(file,""); > end; logstart := proc(file) fprintf(file, "") end proc > # End Function number 23 > # Begin Function number 24 > logend := proc(file) > fprintf(file,"\n"); > end; logend := proc(file) fprintf(file, "\n") end proc > # End Function number 24 > # Begin Function number 25 > chk_data := proc() > global glob_max_iter,ALWAYS, glob_max_terms; > local errflag; > errflag := false; > if ((glob_max_terms < 15) or (glob_max_terms > 512)) then # if number 8 > omniout_str(ALWAYS,"Illegal max_terms = -- Using 30"); > glob_max_terms := 30; > fi;# end if 8; > if (glob_max_iter < 2) then # if number 8 > omniout_str(ALWAYS,"Illegal max_iter"); > errflag := true; > fi;# end if 8; > if (errflag) then # if number 8 > quit; > fi;# end if 8 > end; chk_data := proc() local errflag; global glob_max_iter, ALWAYS, glob_max_terms; errflag := false; if glob_max_terms < 15 or 512 < glob_max_terms then omniout_str(ALWAYS, "Illegal max_terms = -- Using 30"); glob_max_terms := 30 end if; if glob_max_iter < 2 then omniout_str(ALWAYS, "Illegal max_iter"); errflag := true end if; if errflag then quit end if end proc > # End Function number 25 > # Begin Function number 26 > comp_expect_sec := proc(t_end2,t_start2,t2,clock_sec2) > global glob_small_float; > local ms2, rrr, sec_left, sub1, sub2; > ; > ms2 := clock_sec2; > sub1 := (t_end2-t_start2); > sub2 := (t2-t_start2); > if (sub1 = 0.0) then # if number 8 > sec_left := 0.0; > else > if (sub2 > 0.0) then # if number 9 > rrr := (sub1/sub2); > sec_left := rrr * ms2 - ms2; > else > sec_left := 0.0; > fi;# end if 9 > fi;# end if 8; > sec_left; > end; comp_expect_sec := proc(t_end2, t_start2, t2, clock_sec2) local ms2, rrr, sec_left, sub1, sub2; global glob_small_float; ms2 := clock_sec2; sub1 := t_end2 - t_start2; sub2 := t2 - t_start2; if sub1 = 0. then sec_left := 0. else if 0. < sub2 then rrr := sub1/sub2; sec_left := rrr*ms2 - ms2 else sec_left := 0. end if end if; sec_left end proc > # End Function number 26 > # Begin Function number 27 > comp_percent := proc(t_end2,t_start2, t2) > global glob_small_float; > local rrr, sub1, sub2; > sub1 := (t_end2-t_start2); > sub2 := (t2-t_start2); > if (sub2 > glob_small_float) then # if number 8 > rrr := (100.0*sub2)/sub1; > else > rrr := 0.0; > fi;# end if 8; > rrr; > end; comp_percent := proc(t_end2, t_start2, t2) local rrr, sub1, sub2; global glob_small_float; sub1 := t_end2 - t_start2; sub2 := t2 - t_start2; if glob_small_float < sub2 then rrr := 100.0*sub2/sub1 else rrr := 0. end if; rrr end proc > # End Function number 27 > # Begin Function number 28 > factorial_2 := proc(nnn) > nnn!; > end; factorial_2 := proc(nnn) nnn! end proc > # End Function number 28 > # Begin Function number 29 > factorial_1 := proc(nnn) > global glob_max_terms,array_fact_1; > local ret; > if (nnn <= glob_max_terms) then # if number 8 > if (array_fact_1[nnn] = 0) then # if number 9 > ret := factorial_2(nnn); > array_fact_1[nnn] := ret; > else > ret := array_fact_1[nnn]; > fi;# end if 9; > else > ret := factorial_2(nnn); > fi;# end if 8; > ret; > end; factorial_1 := proc(nnn) local ret; global glob_max_terms, array_fact_1; if nnn <= glob_max_terms then if array_fact_1[nnn] = 0 then ret := factorial_2(nnn); array_fact_1[nnn] := ret else ret := array_fact_1[nnn] end if else ret := factorial_2(nnn) end if; ret end proc > # End Function number 29 > # Begin Function number 30 > factorial_3 := proc(mmm,nnn) > global glob_max_terms,array_fact_2; > local ret; > if ((nnn <= glob_max_terms) and (mmm <= glob_max_terms)) then # if number 8 > if (array_fact_2[mmm,nnn] = 0) then # if number 9 > ret := factorial_1(mmm)/factorial_1(nnn); > array_fact_2[mmm,nnn] := ret; > else > ret := array_fact_2[mmm,nnn]; > fi;# end if 9; > else > ret := factorial_2(mmm)/factorial_2(nnn); > fi;# end if 8; > ret; > end; factorial_3 := proc(mmm, nnn) local ret; global glob_max_terms, array_fact_2; if nnn <= glob_max_terms and mmm <= glob_max_terms then if array_fact_2[mmm, nnn] = 0 then ret := factorial_1(mmm)/factorial_1(nnn); array_fact_2[mmm, nnn] := ret else ret := array_fact_2[mmm, nnn] end if else ret := factorial_2(mmm)/factorial_2(nnn) end if; ret end proc > # End Function number 30 > # Begin Function number 31 > convfp := proc(mmm) > (mmm); > end; convfp := proc(mmm) mmm end proc > # End Function number 31 > # Begin Function number 32 > convfloat := proc(mmm) > (mmm); > end; convfloat := proc(mmm) mmm end proc > # End Function number 32 > # Begin Function number 33 > elapsed_time_seconds := proc() > time(); > end; elapsed_time_seconds := proc() time() end proc > # End Function number 33 > # Begin Function number 34 > omniabs := proc(x) > abs(x); > end; omniabs := proc(x) abs(x) end proc > # End Function number 34 > # Begin Function number 35 > expt := proc(x,y) > (x^y); > end; expt := proc(x, y) x^y end proc > # End Function number 35 > # Begin Function number 36 > estimated_needed_step_error := proc(x_start,x_end,estimated_h,estimated_answer) > local desired_abs_gbl_error,range,estimated_steps,step_error; > global glob_desired_digits_correct,ALWAYS; > omniout_float(ALWAYS,"glob_desired_digits_correct",32,glob_desired_digits_correct,32,""); > desired_abs_gbl_error := expt(10.0,- glob_desired_digits_correct) * omniabs(estimated_answer); > omniout_float(ALWAYS,"desired_abs_gbl_error",32,desired_abs_gbl_error,32,""); > range := (x_end - x_start); > omniout_float(ALWAYS,"range",32,range,32,""); > estimated_steps := range / estimated_h; > omniout_float(ALWAYS,"estimated_steps",32,estimated_steps,32,""); > step_error := omniabs(desired_abs_gbl_error / estimated_steps); > omniout_float(ALWAYS,"step_error",32,step_error,32,""); > (step_error);; > end; estimated_needed_step_error := proc( x_start, x_end, estimated_h, estimated_answer) local desired_abs_gbl_error, range, estimated_steps, step_error; global glob_desired_digits_correct, ALWAYS; omniout_float(ALWAYS, "glob_desired_digits_correct", 32, glob_desired_digits_correct, 32, ""); desired_abs_gbl_error := expt(10.0, -glob_desired_digits_correct)*omniabs(estimated_answer); omniout_float(ALWAYS, "desired_abs_gbl_error", 32, desired_abs_gbl_error, 32, ""); range := x_end - x_start; omniout_float(ALWAYS, "range", 32, range, 32, ""); estimated_steps := range/estimated_h; omniout_float(ALWAYS, "estimated_steps", 32, estimated_steps, 32, ""); step_error := omniabs(desired_abs_gbl_error/estimated_steps); omniout_float(ALWAYS, "step_error", 32, step_error, 32, ""); step_error end proc > # End Function number 36 > #END ATS LIBRARY BLOCK > #BEGIN USER DEF BLOCK > #BEGIN USER DEF BLOCK > exact_soln_y := proc(x) > return(10.0 * (0.1 * x + 0.2) * arcsin(sqrt ( 0.1 * x + 0.2)) + 5.0 * sqrt( 0.1 * x + > 0.2) * sqrt( 0.8 - 0.1 * x) - 5.0 * arcsin(sqrt( 0.1 * x + 0.2))); > end; exact_soln_y := proc(x) return 10.0*(0.1*x + 0.2)*arcsin(sqrt(0.1*x + 0.2)) + 5.0*sqrt(0.1*x + 0.2)*sqrt(0.8 - 0.1*x) - 5.0*arcsin(sqrt(0.1*x + 0.2)) end proc > #END USER DEF BLOCK > #END USER DEF BLOCK > #END OUTFILE5 > # Begin Function number 2 > main := proc() > #BEGIN OUTFIEMAIN > local d1,d2,d3,d4,est_err_2,niii,done_once, > term,ord,order_diff,term_no,html_log_file,iiif,jjjf, > rows,r_order,sub_iter,calc_term,iii,temp_sum,current_iter, > x_start,x_end > ,it, log10norm, max_terms, opt_iter, tmp,subiter, est_needed_step_err,value3,min_value,est_answer,best_h,found_h; > global > glob_max_terms, > glob_iolevel, > ALWAYS, > INFO, > DEBUGL, > DEBUGMASSIVE, > #Top Generate Globals Decl > MAX_UNCHANGED, > glob_check_sign, > glob_desired_digits_correct, > glob_max_value3, > glob_ratio_of_radius, > glob_percent_done, > glob_subiter_method, > glob_log10normmin, > glob_total_exp_sec, > glob_optimal_expect_sec, > glob_html_log, > glob_good_digits, > glob_max_opt_iter, > glob_dump, > glob_djd_debug, > glob_display_flag, > glob_djd_debug2, > glob_sec_in_minute, > glob_min_in_hour, > glob_hours_in_day, > glob_days_in_year, > glob_sec_in_hour, > glob_sec_in_day, > glob_sec_in_year, > glob_almost_1, > glob_clock_sec, > glob_clock_start_sec, > glob_not_yet_finished, > glob_initial_pass, > glob_not_yet_start_msg, > glob_reached_optimal_h, > glob_optimal_done, > glob_disp_incr, > glob_h, > glob_hmax, > glob_hmin, > glob_hmin_init, > glob_large_float, > glob_last_good_h, > glob_look_poles, > glob_neg_h, > glob_display_interval, > glob_next_display, > glob_dump_analytic, > glob_log10_abserr, > glob_log10_relerr, > glob_abserr, > glob_relerr, > glob_max_hours, > glob_max_iter, > glob_max_rel_trunc_err, > glob_max_trunc_err, > glob_no_eqs, > glob_optimal_clock_start_sec, > glob_optimal_start, > glob_small_float, > glob_smallish_float, > glob_unchanged_h_cnt, > glob_warned, > glob_warned2, > glob_max_sec, > glob_orig_start_sec, > glob_start, > glob_curr_iter_when_opt, > glob_current_iter, > glob_iter, > glob_normmax, > glob_log10abserr, > glob_log10relerr, > glob_max_minutes, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_1, > array_const_0D0, > array_const_0D1, > array_const_0D2, > #END CONST > array_y_init, > array_norms, > array_fact_1, > array_pole, > array_1st_rel_error, > array_last_rel_error, > array_type_pole, > array_y, > array_x, > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4_a1, > array_tmp4, > array_tmp5, > array_m1, > array_y_higher, > array_y_higher_work, > array_y_higher_work2, > array_y_set_initial, > array_poles, > array_real_pole, > array_complex_pole, > array_fact_2, > glob_last; > glob_last; > ALWAYS := 1; > INFO := 2; > DEBUGL := 3; > DEBUGMASSIVE := 4; > glob_iolevel := INFO; > glob_max_terms := 30; > glob_iolevel := 5; > ALWAYS := 1; > INFO := 2; > DEBUGL := 3; > DEBUGMASSIVE := 4; > MAX_UNCHANGED := 10; > glob_check_sign := 1.0; > glob_desired_digits_correct := 8.0; > glob_max_value3 := 0.0; > glob_ratio_of_radius := 0.01; > glob_percent_done := 0.0; > glob_subiter_method := 3; > glob_log10normmin := 0.1; > glob_total_exp_sec := 0.1; > glob_optimal_expect_sec := 0.1; > glob_html_log := true; > glob_good_digits := 0; > glob_max_opt_iter := 10; > glob_dump := false; > glob_djd_debug := true; > glob_display_flag := true; > glob_djd_debug2 := true; > glob_sec_in_minute := 60; > glob_min_in_hour := 60; > glob_hours_in_day := 24; > glob_days_in_year := 365; > glob_sec_in_hour := 3600; > glob_sec_in_day := 86400; > glob_sec_in_year := 31536000; > glob_almost_1 := 0.9990; > glob_clock_sec := 0.0; > glob_clock_start_sec := 0.0; > glob_not_yet_finished := true; > glob_initial_pass := true; > glob_not_yet_start_msg := true; > glob_reached_optimal_h := false; > glob_optimal_done := false; > glob_disp_incr := 0.1; > glob_h := 0.1; > glob_hmax := 1.0; > glob_hmin := 0.00000000001; > glob_hmin_init := 0.001; > glob_large_float := 9.0e100; > glob_last_good_h := 0.1; > glob_look_poles := false; > glob_neg_h := false; > glob_display_interval := 0.0; > glob_next_display := 0.0; > glob_dump_analytic := false; > glob_log10_abserr := 0.1e-10; > glob_log10_relerr := 0.1e-10; > glob_abserr := 0.1e-10; > glob_relerr := 0.1e-10; > glob_max_hours := 0.0; > glob_max_iter := 1000; > glob_max_rel_trunc_err := 0.1e-10; > glob_max_trunc_err := 0.1e-10; > glob_no_eqs := 0; > glob_optimal_clock_start_sec := 0.0; > glob_optimal_start := 0.0; > glob_small_float := 0.1e-50; > glob_smallish_float := 0.1e-100; > glob_unchanged_h_cnt := 0; > glob_warned := false; > glob_warned2 := false; > glob_max_sec := 10000.0; > glob_orig_start_sec := 0.0; > glob_start := 0; > glob_curr_iter_when_opt := 0; > glob_current_iter := 0; > glob_iter := 0; > glob_normmax := 0.0; > glob_log10abserr := 0.0; > glob_log10relerr := 0.0; > glob_max_minutes := 0.0; > #Write Set Defaults > glob_orig_start_sec := elapsed_time_seconds(); > MAX_UNCHANGED := 10; > glob_curr_iter_when_opt := 0; > glob_display_flag := true; > glob_no_eqs := 1; > glob_iter := -1; > opt_iter := -1; > glob_max_iter := 50000; > glob_max_hours := 0.0; > glob_max_minutes := 15.0; > omniout_str(ALWAYS,"##############ECHO OF PROBLEM#################"); > omniout_str(ALWAYS,"##############temp/arcsin_sqrtpostode.ode#################"); > omniout_str(ALWAYS,"diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));"); > omniout_str(ALWAYS,"!"); > omniout_str(ALWAYS,"#BEGIN FIRST INPUT BLOCK"); > omniout_str(ALWAYS,"Digits:=32;"); > omniout_str(ALWAYS,"max_terms:=30;"); > omniout_str(ALWAYS,"!"); > omniout_str(ALWAYS,"#END FIRST INPUT BLOCK"); > omniout_str(ALWAYS,"#BEGIN SECOND INPUT BLOCK"); > omniout_str(ALWAYS,"x_start := 0.0;"); > omniout_str(ALWAYS,"x_end := 0.5 ;"); > omniout_str(ALWAYS,"array_y_init[0 + 1] := exact_soln_y(x_start);"); > omniout_str(ALWAYS,"glob_h := 0.05;"); > omniout_str(ALWAYS,"glob_look_poles := true;"); > omniout_str(ALWAYS,"glob_max_iter := 1000000;"); > omniout_str(ALWAYS,"glob_display_interval := 0.1;"); > omniout_str(ALWAYS,"glob_max_minutes := 10;"); > omniout_str(ALWAYS,"#END SECOND INPUT BLOCK"); > omniout_str(ALWAYS,"#BEGIN OVERRIDE BLOCK"); > omniout_str(ALWAYS,"glob_desired_digits_correct:=10;"); > omniout_str(ALWAYS,"glob_display_interval:=0.001;"); > omniout_str(ALWAYS,"glob_look_poles:=true;"); > omniout_str(ALWAYS,"glob_max_iter:=10000000;"); > omniout_str(ALWAYS,"glob_max_minutes:=3;"); > omniout_str(ALWAYS,"#END OVERRIDE BLOCK"); > omniout_str(ALWAYS,"!"); > omniout_str(ALWAYS,"#BEGIN USER DEF BLOCK"); > omniout_str(ALWAYS,"exact_soln_y := proc(x)"); > omniout_str(ALWAYS,"return(10.0 * (0.1 * x + 0.2) * arcsin(sqrt ( 0.1 * x + 0.2)) + 5.0 * sqrt( 0.1 * x +"); > omniout_str(ALWAYS,"0.2) * sqrt( 0.8 - 0.1 * x) - 5.0 * arcsin(sqrt( 0.1 * x + 0.2)));"); > omniout_str(ALWAYS,"end;"); > omniout_str(ALWAYS,"#END USER DEF BLOCK"); > omniout_str(ALWAYS,"#######END OF ECHO OF PROBLEM#################"); > glob_unchanged_h_cnt := 0; > glob_warned := false; > glob_warned2 := false; > glob_small_float := 1.0e-200; > glob_smallish_float := 1.0e-64; > glob_large_float := 1.0e100; > glob_almost_1 := 0.99; > glob_log10_abserr := -8.0; > glob_log10_relerr := -8.0; > glob_hmax := 0.01; > #BEGIN FIRST INPUT BLOCK > #BEGIN FIRST INPUT BLOCK > Digits:=32; > max_terms:=30; > #END FIRST INPUT BLOCK > #START OF INITS AFTER INPUT BLOCK > glob_max_terms := max_terms; > glob_html_log := true; > #END OF INITS AFTER INPUT BLOCK > array_y_init:= Array(0..(max_terms + 1),[]); > array_norms:= Array(0..(max_terms + 1),[]); > array_fact_1:= Array(0..(max_terms + 1),[]); > array_pole:= Array(0..(max_terms + 1),[]); > array_1st_rel_error:= Array(0..(max_terms + 1),[]); > array_last_rel_error:= Array(0..(max_terms + 1),[]); > array_type_pole:= Array(0..(max_terms + 1),[]); > array_y:= Array(0..(max_terms + 1),[]); > array_x:= Array(0..(max_terms + 1),[]); > array_tmp0:= Array(0..(max_terms + 1),[]); > array_tmp1:= Array(0..(max_terms + 1),[]); > array_tmp2:= Array(0..(max_terms + 1),[]); > array_tmp3:= Array(0..(max_terms + 1),[]); > array_tmp4_a1:= Array(0..(max_terms + 1),[]); > array_tmp4:= Array(0..(max_terms + 1),[]); > array_tmp5:= Array(0..(max_terms + 1),[]); > array_m1:= Array(0..(max_terms + 1),[]); > array_y_higher := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_y_higher_work := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_y_higher_work2 := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_y_set_initial := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_poles := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_real_pole := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_complex_pole := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_fact_2 := Array(0..(max_terms+ 1) ,(0..max_terms+ 1),[]); > term := 1; > while (term <= max_terms) do # do number 2 > array_y_init[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_norms[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_fact_1[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_pole[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_1st_rel_error[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_last_rel_error[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_type_pole[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_y[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_x[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp0[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp1[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp2[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp3[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp4_a1[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp4[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_tmp5[term] := 0.0; > term := term + 1; > od;# end do number 2; > term := 1; > while (term <= max_terms) do # do number 2 > array_m1[term] := 0.0; > term := term + 1; > od;# end do number 2; > ord := 1; > while (ord <=2) do # do number 2 > term := 1; > while (term <= max_terms) do # do number 3 > array_y_higher[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=2) do # do number 2 > term := 1; > while (term <= max_terms) do # do number 3 > array_y_higher_work[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=2) do # do number 2 > term := 1; > while (term <= max_terms) do # do number 3 > array_y_higher_work2[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=2) do # do number 2 > term := 1; > while (term <= max_terms) do # do number 3 > array_y_set_initial[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=1) do # do number 2 > term := 1; > while (term <= 3) do # do number 3 > array_poles[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=1) do # do number 2 > term := 1; > while (term <= 3) do # do number 3 > array_real_pole[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=1) do # do number 2 > term := 1; > while (term <= 3) do # do number 3 > array_complex_pole[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > ord := 1; > while (ord <=max_terms) do # do number 2 > term := 1; > while (term <= max_terms) do # do number 3 > array_fact_2[ord,term] := 0.0; > term := term + 1; > od;# end do number 3; > ord := ord + 1; > od;# end do number 2; > #BEGIN ARRAYS DEFINED AND INITIALIZATED > array_y := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_y[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_x := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_x[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp0 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp0[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp2 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp2[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp3 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp3[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp4_a1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp4_a1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp4 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp4[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_tmp5 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_tmp5[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_m1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_m1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_const_1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_const_1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_const_1[1] := 1; > array_const_0D0 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_const_0D0[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_const_0D0[1] := 0.0; > array_const_0D1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_const_0D1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_const_0D1[1] := 0.1; > array_const_0D2 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms + 1) do # do number 2 > array_const_0D2[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_const_0D2[1] := 0.2; > array_m1 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while (term <= max_terms) do # do number 2 > array_m1[term] := 0.0; > term := term + 1; > od;# end do number 2; > array_m1[1] := -1.0; > #END ARRAYS DEFINED AND INITIALIZATED > #Initing Factorial Tables > iiif := 0; > while (iiif <= glob_max_terms) do # do number 2 > jjjf := 0; > while (jjjf <= glob_max_terms) do # do number 3 > array_fact_1[iiif] := 0; > array_fact_2[iiif,jjjf] := 0; > jjjf := jjjf + 1; > od;# end do number 3; > iiif := iiif + 1; > od;# end do number 2; > #Done Initing Factorial Tables > #TOP SECOND INPUT BLOCK > #BEGIN SECOND INPUT BLOCK > #END FIRST INPUT BLOCK > #BEGIN SECOND INPUT BLOCK > x_start := 0.0; > x_end := 0.5 ; > array_y_init[0 + 1] := exact_soln_y(x_start); > glob_h := 0.05; > glob_look_poles := true; > glob_max_iter := 1000000; > glob_display_interval := 0.1; > glob_max_minutes := 10; > #END SECOND INPUT BLOCK > #BEGIN OVERRIDE BLOCK > glob_desired_digits_correct:=10; > glob_display_interval:=0.001; > glob_look_poles:=true; > glob_max_iter:=10000000; > glob_max_minutes:=3; > #END OVERRIDE BLOCK > #END SECOND INPUT BLOCK > #BEGIN INITS AFTER SECOND INPUT BLOCK > glob_last_good_h := glob_h; > glob_max_terms := max_terms; > glob_max_sec := convfloat(60.0) * convfloat(glob_max_minutes) + convfloat(3600.0) * convfloat(glob_max_hours); > glob_abserr := expt(10.0 , (glob_log10_abserr)); > glob_relerr := expt(10.0 , (glob_log10_relerr)); > if (glob_h > 0.0) then # if number 1 > glob_neg_h := false; > glob_display_interval := omniabs(glob_display_interval); > else > glob_neg_h := true; > glob_display_interval := -omniabs(glob_display_interval); > fi;# end if 1; > chk_data(); > #AFTER INITS AFTER SECOND INPUT BLOCK > array_y_set_initial[1,1] := true; > array_y_set_initial[1,2] := false; > array_y_set_initial[1,3] := false; > array_y_set_initial[1,4] := false; > array_y_set_initial[1,5] := false; > array_y_set_initial[1,6] := false; > array_y_set_initial[1,7] := false; > array_y_set_initial[1,8] := false; > array_y_set_initial[1,9] := false; > array_y_set_initial[1,10] := false; > array_y_set_initial[1,11] := false; > array_y_set_initial[1,12] := false; > array_y_set_initial[1,13] := false; > array_y_set_initial[1,14] := false; > array_y_set_initial[1,15] := false; > array_y_set_initial[1,16] := false; > array_y_set_initial[1,17] := false; > array_y_set_initial[1,18] := false; > array_y_set_initial[1,19] := false; > array_y_set_initial[1,20] := false; > array_y_set_initial[1,21] := false; > array_y_set_initial[1,22] := false; > array_y_set_initial[1,23] := false; > array_y_set_initial[1,24] := false; > array_y_set_initial[1,25] := false; > array_y_set_initial[1,26] := false; > array_y_set_initial[1,27] := false; > array_y_set_initial[1,28] := false; > array_y_set_initial[1,29] := false; > array_y_set_initial[1,30] := false; > #BEGIN OPTIMIZE CODE > omniout_str(ALWAYS,"START of Optimize"); > #Start Series -- INITIALIZE FOR OPTIMIZE > glob_check_sign := check_sign(x_start,x_end); > glob_h := check_sign(x_start,x_end); > if (glob_display_interval < glob_h) then # if number 2 > glob_h := glob_display_interval; > fi;# end if 2; > found_h := -1.0; > best_h := 0.0; > min_value := glob_large_float; > est_answer := est_size_answer(); > opt_iter := 1; > while ((opt_iter <= 20) and (found_h < 0.0)) do # do number 2 > omniout_int(ALWAYS,"opt_iter",32,opt_iter,4,""); > array_x[1] := x_start; > array_x[2] := glob_h; > glob_next_display := x_start; > order_diff := 1; > #Start Series array_y > term_no := 1; > while (term_no <= order_diff) do # do number 3 > array_y[term_no] := array_y_init[term_no] * expt(glob_h , (term_no - 1)) / factorial_1(term_no - 1); > term_no := term_no + 1; > od;# end do number 3; > rows := order_diff; > r_order := 1; > while (r_order <= rows) do # do number 3 > term_no := 1; > while (term_no <= (rows - r_order + 1)) do # do number 4 > it := term_no + r_order - 1; > array_y_higher[r_order,term_no] := array_y_init[it]* expt(glob_h , (term_no - 1)) / ((factorial_1(term_no - 1))); > term_no := term_no + 1; > od;# end do number 4; > r_order := r_order + 1; > od;# end do number 3 > ; > atomall(); > est_needed_step_err := estimated_needed_step_error(x_start,x_end,glob_h,est_answer); > omniout_float(ALWAYS,"est_needed_step_err",32,est_needed_step_err,16,""); > value3 := test_suggested_h(); > omniout_float(ALWAYS,"value3",32,value3,32,""); > if ((value3 < est_needed_step_err) and (found_h < 0.0)) then # if number 2 > best_h := glob_h; > found_h := 1.0; > fi;# end if 2; > omniout_float(ALWAYS,"best_h",32,best_h,32,""); > opt_iter := opt_iter + 1; > glob_h := glob_h * 0.5; > od;# end do number 2; > if (found_h > 0.0) then # if number 2 > glob_h := best_h ; > else > omniout_str(ALWAYS,"No increment to obtain desired accuracy found"); > fi;# end if 2; > #END OPTIMIZE CODE > if (glob_html_log) then # if number 2 > html_log_file := fopen("html/entry.html",WRITE,TEXT); > fi;# end if 2; > #BEGIN SOLUTION CODE > if (found_h > 0.0) then # if number 2 > omniout_str(ALWAYS,"START of Soultion"); > #Start Series -- INITIALIZE FOR SOLUTION > array_x[1] := x_start; > array_x[2] := glob_h; > glob_next_display := x_start; > order_diff := 1; > #Start Series array_y > term_no := 1; > while (term_no <= order_diff) do # do number 2 > array_y[term_no] := array_y_init[term_no] * expt(glob_h , (term_no - 1)) / factorial_1(term_no - 1); > term_no := term_no + 1; > od;# end do number 2; > rows := order_diff; > r_order := 1; > while (r_order <= rows) do # do number 2 > term_no := 1; > while (term_no <= (rows - r_order + 1)) do # do number 3 > it := term_no + r_order - 1; > array_y_higher[r_order,term_no] := array_y_init[it]* expt(glob_h , (term_no - 1)) / ((factorial_1(term_no - 1))); > term_no := term_no + 1; > od;# end do number 3; > r_order := r_order + 1; > od;# end do number 2 > ; > current_iter := 1; > glob_clock_start_sec := elapsed_time_seconds(); > glob_log10normmin := -glob_large_float ; > if (omniabs(array_y_higher[1,1]) > glob_small_float) then # if number 3 > tmp := omniabs(array_y_higher[1,1]); > log10norm := (log10(tmp)); > if (log10norm < glob_log10normmin) then # if number 4 > glob_log10normmin := log10norm; > fi;# end if 4 > fi;# end if 3; > display_alot(current_iter) > ; > glob_clock_sec := elapsed_time_seconds(); > glob_current_iter := 0; > glob_iter := 0; > omniout_str(DEBUGL," "); > glob_reached_optimal_h := true; > glob_optimal_clock_start_sec := elapsed_time_seconds(); > while ((glob_current_iter < glob_max_iter) and ((glob_check_sign * array_x[1]) < (glob_check_sign * x_end )) and ((convfloat(glob_clock_sec) - convfloat(glob_orig_start_sec)) < convfloat(glob_max_sec))) do # do number 2 > #left paren 0001C > if (reached_interval()) then # if number 3 > omniout_str(INFO," "); > omniout_str(INFO,"TOP MAIN SOLVE Loop"); > fi;# end if 3; > glob_iter := glob_iter + 1; > glob_clock_sec := elapsed_time_seconds(); > glob_current_iter := glob_current_iter + 1; > atomall(); > if (glob_look_poles) then # if number 3 > #left paren 0004C > check_for_pole(); > fi;# end if 3;#was right paren 0004C > if (reached_interval()) then # if number 3 > glob_next_display := glob_next_display + glob_display_interval; > fi;# end if 3; > array_x[1] := array_x[1] + glob_h; > array_x[2] := glob_h; > #Jump Series array_y > order_diff := 1; > #START PART 1 SUM AND ADJUST > #START SUM AND ADJUST EQ =1 > #sum_and_adjust array_y > #BEFORE ADJUST SUBSERIES EQ =1 > ord := 2; > calc_term := 1; > #adjust_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > array_y_higher_work[2,iii] := array_y_higher[2,iii] / expt(glob_h , (calc_term - 1)) / factorial_3(iii - calc_term , iii - 1); > iii := iii - 1; > od;# end do number 3; > #AFTER ADJUST SUBSERIES EQ =1 > #BEFORE SUM SUBSERIES EQ =1 > temp_sum := 0.0; > ord := 2; > calc_term := 1; > #sum_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > temp_sum := temp_sum + array_y_higher_work[ord,iii]; > iii := iii - 1; > od;# end do number 3; > array_y_higher_work2[ord,calc_term] := temp_sum * expt(glob_h , (calc_term - 1)) / (factorial_1(calc_term - 1)); > #AFTER SUM SUBSERIES EQ =1 > #BEFORE ADJUST SUBSERIES EQ =1 > ord := 1; > calc_term := 2; > #adjust_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > array_y_higher_work[1,iii] := array_y_higher[1,iii] / expt(glob_h , (calc_term - 1)) / factorial_3(iii - calc_term , iii - 1); > iii := iii - 1; > od;# end do number 3; > #AFTER ADJUST SUBSERIES EQ =1 > #BEFORE SUM SUBSERIES EQ =1 > temp_sum := 0.0; > ord := 1; > calc_term := 2; > #sum_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > temp_sum := temp_sum + array_y_higher_work[ord,iii]; > iii := iii - 1; > od;# end do number 3; > array_y_higher_work2[ord,calc_term] := temp_sum * expt(glob_h , (calc_term - 1)) / (factorial_1(calc_term - 1)); > #AFTER SUM SUBSERIES EQ =1 > #BEFORE ADJUST SUBSERIES EQ =1 > ord := 1; > calc_term := 1; > #adjust_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > array_y_higher_work[1,iii] := array_y_higher[1,iii] / expt(glob_h , (calc_term - 1)) / factorial_3(iii - calc_term , iii - 1); > iii := iii - 1; > od;# end do number 3; > #AFTER ADJUST SUBSERIES EQ =1 > #BEFORE SUM SUBSERIES EQ =1 > temp_sum := 0.0; > ord := 1; > calc_term := 1; > #sum_subseriesarray_y > iii := glob_max_terms; > while (iii >= calc_term) do # do number 3 > temp_sum := temp_sum + array_y_higher_work[ord,iii]; > iii := iii - 1; > od;# end do number 3; > array_y_higher_work2[ord,calc_term] := temp_sum * expt(glob_h , (calc_term - 1)) / (factorial_1(calc_term - 1)); > #AFTER SUM SUBSERIES EQ =1 > #END SUM AND ADJUST EQ =1 > #END PART 1 > #START PART 2 MOVE TERMS to REGULAR Array > term_no := glob_max_terms; > while (term_no >= 1) do # do number 3 > array_y[term_no] := array_y_higher_work2[1,term_no]; > ord := 1; > while (ord <= order_diff) do # do number 4 > array_y_higher[ord,term_no] := array_y_higher_work2[ord,term_no]; > ord := ord + 1; > od;# end do number 4; > term_no := term_no - 1; > od;# end do number 3; > #END PART 2 HEVE MOVED TERMS to REGULAR Array > display_alot(current_iter) > ; > od;# end do number 2;#right paren 0001C > omniout_str(ALWAYS,"Finished!"); > if (glob_iter >= glob_max_iter) then # if number 3 > omniout_str(ALWAYS,"Maximum Iterations Reached before Solution Completed!"); > fi;# end if 3; > if (elapsed_time_seconds() - convfloat(glob_orig_start_sec) >= convfloat(glob_max_sec )) then # if number 3 > omniout_str(ALWAYS,"Maximum Time Reached before Solution Completed!"); > fi;# end if 3; > glob_clock_sec := elapsed_time_seconds(); > omniout_str(INFO,"diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));"); > omniout_int(INFO,"Iterations ",32,glob_iter,4," ") > ; > prog_report(x_start,x_end); > if (glob_html_log) then # if number 3 > logstart(html_log_file); > logitem_str(html_log_file,"2012-12-14T20:02:02-06:00") > ; > logitem_str(html_log_file,"Maple") > ; > logitem_str(html_log_file,"arcsin_sqrt") > ; > logitem_str(html_log_file,"diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));") > ; > logitem_float(html_log_file,x_start) > ; > logitem_float(html_log_file,x_end) > ; > logitem_float(html_log_file,array_x[1]) > ; > logitem_float(html_log_file,glob_h) > ; > logitem_integer(html_log_file,Digits) > ; > ; > logitem_good_digits(html_log_file,array_last_rel_error[1]) > ; > logitem_integer(html_log_file,glob_max_terms) > ; > logitem_float(html_log_file,array_1st_rel_error[1]) > ; > logitem_float(html_log_file,array_last_rel_error[1]) > ; > logitem_integer(html_log_file,glob_iter) > ; > logitem_pole(html_log_file,array_type_pole[1]) > ; > if (array_type_pole[1] = 1 or array_type_pole[1] = 2) then # if number 4 > logitem_float(html_log_file,array_pole[1]) > ; > logitem_float(html_log_file,array_pole[2]) > ; > 0; > else > logitem_str(html_log_file,"NA") > ; > logitem_str(html_log_file,"NA") > ; > 0; > fi;# end if 4; > logitem_time(html_log_file,convfloat(glob_clock_sec)) > ; > if (glob_percent_done < 100.0) then # if number 4 > logitem_time(html_log_file,convfloat(glob_total_exp_sec)) > ; > 0; > else > logitem_str(html_log_file,"Done") > ; > 0; > fi;# end if 4; > log_revs(html_log_file," 151 ") > ; > logitem_str(html_log_file,"arcsin_sqrt diffeq.mxt") > ; > logitem_str(html_log_file,"arcsin_sqrt maple results") > ; > logitem_str(html_log_file,"Languages compared") > ; > logend(html_log_file) > ; > ; > fi;# end if 3; > if (glob_html_log) then # if number 3 > fclose(html_log_file); > fi;# end if 3 > ; > ;; > fi;# end if 2 > #END OUTFILEMAIN > end; main := proc() local d1, d2, d3, d4, est_err_2, niii, done_once, term, ord, order_diff, term_no, html_log_file, iiif, jjjf, rows, r_order, sub_iter, calc_term, iii, temp_sum, current_iter, x_start, x_end, it, log10norm, max_terms, opt_iter, tmp, subiter, est_needed_step_err, value3, min_value, est_answer, best_h, found_h; global glob_max_terms, glob_iolevel, ALWAYS, INFO, DEBUGL, DEBUGMASSIVE, MAX_UNCHANGED, glob_check_sign, glob_desired_digits_correct, glob_max_value3, glob_ratio_of_radius, glob_percent_done, glob_subiter_method, glob_log10normmin, glob_total_exp_sec, glob_optimal_expect_sec, glob_html_log, glob_good_digits, glob_max_opt_iter, glob_dump, glob_djd_debug, glob_display_flag, glob_djd_debug2, glob_sec_in_minute, glob_min_in_hour, glob_hours_in_day, glob_days_in_year, glob_sec_in_hour, glob_sec_in_day, glob_sec_in_year, glob_almost_1, glob_clock_sec, glob_clock_start_sec, glob_not_yet_finished, glob_initial_pass, glob_not_yet_start_msg, glob_reached_optimal_h, glob_optimal_done, glob_disp_incr, glob_h, glob_hmax, glob_hmin, glob_hmin_init, glob_large_float, glob_last_good_h, glob_look_poles, glob_neg_h, glob_display_interval, glob_next_display, glob_dump_analytic, glob_log10_abserr, glob_log10_relerr, glob_abserr, glob_relerr, glob_max_hours, glob_max_iter, glob_max_rel_trunc_err, glob_max_trunc_err, glob_no_eqs, glob_optimal_clock_start_sec, glob_optimal_start, glob_small_float, glob_smallish_float, glob_unchanged_h_cnt, glob_warned, glob_warned2, glob_max_sec, glob_orig_start_sec, glob_start, glob_curr_iter_when_opt, glob_current_iter, glob_iter, glob_normmax, glob_log10abserr, glob_log10relerr, glob_max_minutes, array_const_1, array_const_0D0, array_const_0D1, array_const_0D2, array_y_init, array_norms, array_fact_1, array_pole, array_1st_rel_error, array_last_rel_error, array_type_pole, array_y, array_x, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4_a1, array_tmp4, array_tmp5, array_m1, array_y_higher, array_y_higher_work, array_y_higher_work2, array_y_set_initial, array_poles, array_real_pole, array_complex_pole, array_fact_2, glob_last; glob_last; ALWAYS := 1; INFO := 2; DEBUGL := 3; DEBUGMASSIVE := 4; glob_iolevel := INFO; glob_max_terms := 30; glob_iolevel := 5; ALWAYS := 1; INFO := 2; DEBUGL := 3; DEBUGMASSIVE := 4; MAX_UNCHANGED := 10; glob_check_sign := 1.0; glob_desired_digits_correct := 8.0; glob_max_value3 := 0.; glob_ratio_of_radius := 0.01; glob_percent_done := 0.; glob_subiter_method := 3; glob_log10normmin := 0.1; glob_total_exp_sec := 0.1; glob_optimal_expect_sec := 0.1; glob_html_log := true; glob_good_digits := 0; glob_max_opt_iter := 10; glob_dump := false; glob_djd_debug := true; glob_display_flag := true; glob_djd_debug2 := true; glob_sec_in_minute := 60; glob_min_in_hour := 60; glob_hours_in_day := 24; glob_days_in_year := 365; glob_sec_in_hour := 3600; glob_sec_in_day := 86400; glob_sec_in_year := 31536000; glob_almost_1 := 0.9990; glob_clock_sec := 0.; glob_clock_start_sec := 0.; glob_not_yet_finished := true; glob_initial_pass := true; glob_not_yet_start_msg := true; glob_reached_optimal_h := false; glob_optimal_done := false; glob_disp_incr := 0.1; glob_h := 0.1; glob_hmax := 1.0; glob_hmin := 0.1*10^(-10); glob_hmin_init := 0.001; glob_large_float := 0.90*10^101; glob_last_good_h := 0.1; glob_look_poles := false; glob_neg_h := false; glob_display_interval := 0.; glob_next_display := 0.; glob_dump_analytic := false; glob_log10_abserr := 0.1*10^(-10); glob_log10_relerr := 0.1*10^(-10); glob_abserr := 0.1*10^(-10); glob_relerr := 0.1*10^(-10); glob_max_hours := 0.; glob_max_iter := 1000; glob_max_rel_trunc_err := 0.1*10^(-10); glob_max_trunc_err := 0.1*10^(-10); glob_no_eqs := 0; glob_optimal_clock_start_sec := 0.; glob_optimal_start := 0.; glob_small_float := 0.1*10^(-50); glob_smallish_float := 0.1*10^(-100); glob_unchanged_h_cnt := 0; glob_warned := false; glob_warned2 := false; glob_max_sec := 10000.0; glob_orig_start_sec := 0.; glob_start := 0; glob_curr_iter_when_opt := 0; glob_current_iter := 0; glob_iter := 0; glob_normmax := 0.; glob_log10abserr := 0.; glob_log10relerr := 0.; glob_max_minutes := 0.; glob_orig_start_sec := elapsed_time_seconds(); MAX_UNCHANGED := 10; glob_curr_iter_when_opt := 0; glob_display_flag := true; glob_no_eqs := 1; glob_iter := -1; opt_iter := -1; glob_max_iter := 50000; glob_max_hours := 0.; glob_max_minutes := 15.0; omniout_str(ALWAYS, "##############ECHO OF PROBLEM#################"); omniout_str(ALWAYS, "##############temp/arcsin_sqrtpostode.ode#################"); omniout_str(ALWAYS, "diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));") ; omniout_str(ALWAYS, "!"); omniout_str(ALWAYS, "#BEGIN FIRST INPUT BLOCK"); omniout_str(ALWAYS, "Digits:=32;"); omniout_str(ALWAYS, "max_terms:=30;"); omniout_str(ALWAYS, "!"); omniout_str(ALWAYS, "#END FIRST INPUT BLOCK"); omniout_str(ALWAYS, "#BEGIN SECOND INPUT BLOCK"); omniout_str(ALWAYS, "x_start := 0.0;"); omniout_str(ALWAYS, "x_end := 0.5 ;"); omniout_str(ALWAYS, "array_y_init[0 + 1] := exact_soln_y(x_start);"); omniout_str(ALWAYS, "glob_h := 0.05;"); omniout_str(ALWAYS, "glob_look_poles := true;"); omniout_str(ALWAYS, "glob_max_iter := 1000000;"); omniout_str(ALWAYS, "glob_display_interval := 0.1;"); omniout_str(ALWAYS, "glob_max_minutes := 10;"); omniout_str(ALWAYS, "#END SECOND INPUT BLOCK"); omniout_str(ALWAYS, "#BEGIN OVERRIDE BLOCK"); omniout_str(ALWAYS, "glob_desired_digits_correct:=10;"); omniout_str(ALWAYS, "glob_display_interval:=0.001;"); omniout_str(ALWAYS, "glob_look_poles:=true;"); omniout_str(ALWAYS, "glob_max_iter:=10000000;"); omniout_str(ALWAYS, "glob_max_minutes:=3;"); omniout_str(ALWAYS, "#END OVERRIDE BLOCK"); omniout_str(ALWAYS, "!"); omniout_str(ALWAYS, "#BEGIN USER DEF BLOCK"); omniout_str(ALWAYS, "exact_soln_y := proc(x)"); omniout_str(ALWAYS, "return(10.0 * (0.1 * x + 0.2) * arcsin(sqrt ( 0.\ 1 * x + 0.2)) + 5.0 * sqrt( 0.1 * x +"); omniout_str(ALWAYS, "0.2) * sqrt( 0.8 - 0.1 * x) - 5.0 * arcsin(sqrt(\ 0.1 * x + 0.2)));"); omniout_str(ALWAYS, "end;"); omniout_str(ALWAYS, "#END USER DEF BLOCK"); omniout_str(ALWAYS, "#######END OF ECHO OF PROBLEM#################"); glob_unchanged_h_cnt := 0; glob_warned := false; glob_warned2 := false; glob_small_float := 0.10*10^(-199); glob_smallish_float := 0.10*10^(-63); glob_large_float := 0.10*10^101; glob_almost_1 := 0.99; glob_log10_abserr := -8.0; glob_log10_relerr := -8.0; glob_hmax := 0.01; Digits := 32; max_terms := 30; glob_max_terms := max_terms; glob_html_log := true; array_y_init := Array(0 .. max_terms + 1, []); array_norms := Array(0 .. max_terms + 1, []); array_fact_1 := Array(0 .. max_terms + 1, []); array_pole := Array(0 .. max_terms + 1, []); array_1st_rel_error := Array(0 .. max_terms + 1, []); array_last_rel_error := Array(0 .. max_terms + 1, []); array_type_pole := Array(0 .. max_terms + 1, []); array_y := Array(0 .. max_terms + 1, []); array_x := Array(0 .. max_terms + 1, []); array_tmp0 := Array(0 .. max_terms + 1, []); array_tmp1 := Array(0 .. max_terms + 1, []); array_tmp2 := Array(0 .. max_terms + 1, []); array_tmp3 := Array(0 .. max_terms + 1, []); array_tmp4_a1 := Array(0 .. max_terms + 1, []); array_tmp4 := Array(0 .. max_terms + 1, []); array_tmp5 := Array(0 .. max_terms + 1, []); array_m1 := Array(0 .. max_terms + 1, []); array_y_higher := Array(0 .. 3, 0 .. max_terms + 1, []); array_y_higher_work := Array(0 .. 3, 0 .. max_terms + 1, []); array_y_higher_work2 := Array(0 .. 3, 0 .. max_terms + 1, []); array_y_set_initial := Array(0 .. 3, 0 .. max_terms + 1, []); array_poles := Array(0 .. 2, 0 .. 4, []); array_real_pole := Array(0 .. 2, 0 .. 4, []); array_complex_pole := Array(0 .. 2, 0 .. 4, []); array_fact_2 := Array(0 .. max_terms + 1, 0 .. max_terms + 1, []); term := 1; while term <= max_terms do array_y_init[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_norms[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_fact_1[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_pole[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_1st_rel_error[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_last_rel_error[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_type_pole[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_y[term] := 0.; term := term + 1 end do ; term := 1; while term <= max_terms do array_x[term] := 0.; term := term + 1 end do ; term := 1; while term <= max_terms do array_tmp0[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp1[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp2[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp3[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp4_a1[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp4[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_tmp5[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_m1[term] := 0.; term := term + 1 end do; ord := 1; while ord <= 2 do term := 1; while term <= max_terms do array_y_higher[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 2 do term := 1; while term <= max_terms do array_y_higher_work[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 2 do term := 1; while term <= max_terms do array_y_higher_work2[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 2 do term := 1; while term <= max_terms do array_y_set_initial[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 1 do term := 1; while term <= 3 do array_poles[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 1 do term := 1; while term <= 3 do array_real_pole[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= 1 do term := 1; while term <= 3 do array_complex_pole[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; ord := 1; while ord <= max_terms do term := 1; while term <= max_terms do array_fact_2[ord, term] := 0.; term := term + 1 end do; ord := ord + 1 end do; array_y := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_y[term] := 0.; term := term + 1 end do; array_x := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_x[term] := 0.; term := term + 1 end do; array_tmp0 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp0[term] := 0.; term := term + 1 end do; array_tmp1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp1[term] := 0.; term := term + 1 end do; array_tmp2 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp2[term] := 0.; term := term + 1 end do; array_tmp3 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp3[term] := 0.; term := term + 1 end do; array_tmp4_a1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp4_a1[term] := 0.; term := term + 1 end do; array_tmp4 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp4[term] := 0.; term := term + 1 end do; array_tmp5 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp5[term] := 0.; term := term + 1 end do; array_m1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_m1[term] := 0.; term := term + 1 end do; array_const_1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_const_1[term] := 0.; term := term + 1 end do; array_const_1[1] := 1; array_const_0D0 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_const_0D0[term] := 0.; term := term + 1 end do; array_const_0D0[1] := 0.; array_const_0D1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_const_0D1[term] := 0.; term := term + 1 end do; array_const_0D1[1] := 0.1; array_const_0D2 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_const_0D2[term] := 0.; term := term + 1 end do; array_const_0D2[1] := 0.2; array_m1 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms do array_m1[term] := 0.; term := term + 1 end do; array_m1[1] := -1.0; iiif := 0; while iiif <= glob_max_terms do jjjf := 0; while jjjf <= glob_max_terms do array_fact_1[iiif] := 0; array_fact_2[iiif, jjjf] := 0; jjjf := jjjf + 1 end do; iiif := iiif + 1 end do; x_start := 0.; x_end := 0.5; array_y_init[1] := exact_soln_y(x_start); glob_h := 0.05; glob_look_poles := true; glob_max_iter := 1000000; glob_display_interval := 0.1; glob_max_minutes := 10; glob_desired_digits_correct := 10; glob_display_interval := 0.001; glob_look_poles := true; glob_max_iter := 10000000; glob_max_minutes := 3; glob_last_good_h := glob_h; glob_max_terms := max_terms; glob_max_sec := convfloat(60.0)*convfloat(glob_max_minutes) + convfloat(3600.0)*convfloat(glob_max_hours); glob_abserr := expt(10.0, glob_log10_abserr); glob_relerr := expt(10.0, glob_log10_relerr); if 0. < glob_h then glob_neg_h := false; glob_display_interval := omniabs(glob_display_interval) else glob_neg_h := true; glob_display_interval := -omniabs(glob_display_interval) end if; chk_data(); array_y_set_initial[1, 1] := true; array_y_set_initial[1, 2] := false; array_y_set_initial[1, 3] := false; array_y_set_initial[1, 4] := false; array_y_set_initial[1, 5] := false; array_y_set_initial[1, 6] := false; array_y_set_initial[1, 7] := false; array_y_set_initial[1, 8] := false; array_y_set_initial[1, 9] := false; array_y_set_initial[1, 10] := false; array_y_set_initial[1, 11] := false; array_y_set_initial[1, 12] := false; array_y_set_initial[1, 13] := false; array_y_set_initial[1, 14] := false; array_y_set_initial[1, 15] := false; array_y_set_initial[1, 16] := false; array_y_set_initial[1, 17] := false; array_y_set_initial[1, 18] := false; array_y_set_initial[1, 19] := false; array_y_set_initial[1, 20] := false; array_y_set_initial[1, 21] := false; array_y_set_initial[1, 22] := false; array_y_set_initial[1, 23] := false; array_y_set_initial[1, 24] := false; array_y_set_initial[1, 25] := false; array_y_set_initial[1, 26] := false; array_y_set_initial[1, 27] := false; array_y_set_initial[1, 28] := false; array_y_set_initial[1, 29] := false; array_y_set_initial[1, 30] := false; omniout_str(ALWAYS, "START of Optimize"); glob_check_sign := check_sign(x_start, x_end); glob_h := check_sign(x_start, x_end); if glob_display_interval < glob_h then glob_h := glob_display_interval end if; found_h := -1.0; best_h := 0.; min_value := glob_large_float; est_answer := est_size_answer(); opt_iter := 1; while opt_iter <= 20 and found_h < 0. do omniout_int(ALWAYS, "opt_iter", 32, opt_iter, 4, ""); array_x[1] := x_start; array_x[2] := glob_h; glob_next_display := x_start; order_diff := 1; term_no := 1; while term_no <= order_diff do array_y[term_no] := array_y_init[term_no]* expt(glob_h, term_no - 1)/factorial_1(term_no - 1); term_no := term_no + 1 end do; rows := order_diff; r_order := 1; while r_order <= rows do term_no := 1; while term_no <= rows - r_order + 1 do it := term_no + r_order - 1; array_y_higher[r_order, term_no] := array_y_init[it]* expt(glob_h, term_no - 1)/factorial_1(term_no - 1); term_no := term_no + 1 end do; r_order := r_order + 1 end do; atomall(); est_needed_step_err := estimated_needed_step_error(x_start, x_end, glob_h, est_answer) ; omniout_float(ALWAYS, "est_needed_step_err", 32, est_needed_step_err, 16, ""); value3 := test_suggested_h(); omniout_float(ALWAYS, "value3", 32, value3, 32, ""); if value3 < est_needed_step_err and found_h < 0. then best_h := glob_h; found_h := 1.0 end if; omniout_float(ALWAYS, "best_h", 32, best_h, 32, ""); opt_iter := opt_iter + 1; glob_h := glob_h*0.5 end do; if 0. < found_h then glob_h := best_h else omniout_str(ALWAYS, "No increment to obtain desired accuracy found") end if; if glob_html_log then html_log_file := fopen("html/entry.html", WRITE, TEXT) end if; if 0. < found_h then omniout_str(ALWAYS, "START of Soultion"); array_x[1] := x_start; array_x[2] := glob_h; glob_next_display := x_start; order_diff := 1; term_no := 1; while term_no <= order_diff do array_y[term_no] := array_y_init[term_no]* expt(glob_h, term_no - 1)/factorial_1(term_no - 1); term_no := term_no + 1 end do; rows := order_diff; r_order := 1; while r_order <= rows do term_no := 1; while term_no <= rows - r_order + 1 do it := term_no + r_order - 1; array_y_higher[r_order, term_no] := array_y_init[it]* expt(glob_h, term_no - 1)/factorial_1(term_no - 1); term_no := term_no + 1 end do; r_order := r_order + 1 end do; current_iter := 1; glob_clock_start_sec := elapsed_time_seconds(); glob_log10normmin := -glob_large_float; if glob_small_float < omniabs(array_y_higher[1, 1]) then tmp := omniabs(array_y_higher[1, 1]); log10norm := log10(tmp); if log10norm < glob_log10normmin then glob_log10normmin := log10norm end if end if; display_alot(current_iter); glob_clock_sec := elapsed_time_seconds(); glob_current_iter := 0; glob_iter := 0; omniout_str(DEBUGL, " "); glob_reached_optimal_h := true; glob_optimal_clock_start_sec := elapsed_time_seconds(); while glob_current_iter < glob_max_iter and glob_check_sign*array_x[1] < glob_check_sign*x_end and convfloat(glob_clock_sec) - convfloat(glob_orig_start_sec) < convfloat(glob_max_sec) do if reached_interval() then omniout_str(INFO, " "); omniout_str(INFO, "TOP MAIN SOLVE Loop") end if; glob_iter := glob_iter + 1; glob_clock_sec := elapsed_time_seconds(); glob_current_iter := glob_current_iter + 1; atomall(); if glob_look_poles then check_for_pole() end if; if reached_interval() then glob_next_display := glob_next_display + glob_display_interval end if; array_x[1] := array_x[1] + glob_h; array_x[2] := glob_h; order_diff := 1; ord := 2; calc_term := 1; iii := glob_max_terms; while calc_term <= iii do array_y_higher_work[2, iii] := array_y_higher[2, iii]/( expt(glob_h, calc_term - 1)* factorial_3(iii - calc_term, iii - 1)); iii := iii - 1 end do; temp_sum := 0.; ord := 2; calc_term := 1; iii := glob_max_terms; while calc_term <= iii do temp_sum := temp_sum + array_y_higher_work[ord, iii]; iii := iii - 1 end do; array_y_higher_work2[ord, calc_term] := temp_sum* expt(glob_h, calc_term - 1)/factorial_1(calc_term - 1); ord := 1; calc_term := 2; iii := glob_max_terms; while calc_term <= iii do array_y_higher_work[1, iii] := array_y_higher[1, iii]/( expt(glob_h, calc_term - 1)* factorial_3(iii - calc_term, iii - 1)); iii := iii - 1 end do; temp_sum := 0.; ord := 1; calc_term := 2; iii := glob_max_terms; while calc_term <= iii do temp_sum := temp_sum + array_y_higher_work[ord, iii]; iii := iii - 1 end do; array_y_higher_work2[ord, calc_term] := temp_sum* expt(glob_h, calc_term - 1)/factorial_1(calc_term - 1); ord := 1; calc_term := 1; iii := glob_max_terms; while calc_term <= iii do array_y_higher_work[1, iii] := array_y_higher[1, iii]/( expt(glob_h, calc_term - 1)* factorial_3(iii - calc_term, iii - 1)); iii := iii - 1 end do; temp_sum := 0.; ord := 1; calc_term := 1; iii := glob_max_terms; while calc_term <= iii do temp_sum := temp_sum + array_y_higher_work[ord, iii]; iii := iii - 1 end do; array_y_higher_work2[ord, calc_term] := temp_sum* expt(glob_h, calc_term - 1)/factorial_1(calc_term - 1); term_no := glob_max_terms; while 1 <= term_no do array_y[term_no] := array_y_higher_work2[1, term_no]; ord := 1; while ord <= order_diff do array_y_higher[ord, term_no] := array_y_higher_work2[ord, term_no]; ord := ord + 1 end do; term_no := term_no - 1 end do; display_alot(current_iter) end do; omniout_str(ALWAYS, "Finished!"); if glob_max_iter <= glob_iter then omniout_str(ALWAYS, "Maximum Iterations Reached before Solution Completed!") end if; if convfloat(glob_max_sec) <= elapsed_time_seconds() - convfloat(glob_orig_start_sec) then omniout_str(ALWAYS, "Maximum Time Reached before Solution Completed!") end if; glob_clock_sec := elapsed_time_seconds(); omniout_str(INFO, "diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));"); omniout_int(INFO, "Iterations ", 32, glob_iter, 4, " "); prog_report(x_start, x_end); if glob_html_log then logstart(html_log_file); logitem_str(html_log_file, "2012-12-14T20:02:02-06:00"); logitem_str(html_log_file, "Maple"); logitem_str(html_log_file, "arcsin_sqrt"); logitem_str(html_log_file, "diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2));"); logitem_float(html_log_file, x_start); logitem_float(html_log_file, x_end); logitem_float(html_log_file, array_x[1]); logitem_float(html_log_file, glob_h); logitem_integer(html_log_file, Digits); logitem_good_digits(html_log_file, array_last_rel_error[1]); logitem_integer(html_log_file, glob_max_terms); logitem_float(html_log_file, array_1st_rel_error[1]); logitem_float(html_log_file, array_last_rel_error[1]); logitem_integer(html_log_file, glob_iter); logitem_pole(html_log_file, array_type_pole[1]); if array_type_pole[1] = 1 or array_type_pole[1] = 2 then logitem_float(html_log_file, array_pole[1]); logitem_float(html_log_file, array_pole[2]); 0 else logitem_str(html_log_file, "NA"); logitem_str(html_log_file, "NA"); 0 end if; logitem_time(html_log_file, convfloat(glob_clock_sec)); if glob_percent_done < 100.0 then logitem_time(html_log_file, convfloat(glob_total_exp_sec)); 0 else logitem_str(html_log_file, "Done"); 0 end if; log_revs(html_log_file, " 151 "); logitem_str(html_log_file, "arcsin_sqrt diffeq.mxt"); logitem_str(html_log_file, "arcsin_sqrt maple results"); logitem_str(html_log_file, "Languages compared"); logend(html_log_file) end if; if glob_html_log then fclose(html_log_file) end if end if end proc > # End Function number 12 > main(); ##############ECHO OF PROBLEM################# ##############temp/arcsin_sqrtpostode.ode################# diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2)); ! #BEGIN FIRST INPUT BLOCK Digits:=32; max_terms:=30; ! #END FIRST INPUT BLOCK #BEGIN SECOND INPUT BLOCK x_start := 0.0; x_end := 0.5 ; array_y_init[0 + 1] := exact_soln_y(x_start); glob_h := 0.05; glob_look_poles := true; glob_max_iter := 1000000; glob_display_interval := 0.1; glob_max_minutes := 10; #END SECOND INPUT BLOCK #BEGIN OVERRIDE BLOCK glob_desired_digits_correct:=10; glob_display_interval:=0.001; glob_look_poles:=true; glob_max_iter:=10000000; glob_max_minutes:=3; #END OVERRIDE BLOCK ! #BEGIN USER DEF BLOCK exact_soln_y := proc(x) return(10.0 * (0.1 * x + 0.2) * arcsin(sqrt ( 0.1 * x + 0.2)) + 5.0 * sqrt( 0.1 * x + 0.2) * sqrt( 0.8 - 0.1 * x) - 5.0 * arcsin(sqrt( 0.1 * x + 0.2))); end; #END USER DEF BLOCK #######END OF ECHO OF PROBLEM################# START of Optimize min_size = 0 min_size = 1 opt_iter = 1 glob_desired_digits_correct = 10 desired_abs_gbl_error = 1.0000000000000000000000000000000e-10 range = 0.5 estimated_steps = 500 step_error = 2.0000000000000000000000000000000e-13 est_needed_step_err = 2.0000000000000000000000000000000e-13 hn_div_ho = 0.5 hn_div_ho_2 = 0.25 hn_div_ho_3 = 0.125 value3 = 7.9214363215919274570325169638303e-88 max_value3 = 7.9214363215919274570325169638303e-88 value3 = 7.9214363215919274570325169638303e-88 best_h = 0.001 START of Soultion x[1] = 0 y[1] (analytic) = 0.6090571729975816513572313056163 y[1] (numeric) = 0.6090571729975816513572313056163 absolute error = 0 relative error = 0 % Correct digits = 32 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.001 y[1] (analytic) = 0.6095208831026770820978879838655 y[1] (numeric) = 0.60952088310267708210009083456144 absolute error = 2.20285069594e-21 relative error = 3.6140692747502105065184750223716e-19 % Correct digits = 20 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.002 memory used=3.8MB, alloc=2.8MB, time=0.35 y[1] (analytic) = 0.6099847181843472541779969702107 y[1] (numeric) = 0.6099847181843472541823977204722 absolute error = 4.40075026150e-21 relative error = 7.2145254304059828048140138760673e-19 % Correct digits = 20 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.003 y[1] (analytic) = 0.6104486782191861298431324520456 y[1] (numeric) = 0.61044867821918612984972616436374 absolute error = 6.59371231814e-21 relative error = 1.0801419600703072766602240734755e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.004 y[1] (analytic) = 0.6109127631838086164442505419117 y[1] (numeric) = 0.61091276318380861645303229235543 absolute error = 8.78175044373e-21 relative error = 1.4374802709904732178976178621076e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.005 y[1] (analytic) = 0.6113769730548505410074765302546 y[1] (numeric) = 0.61137697305485054101844140842592 absolute error = 1.096487817132e-20 relative error = 1.7934725471474815596414418406736e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.006 y[1] (analytic) = 0.6118413078089686248489230972898 y[1] (numeric) = 0.61184130780896862486206620628044 absolute error = 1.314310899064e-20 relative error = 2.1481238391219558699398536176907e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.007 memory used=7.6MB, alloc=3.8MB, time=0.71 y[1] (analytic) = 0.6123057674228404582344384153974 y[1] (numeric) = 0.61230576742284045824975487174513 absolute error = 1.531645634773e-20 relative error = 2.5014391767361719333002798220412e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.008 y[1] (analytic) = 0.6127703518731644750841833511355 y[1] (numeric) = 0.61277035187316447510166828477998 absolute error = 1.748493364448e-20 relative error = 2.8534235690468188255087384793413e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.009 y[1] (analytic) = 0.6132350611366599277219372527391 y[1] (numeric) = 0.61323506113665992774158580697925 absolute error = 1.964855424015e-20 relative error = 3.2040820046607387062428637436358e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.01 y[1] (analytic) = 0.6136998951900668616690320848583 y[1] (numeric) = 0.61369989519006686169083941630838 absolute error = 2.180733145008e-20 relative error = 3.5534194515914211076120935485459e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.011 y[1] (analytic) = 0.6141648540101460904828149472665 y[1] (numeric) = 0.61416485401014609050677622581366 absolute error = 2.396127854716e-20 relative error = 3.9014408575656066897728866323439e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.012 y[1] (analytic) = 0.614629937573679170639539288377 y[1] (numeric) = 0.6146299375736791706656496971381 absolute error = 2.611040876110e-20 relative error = 4.2481511499706272386361900852051e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop memory used=11.4MB, alloc=4.1MB, time=1.10 NO POLE x[1] = 0.013 y[1] (analytic) = 0.6150951458574683764615853976086 y[1] (numeric) = 0.61509514585746837648984013288737 absolute error = 2.825473527877e-20 relative error = 4.5935552359760076623934950985979e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.014 y[1] (analytic) = 0.6155604788383366750889110329727 y[1] (numeric) = 0.6155604788383366751193053042171 absolute error = 3.039427124440e-20 relative error = 4.9376580026318392184812592646078e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.015 y[1] (analytic) = 0.6160259364931277014946333117 y[1] (numeric) = 0.61602593649312770152716234145989 absolute error = 3.252902975989e-20 relative error = 5.2804643169846289857200770577785e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.016 y[1] (analytic) = 0.6164915187987057335446432622956 y[1] (numeric) = 0.61649151879870573357930228618089 absolute error = 3.465902388529e-20 relative error = 5.6219790262202652363015055100683e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.017 y[1] (analytic) = 0.61695722573195566710115470611 y[1] (numeric) = 0.6169572257319556671379389727479 absolute error = 3.678426663790e-20 relative error = 5.9622069575827219285216941426889e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop memory used=15.2MB, alloc=4.1MB, time=1.49 NO POLE x[1] = 0.018 y[1] (analytic) = 0.6174230572697829911700894053354 y[1] (numeric) = 0.61742305726978299120899417632857 absolute error = 3.890477099317e-20 relative error = 6.3011529185847300124460248290749e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.019 y[1] (analytic) = 0.6178890133891137630922006823022 y[1] (numeric) = 0.61788901338911376313322123218722 absolute error = 4.102054988502e-20 relative error = 6.6388216971236921911962366692422e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.02 y[1] (analytic) = 0.6183550940668945837778379820439 y[1] (numeric) = 0.61835509406689458382096959824965 absolute error = 4.313161620575e-20 relative error = 6.9752180615308324621228673495914e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.021 y[1] (analytic) = 0.6188212992800925729852551163342 y[1] (numeric) = 0.61882129928009257303049309913996 absolute error = 4.523798280576e-20 relative error = 7.3103467605894834696245107600821e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.022 y[1] (analytic) = 0.6192876290056953446423651927772 y[1] (numeric) = 0.61928762900569534468970485527141 absolute error = 4.733966249421e-20 relative error = 7.6442125237051418237809090989044e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.023 y[1] (analytic) = 0.6197540832207109822118454970576 y[1] (numeric) = 0.6197540832207109822612821650973 absolute error = 4.943666803970e-20 relative error = 7.9768200610780457083205874454845e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop memory used=19.0MB, alloc=4.2MB, time=1.89 NO POLE x[1] = 0.024 y[1] (analytic) = 0.6202206619021680140994958601316 y[1] (numeric) = 0.62022066190216801415102487230084 absolute error = 5.152901216924e-20 relative error = 8.3081740635993277628809206274504e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.025 y[1] (analytic) = 0.6206873650271153891057543049593 y[1] (numeric) = 0.62068736502711538915937101252806 absolute error = 5.361670756876e-20 relative error = 8.6382792029958104563746410738487e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.026 y[1] (analytic) = 0.6211541925726224519202740293642 y[1] (numeric) = 0.62115419257262245197597379624823 absolute error = 5.569976688403e-20 relative error = 8.9671401320402168852761138499980e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.027 y[1] (analytic) = 0.6216211445157789186594660427454 y[1] (numeric) = 0.62162114451577891871724424546506 absolute error = 5.777820271966e-20 relative error = 9.2947614844516260089632455284414e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.028 y[1] (analytic) = 0.6220882208336948524469120346621 y[1] (numeric) = 0.62208822083369485250676406230233 absolute error = 5.985202764023e-20 relative error = 9.6211478751388324663440979719166e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop memory used=22.8MB, alloc=4.3MB, time=2.29 NO POLE x[1] = 0.029 y[1] (analytic) = 0.6225554215035006390365523127825 y[1] (numeric) = 0.62255542150350063909847356695271 absolute error = 6.192125417021e-20 relative error = 9.9463039002483115959779305199598e-18 % Correct digits = 19 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.03 y[1] (analytic) = 0.6230227465023469624785539063179 y[1] (numeric) = 0.62302274650234696254253980111121 absolute error = 6.398589479331e-20 relative error = 1.0270234137120539540098821478842e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.031 y[1] (analytic) = 0.6234901958074047808277641888643 y[1] (numeric) = 0.62349019580740478089381015081833 absolute error = 6.604596195403e-20 relative error = 1.0592943144599422388693275582874e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.032 y[1] (analytic) = 0.6239577693958653018946556315594 y[1] (numeric) = 0.62395776939586530196275709961552 absolute error = 6.810146805612e-20 relative error = 1.0914435462845168469231868664185e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.033 y[1] (analytic) = 0.6244254672449399590386675536054 y[1] (numeric) = 0.62442546724493995910881997906987 absolute error = 7.015242546447e-20 relative error = 1.1234715613697365770268765193698e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.034 y[1] (analytic) = 0.6248932893318603870038509925553 y[1] (numeric) = 0.62489328933186038707604983905955 absolute error = 7.219884650425e-20 relative error = 1.1553788100596413045452926737965e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=26.7MB, alloc=4.3MB, time=2.69 NO POLE x[1] = 0.035 y[1] (analytic) = 0.6253612356338783977967230712678 y[1] (numeric) = 0.62536123563387839787096381472864 absolute error = 7.424074346084e-20 relative error = 1.1871657408631689206998811703481e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.036 y[1] (analytic) = 0.6258293061282659566062374921429 y[1] (numeric) = 0.62582930612826595668251562072376 absolute error = 7.627812858086e-20 relative error = 1.2188328004765332048924824121393e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.037 y[1] (analytic) = 0.6262975007923151577657780421459 y[1] (numeric) = 0.62629750079231515784408905621706 absolute error = 7.831101407116e-20 relative error = 1.2503804337729347943237122702429e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.038 y[1] (analytic) = 0.6267658196033382007570822442044 y[1] (numeric) = 0.62676581960333820083742165630486 absolute error = 8.033941210046e-20 relative error = 1.2818090838346046015715251762078e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.039 y[1] (analytic) = 0.6272342625386673662560025418522 y[1] (numeric) = 0.62723426253866736633836587665047 absolute error = 8.236333479827e-20 relative error = 1.3131191919413444658046210160861e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=30.5MB, alloc=4.3MB, time=3.09 NO POLE x[1] = 0.04 y[1] (analytic) = 0.6277028295756549922200126544619 y[1] (numeric) = 0.62770282957565499230439544871731 absolute error = 8.438279425541e-20 relative error = 1.3443111975846145947721271001631e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.041 y[1] (analytic) = 0.6281715206916734500173669900926 y[1] (numeric) = 0.62817152069167345010376479261658 absolute error = 8.639780252398e-20 relative error = 1.3753855384728080946753504312768e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.042 y[1] (analytic) = 0.6286403358641151205978212518581 y[1] (numeric) = 0.62864033586411512068622962347618 absolute error = 8.840837161808e-20 relative error = 1.4063426505484380841065135205609e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.043 y[1] (analytic) = 0.6291092750703923707048226218127 y[1] (numeric) = 0.6291092750703923707952371353261 absolute error = 9.041451351340e-20 relative error = 1.4371829679872916891056507481966e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.044 y[1] (analytic) = 0.6295783382879375291290781536472 y[1] (numeric) = 0.6295783382879375292214943937946 absolute error = 9.241624014740e-20 relative error = 1.4679069232069647662183686730523e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.045 y[1] (analytic) = 0.6300475254942028630034102520006 y[1] (numeric) = 0.63004752549420286309782381542031 absolute error = 9.441356341971e-20 relative error = 1.4985149468788558815449139262639e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=34.3MB, alloc=4.3MB, time=3.49 NO POLE x[1] = 0.046 y[1] (analytic) = 0.6305168366666605541388083619203 y[1] (numeric) = 0.63051683666666055423521485711234 absolute error = 9.640649519204e-20 relative error = 1.5290074679323408806578629916175e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.047 y[1] (analytic) = 0.6309862717828026754015862369468 y[1] (numeric) = 0.63098627178280267549998128423538 absolute error = 9.839504728858e-20 relative error = 1.5593849135666999602264182398059e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.048 y[1] (analytic) = 0.6314558308201411671315543984676 y[1] (numeric) = 0.63145583082014116723193362996327 absolute error = 1.0037923149567e-19 relative error = 1.5896477092514364344478774993013e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.049 y[1] (analytic) = 0.631925513756207813601117642372 y[1] (numeric) = 0.63192551375620781370347670193459 absolute error = 1.0235905956259e-19 relative error = 1.6197962787443231423566987556513e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.05 y[1] (analytic) = 0.6323953205685542195152076916603 y[1] (numeric) = 0.63239532056855421961954223486146 absolute error = 1.0433454320116e-19 relative error = 1.6498310440905565183422505871536e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=38.1MB, alloc=4.3MB, time=3.90 NO POLE x[1] = 0.051 y[1] (analytic) = 0.6328652512347517865519613355036 y[1] (numeric) = 0.63286525123475178665826702958949 absolute error = 1.0630569408589e-19 relative error = 1.6797524256306104522054468557131e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.052 y[1] (analytic) = 0.6333353057323916899440546363321 y[1] (numeric) = 0.63333530573239169005232716018675 absolute error = 1.0827252385465e-19 relative error = 1.7095608420162710585880290297754e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.053 y[1] (analytic) = 0.6338054840390848551006040268464 y[1] (numeric) = 0.63380548403908485521083907095434 absolute error = 1.1023504410794e-19 relative error = 1.7392567102045166328963212604389e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.054 y[1] (analytic) = 0.6342757861324619342695453583944 y[1] (numeric) = 0.63427578613246193438173862480468 absolute error = 1.1219326641028e-19 relative error = 1.7688404454848540807718488703784e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.055 y[1] (analytic) = 0.6347462119901732832404022009587 y[1] (numeric) = 0.63474621199017328335454940324756 absolute error = 1.1414720228886e-19 relative error = 1.7983124614633722417614926879441e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.056 y[1] (analytic) = 0.6352167615898889380873549330273 y[1] (numeric) = 0.63521676158988893820345179626202 absolute error = 1.1609686323472e-19 relative error = 1.8276731700867002382621430248414e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=41.9MB, alloc=4.3MB, time=4.30 NO POLE x[1] = 0.057 y[1] (analytic) = 0.6356874349092985919525223969142 y[1] (numeric) = 0.63568743490929859207056465761654 absolute error = 1.1804226070234e-19 relative error = 1.8569229816408523617751634682167e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.058 y[1] (analytic) = 0.6361582319261115718693681316233 y[1] (numeric) = 0.63615823192611157198935153773374 absolute error = 1.1998340611044e-19 relative error = 1.8860623047691037016335046313282e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.059 y[1] (analytic) = 0.6366291526180568156261434311398 y[1] (numeric) = 0.63662915261805681574806374198133 absolute error = 1.2192031084153e-19 relative error = 1.9150915464701569574936906226495e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.06 y[1] (analytic) = 0.6371001969628828486692797110698 y[1] (numeric) = 0.63710019696288284879313269731158 absolute error = 1.2385298624178e-19 relative error = 1.9440111121013452686728136050445e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.061 y[1] (analytic) = 0.6375713649383577610466429008477 y[1] (numeric) = 0.63757136493835776117242434446939 absolute error = 1.2578144362169e-19 relative error = 1.9728214053943735827653077745141e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=45.7MB, alloc=4.3MB, time=4.70 NO POLE x[1] = 0.062 y[1] (analytic) = 0.6380426565222691843905628122902 y[1] (numeric) = 0.63804265652226918451826850654685 absolute error = 1.2770569425665e-19 relative error = 2.0015228284692713473317704006368e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.063 y[1] (analytic) = 0.6385140716924242689405506680971 y[1] (numeric) = 0.63851407169242426907017641748325 absolute error = 1.2962574938615e-19 relative error = 2.0301157818271456133715559750285e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.064 y[1] (analytic) = 0.6389856104266496606056182059822 y[1] (numeric) = 0.63898561042664966073715982619563 absolute error = 1.3154162021343e-19 relative error = 2.0586006643498571512942729401596e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.065 y[1] (analytic) = 0.6394572727027914780661120054716 y[1] (numeric) = 0.63945727270279147819956532337952 absolute error = 1.3345331790792e-19 relative error = 2.0869778733433337758676194421777e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.066 y[1] (analytic) = 0.6399290584987152899149769150421 y[1] (numeric) = 0.63992905849871529005033776864494 absolute error = 1.3536085360284e-19 relative error = 2.1152478045050637127564829816083e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.067 y[1] (analytic) = 0.6404009677923060918383626871547 y[1] (numeric) = 0.64040096779230609197562692555159 absolute error = 1.3726423839689e-19 relative error = 2.1434108519556038157623833720204e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=49.5MB, alloc=4.3MB, time=5.11 NO POLE x[1] = 0.068 y[1] (analytic) = 0.6408730005614682838354881579287 y[1] (numeric) = 0.64087300056146828397465164128214 absolute error = 1.3916348335344e-19 relative error = 2.1714674082309442290373855215441e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.069 y[1] (analytic) = 0.6413451567841256474776775366449 y[1] (numeric) = 0.64134515678412564761873613614639 absolute error = 1.4105859950149e-19 relative error = 2.1994178643025099001134791659311e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.07 y[1] (analytic) = 0.6418174364382213232064835980089 y[1] (numeric) = 0.6418174364382213233494331958441 absolute error = 1.4294959783520e-19 relative error = 2.2272626095747982018110930024790e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.071 y[1] (analytic) = 0.6422898395017177876708127971197 y[1] (numeric) = 0.64228983950171778781564928643372 absolute error = 1.4483648931402e-19 relative error = 2.2550020318923733890265867658472e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.072 y[1] (analytic) = 0.6427623659525968311029675533963 y[1] (numeric) = 0.6427623659525968312496868382597 absolute error = 1.4671928486340e-19 relative error = 2.2826365175558585898481715623172e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE memory used=53.4MB, alloc=4.3MB, time=5.51 x[1] = 0.073 y[1] (analytic) = 0.643235015768859534733521175312 y[1] (numeric) = 0.6432350157688595348821191706862 absolute error = 1.4859799537420e-19 relative error = 2.3101664513176517560738209724387e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.074 y[1] (analytic) = 0.6437077889285262482449411226685 y[1] (numeric) = 0.64370778892852624839541375437171 absolute error = 1.5047263170321e-19 relative error = 2.3375922163949090971449587431464e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.075 y[1] (analytic) = 0.6441806854096365672638765273268 y[1] (numeric) = 0.64418068540963656741621973199998 absolute error = 1.5234320467318e-19 relative error = 2.3649141944748695274862187678349e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.076 y[1] (analytic) = 0.6446537051902493108920261167875 y[1] (numeric) = 0.64465370519024931104623584186054 absolute error = 1.5420972507304e-19 relative error = 2.3921327657231077106102139057009e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.077 y[1] (analytic) = 0.6451268482484424992755029077918 y[1] (numeric) = 0.64512684824844249943157511144953 absolute error = 1.5607220365773e-19 relative error = 2.4192483087857101612941158640131e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.078 y[1] (analytic) = 0.6456001145623133312126122591918 y[1] (numeric) = 0.64560011456231333137054291034058 absolute error = 1.5793065114878e-19 relative error = 2.4462612008030635433875780626598e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=57.2MB, alloc=4.3MB, time=5.92 NO POLE x[1] = 0.079 y[1] (analytic) = 0.6460735041099781617999600947252 y[1] (numeric) = 0.64607350410997816195974517295927 absolute error = 1.5978507823407e-19 relative error = 2.4731718174108949524506165639592e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.08 y[1] (analytic) = 0.6465470168695724801168083270176 y[1] (numeric) = 0.64654701686957248027844382258541 absolute error = 1.6163549556781e-19 relative error = 2.4999805327447149302092494502185e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.081 y[1] (analytic) = 0.647020652819250886947594734136 y[1] (numeric) = 0.64702065281925088711107664790744 absolute error = 1.6348191377144e-19 relative error = 2.5266877194584645882277919440040e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.082 y[1] (analytic) = 0.6474944119371870725425347593326 y[1] (numeric) = 0.64749441193718707270785910276542 absolute error = 1.6532434343282e-19 relative error = 2.5532937487166759595382269491777e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.083 y[1] (analytic) = 0.6479682942015737944162229232389 y[1] (numeric) = 0.64796829420157379458338571834562 absolute error = 1.6716279510672e-19 relative error = 2.5797989902067339867602971155057e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.084 y[1] (analytic) = 0.6484422995906228551841517557181 y[1] (numeric) = 0.64844229959062285535314903503334 absolute error = 1.6899727931524e-19 relative error = 2.6062038121500097625126403699033e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=61.0MB, alloc=4.4MB, time=6.33 NO POLE x[1] = 0.085 y[1] (analytic) = 0.6489164280825650804370663718461 y[1] (numeric) = 0.64891642808256508060789417839327 absolute error = 1.7082780654717e-19 relative error = 2.6325085812966145422257325593719e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.086 y[1] (analytic) = 0.649390679655650296653073033072 y[1] (numeric) = 0.64939067965565029682572742033157 absolute error = 1.7265438725957e-19 relative error = 2.6587136629543671016694570994330e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.087 y[1] (analytic) = 0.6498650542881473091474202505273 y[1] (numeric) = 0.64986505428814730932189728240291 absolute error = 1.7447703187561e-19 relative error = 2.6848194209600882898122655649517e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.088 y[1] (analytic) = 0.6503395519583438800598712026741 y[1] (numeric) = 0.65033955195834388023616695346116 absolute error = 1.7629575078706e-19 relative error = 2.7108262177225267425566256729771e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.089 y[1] (analytic) = 0.6508141726445467063795864540647 y[1] (numeric) = 0.65081417264454670655769700841754 absolute error = 1.7811055435284e-19 relative error = 2.7367344142045616779973605864690e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=64.8MB, alloc=4.4MB, time=6.73 NO POLE x[1] = 0.09 y[1] (analytic) = 0.6512889163250813980074361758667 y[1] (numeric) = 0.65128891632508139818735762876629 absolute error = 1.7992145289959e-19 relative error = 2.7625443699365032862980115182618e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.091 y[1] (analytic) = 0.6517637829782924558556612820461 y[1] (numeric) = 0.65176378297829245603738973876821 absolute error = 1.8172845672211e-19 relative error = 2.7882564430273447701262543766013e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.092 y[1] (analytic) = 0.6522387725825432499848031076663 y[1] (numeric) = 0.65223877258254325016833468374921 absolute error = 1.8353157608291e-19 relative error = 2.8138709901623242482630022174479e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.093 y[1] (analytic) = 0.6527138851162159977778214676633 y[1] (numeric) = 0.65271388511621599796315228887618 absolute error = 1.8533082121288e-19 relative error = 2.8393883666176607349095841791325e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.094 y[1] (analytic) = 0.6531891205577117421513211457083 y[1] (numeric) = 0.65318912055771174233844734801925 absolute error = 1.8712620231095e-19 relative error = 2.8648089262597674970535476092227e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.095 y[1] (analytic) = 0.6536644788854503298038070733548 y[1] (numeric) = 0.6536644788854503299927248028991 absolute error = 1.8891772954430e-19 relative error = 2.8901330215528872029192973365377e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=68.6MB, alloc=4.4MB, time=7.13 NO POLE x[1] = 0.096 y[1] (analytic) = 0.6541399600778703895008886696053 y[1] (numeric) = 0.65413996007787038969159408265397 absolute error = 1.9070541304867e-19 relative error = 2.9153610035682267493892904822515e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.097 y[1] (analytic) = 0.6546155641134293103973540203162 y[1] (numeric) = 0.65461556411342931058984328324474 absolute error = 1.9248926292854e-19 relative error = 2.9404932219910705966677248642197e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.098 y[1] (analytic) = 0.6550912909706032203960347854942 y[1] (numeric) = 0.65509129097060322059030407475091 absolute error = 1.9426928925671e-19 relative error = 2.9655300251187082756643701033256e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.099 y[1] (analytic) = 0.655567140627886964543382930522 y[1] (numeric) = 0.6555671406278869647394284325973 absolute error = 1.9604550207530e-19 relative error = 2.9904717598800357262205302955315e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.1 y[1] (analytic) = 0.6560431130637940834616805846994 y[1] (numeric) = 0.65604311306379408365949849609388 absolute error = 1.9781791139448e-19 relative error = 3.0153187718204740952854305488866e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=72.4MB, alloc=4.4MB, time=7.53 NO POLE x[1] = 0.101 y[1] (analytic) = 0.6565192082568567918178045371763 y[1] (numeric) = 0.65651920825685679201739106437048 absolute error = 1.9958652719418e-19 relative error = 3.0400714051323491695625448837705e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.102 y[1] (analytic) = 0.6569954261856259568284670864246 y[1] (numeric) = 0.65699542618562595702981844584794 absolute error = 2.0135135942334e-19 relative error = 3.0647300026476996520788719842783e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.103 y[1] (analytic) = 0.6574717668286710768018551648088 y[1] (numeric) = 0.65747176682867107700496758280842 absolute error = 2.0311241799962e-19 relative error = 3.0892949058381172581343084077376e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.104 y[1] (analytic) = 0.6579482301645802597155898646028 y[1] (numeric) = 0.6579482301645802599204595774135 absolute error = 2.0486971281070e-19 relative error = 3.1137664548387576149706273283342e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.105 y[1] (analytic) = 0.6584248161719602018309286959577 y[1] (numeric) = 0.658424816171960202037551949671 absolute error = 2.0662325371330e-19 relative error = 3.1381449884376228529234976089972e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.106 y[1] (analytic) = 0.6589015248294361663431331108386 y[1] (numeric) = 0.65890152482943616655150616137246 absolute error = 2.0837305053386e-19 relative error = 3.1624308440900881636944563836807e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=76.2MB, alloc=4.4MB, time=7.93 NO POLE x[1] = 0.107 y[1] (analytic) = 0.6593783561156519620679240298475 y[1] (numeric) = 0.6593783561156519622780431429156 absolute error = 2.1011911306810e-19 relative error = 3.1866243579163836561137163413745e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.108 y[1] (analytic) = 0.6598553100092699221639483111091 y[1] (numeric) = 0.65985531000926992237580976219132 absolute error = 2.1186145108222e-19 relative error = 3.2107258647239450435645253729307e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.109 y[1] (analytic) = 0.6603323864889708828911793020446 y[1] (numeric) = 0.66033238648897088310477937635618 absolute error = 2.1360007431158e-19 relative error = 3.2347356979915088245171679341656e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.11 y[1] (analytic) = 0.6608095855334541624051748158676 y[1] (numeric) = 0.66080958553345416262050980832979 absolute error = 2.1533499246219e-19 relative error = 3.2586541898958038851101417661564e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.111 y[1] (analytic) = 0.661286907121437539587116075046 y[1] (numeric) = 0.66128690712143753980418229025561 absolute error = 2.1706621520961e-19 relative error = 3.2824816712989654006527138956875e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=80.1MB, alloc=4.4MB, time=8.33 NO POLE x[1] = 0.112 y[1] (analytic) = 0.6617643512316572329095513637445 y[1] (numeric) = 0.66176435123165723312834511594435 absolute error = 2.1879375219985e-19 relative error = 3.3062184717662293317401584270284e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.113 y[1] (analytic) = 0.6622419178428678793377683304356 y[1] (numeric) = 0.66224191784286787955828594348489 absolute error = 2.2051761304929e-19 relative error = 3.3298649195687560453257356751537e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.114 y[1] (analytic) = 0.6627196069338425132667190804147 y[1] (numeric) = 0.66271960693384251348895688775919 absolute error = 2.2223780734449e-19 relative error = 3.3534213416847857466870032029051e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.115 y[1] (analytic) = 0.6631974184833725454934223958961 y[1] (numeric) = 0.66319741848337254571737674053864 absolute error = 2.2395434464254e-19 relative error = 3.3768880638089351257853064129265e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.116 y[1] (analytic) = 0.663675352470267742224767618699 y[1] (numeric) = 0.66367535247026774245043485317074 absolute error = 2.2566723447174e-19 relative error = 3.4002654103664299747898518068241e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.117 y[1] (analytic) = 0.6641534088733562041206449272595 y[1] (numeric) = 0.66415340887335620434802141358974 absolute error = 2.2737648633024e-19 relative error = 3.4235537044965643420107368440572e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=83.9MB, alloc=4.4MB, time=8.73 NO POLE x[1] = 0.118 y[1] (analytic) = 0.6646315876714843453723269358173 y[1] (numeric) = 0.66463158767148434560140904550477 absolute error = 2.2908210968747e-19 relative error = 3.4467532680782129876781987197015e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.119 y[1] (analytic) = 0.6651098888435168728160267391523 y[1] (numeric) = 0.66510988884351687304681085313637 absolute error = 2.3078411398407e-19 relative error = 3.4698644217326848911385522373982e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.12 y[1] (analytic) = 0.665588312368336765081557721158 y[1] (numeric) = 0.66558831236833676531404022978891 absolute error = 2.3248250863091e-19 relative error = 3.4928874848128960579616657874943e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.121 y[1] (analytic) = 0.6660668582248452517760206398544 y[1] (numeric) = 0.66606685822484525201019794286517 absolute error = 2.3417730301077e-19 relative error = 3.5158227754325286409281235013197e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.122 y[1] (analytic) = 0.6665455263919617927024436951737 y[1] (numeric) = 0.66654552639196179293831220165127 absolute error = 2.3586850647757e-19 relative error = 3.5386706104583114758485520657734e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.123 memory used=87.7MB, alloc=4.4MB, time=9.13 y[1] (analytic) = 0.6670243168486240571133014789723 y[1] (numeric) = 0.66702431684862405735085760732835 absolute error = 2.3755612835605e-19 relative error = 3.5614313055090838943097230972388e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.124 y[1] (analytic) = 0.6675032295737879029988388992606 y[1] (numeric) = 0.66750322957378790323807907720343 absolute error = 2.3924017794283e-19 relative error = 3.5841051749755412906377080517821e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.125 y[1] (analytic) = 0.6679822645464273564101263625918 y[1] (numeric) = 0.66798226454642735665104702709799 absolute error = 2.4092066450619e-19 relative error = 3.6066925320207372067947054680716e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.126 y[1] (analytic) = 0.6684614217455345908167726899054 y[1] (numeric) = 0.66846142174553459105937028719104 absolute error = 2.4259759728564e-19 relative error = 3.6291936885774453218469287362544e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.127 y[1] (analytic) = 0.6689407011501199064992224318933 y[1] (numeric) = 0.66894070115011990674349341738591 absolute error = 2.4427098549261e-19 relative error = 3.6516089553622792718203752065451e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.128 y[1] (analytic) = 0.6694201027392117099755644401484 y[1] (numeric) = 0.6694201027392117102215052784589 absolute error = 2.4594083831050e-19 relative error = 3.6739386418801948887254035116304e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=91.5MB, alloc=4.4MB, time=9.54 NO POLE x[1] = 0.129 y[1] (analytic) = 0.6698996264918564934627787399603 y[1] (numeric) = 0.66989962649185649371038590485482 absolute error = 2.4760716489452e-19 relative error = 3.6961830564258418658526753197109e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.13 y[1] (analytic) = 0.6703792723871188143723489396501 y[1] (numeric) = 0.67037927238711881462161891402218 absolute error = 2.4926997437208e-19 relative error = 3.7183425060931174757606820812043e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.131 y[1] (analytic) = 0.6708590404040812748401675997883 y[1] (numeric) = 0.67085904040408127509109687563065 absolute error = 2.5092927584235e-19 relative error = 3.7404172967723106336705714046677e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.132 y[1] (analytic) = 0.6713389305218445012906621735106 y[1] (numeric) = 0.67133893052184450154324725188791 absolute error = 2.5258507837731e-19 relative error = 3.7624077331694561684841580510755e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.133 y[1] (analytic) = 0.6718189427195271240350693164531 y[1] (numeric) = 0.67181894271952712428930670747394 absolute error = 2.5423739102084e-19 relative error = 3.7843141187964351050659917207414e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.134 y[1] (analytic) = 0.672299076976265756903785551551 y[1] (numeric) = 0.67229907697626575715967177434031 absolute error = 2.5588622278931e-19 relative error = 3.8061367559834323185065860730312e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=95.3MB, alloc=4.4MB, time=9.95 NO POLE x[1] = 0.135 y[1] (analytic) = 0.6727793332712149769127224601103 y[1] (numeric) = 0.67277933327121497717025404278206 absolute error = 2.5753158267176e-19 relative error = 3.8278759458852501845682679763781e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.136 y[1] (analytic) = 0.6732597115835473039635947561522 y[1] (numeric) = 0.67325971158354730422276823578223 absolute error = 2.5917347963003e-19 relative error = 3.8495319884868559832728195171412e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.137 y[1] (analytic) = 0.6737402118924531805780697860585 y[1] (numeric) = 0.67374021189245318083888170865643 absolute error = 2.6081192259793e-19 relative error = 3.8711051825946601655948155059475e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.138 y[1] (analytic) = 0.6742208341771409516657071800052 y[1] (numeric) = 0.67422083417714095192815410048817 absolute error = 2.6244692048297e-19 relative error = 3.8925958258658050767920528249047e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.139 y[1] (analytic) = 0.6747015784168368443256175655827 y[1] (numeric) = 0.67470157841683684458969604774802 absolute error = 2.6407848216532e-19 relative error = 3.9140042147962766946828652526662e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=99.1MB, alloc=4.4MB, time=10.35 NO POLE x[1] = 0.14 y[1] (analytic) = 0.6751824445907849476817694373346 y[1] (numeric) = 0.6751824445907849479474760538322 absolute error = 2.6570661649760e-19 relative error = 3.9353306447213634763107455582816e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.141 y[1] (analytic) = 0.6756634326782471927518734587348 y[1] (numeric) = 0.67566343267824719301920479104119 absolute error = 2.6733133230639e-19 relative error = 3.9565754098415730679411104546257e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.142 y[1] (analytic) = 0.6761445426585033323497736553574 y[1] (numeric) = 0.6761445426585033326187262937484 absolute error = 2.6895263839100e-19 relative error = 3.9777388032079178461675515059639e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.143 y[1] (analytic) = 0.6766257745108509210212751396609 y[1] (numeric) = 0.67662577451085092129184568318479 absolute error = 2.7057054352389e-19 relative error = 3.9988211167316522434427859436642e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.144 y[1] (analytic) = 0.677107128214605295013338188938 y[1] (numeric) = 0.67710712821460529528552324538927 absolute error = 2.7218505645127e-19 relative error = 4.0198226411966302268563636554629e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.145 y[1] (analytic) = 0.6775886037490995522765686785562 y[1] (numeric) = 0.67758860374909955255036486444893 absolute error = 2.7379618589273e-19 relative error = 4.0407436662572979090415390051142e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=103.0MB, alloc=4.4MB, time=10.74 NO POLE x[1] = 0.146 y[1] (analytic) = 0.6780702010936845325009350526384 y[1] (numeric) = 0.67807020109368453277633899317974 absolute error = 2.7540394054134e-19 relative error = 4.0615844804436294004558170986938e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.147 y[1] (analytic) = 0.6785519202277287971846421938149 y[1] (numeric) = 0.67855192022772879746165052287861 absolute error = 2.7700832906371e-19 relative error = 4.0823453711654553993925758086383e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.148 y[1] (analytic) = 0.6790337611306186097360927326137 y[1] (numeric) = 0.6790337611306186100147020927142 absolute error = 2.7860936010050e-19 relative error = 4.1030266247234036520438280903755e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.149 y[1] (analytic) = 0.679515723781757915608866515452 y[1] (numeric) = 0.67951572378175791588907355771811 absolute error = 2.8020704226611e-19 relative error = 4.1236285263077286565279491925097e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.15 y[1] (analytic) = 0.6799978081605683224696491280433 y[1] (numeric) = 0.67999780816056832275145051219215 absolute error = 2.8180138414885e-19 relative error = 4.1441513600042083783655509593085e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=106.8MB, alloc=4.4MB, time=11.13 NO POLE x[1] = 0.151 y[1] (analytic) = 0.6804800142464890803990405483521 y[1] (numeric) = 0.6804800142464890806824329426631 absolute error = 2.8339239431100e-19 relative error = 4.1645954087984025750552247787449e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.152 y[1] (analytic) = 0.6809623420189770621251751800064 y[1] (numeric) = 0.68096234201897706241015526129541 absolute error = 2.8498008128901e-19 relative error = 4.1849609545819521044431938205819e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.153 y[1] (analytic) = 0.6814447914575067432900846933234 y[1] (numeric) = 0.68144479145750674357664914691712 absolute error = 2.8656445359372e-19 relative error = 4.2052482781591481202373325511811e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.154 y[1] (analytic) = 0.6819273625415701827487352768161 y[1] (numeric) = 0.68192736254157018303688079652601 absolute error = 2.8814551970991e-19 relative error = 4.2254576592436514129585146515517e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.155 y[1] (analytic) = 0.682410055250677002900671077227 y[1] (numeric) = 0.68241005525067700319039436532395 absolute error = 2.8972328809695e-19 relative error = 4.2455893764713481244927341466032e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.156 y[1] (analytic) = 0.6828928695643543700541957807906 y[1] (numeric) = 0.68289286956435437034549354797949 absolute error = 2.9129776718889e-19 relative error = 4.2656437074049536350215324405897e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=110.6MB, alloc=4.4MB, time=11.52 NO POLE x[1] = 0.157 y[1] (analytic) = 0.6833758054621469748230244625494 y[1] (numeric) = 0.68337580546214697511589342794337 absolute error = 2.9286896539397e-19 relative error = 4.2856209285301127285909211743440e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.158 y[1] (analytic) = 0.6838588629236170125553380041459 y[1] (numeric) = 0.68385886292361701284977489524113 absolute error = 2.9443689109523e-19 relative error = 4.3055213152676045386967662072103e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.159 y[1] (analytic) = 0.6843420419283441637951725535923 y[1] (numeric) = 0.68434204192834416409117410624286 absolute error = 2.9600155265056e-19 relative error = 4.3253451419773158157406799479902e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.16 y[1] (analytic) = 0.6848253424559255747760766730715 y[1] (numeric) = 0.68482534245592557507363963146427 absolute error = 2.9756295839277e-19 relative error = 4.3450926819624924474844070703289e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.161 y[1] (analytic) = 0.6853087644859758379469689928586 y[1] (numeric) = 0.6853087644859758382460901094876 absolute error = 2.9912111662900e-19 relative error = 4.3647642074643453076233777390638e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.162 y[1] (analytic) = 0.6857923079981269725301293609648 y[1] (numeric) = 0.68579230799812697283080539660712 absolute error = 3.0067603564232e-19 relative error = 4.3843599896886157940087139750919e-17 % Correct digits = 18 h = 0.001 memory used=114.4MB, alloc=4.4MB, time=11.92 TOP MAIN SOLVE Loop NO POLE x[1] = 0.163 y[1] (analytic) = 0.6862759729720284051112566491137 y[1] (numeric) = 0.68627597297202840541348437280376 absolute error = 3.0222772369006e-19 relative error = 4.4038802987843835757544651859246e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.164 y[1] (analytic) = 0.6867597593873469502615265461338 y[1] (numeric) = 0.68675975938734695056530273513906 absolute error = 3.0377618900526e-19 relative error = 4.4233254038683975873391862173119e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.165 y[1] (analytic) = 0.6872436672237667911915828398352 y[1] (numeric) = 0.68724366722376679149690427963111 absolute error = 3.0532143979591e-19 relative error = 4.4426955730171497780930471226705e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.166 y[1] (analytic) = 0.6877276964609894604373958578915 y[1] (numeric) = 0.68772769646098946074425934213714 absolute error = 3.0686348424564e-19 relative error = 4.4619910732800691840279529249768e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.167 y[1] (analytic) = 0.6882118470787338205779219072069 y[1] (numeric) = 0.68821184707873382088632423771994 absolute error = 3.0840233051304e-19 relative error = 4.4812121706727565894149032565422e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=118.2MB, alloc=4.4MB, time=12.32 NO POLE x[1] = 0.168 y[1] (analytic) = 0.6886961190567360449844977196877 y[1] (numeric) = 0.68869611905673604529443570642059 absolute error = 3.0993798673289e-19 relative error = 4.5003591301979842025836828305334e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.169 y[1] (analytic) = 0.6891805123747495986019040802846 y[1] (numeric) = 0.68918051237474959891337454129954 absolute error = 3.1147046101494e-19 relative error = 4.5194322158310602247685092023842e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.17 y[1] (analytic) = 0.6896650270125452187610329805987 y[1] (numeric) = 0.6896650270125452190740327420439 absolute error = 3.1299976144520e-19 relative error = 4.5384316905416524500816107574453e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.171 y[1] (analytic) = 0.6901496629499108960230928082872 y[1] (numeric) = 0.69014966294991089633761870437221 absolute error = 3.1452589608501e-19 relative error = 4.5573578162833558748253532299929e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.172 y[1] (analytic) = 0.6906344201666518550552862489296 y[1] (numeric) = 0.69063442016665185537133512190136 absolute error = 3.1604887297176e-19 relative error = 4.5762108540071981527586834030966e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.173 y[1] (analytic) = 0.6911192986425905355378957429561 y[1] (numeric) = 0.69111929864259053585546444307464 absolute error = 3.1756870011854e-19 relative error = 4.5949910636596089255940972300095e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=122.0MB, alloc=4.4MB, time=12.71 NO POLE x[1] = 0.174 y[1] (analytic) = 0.6916042983575665731027115056725 y[1] (numeric) = 0.69160429835756657342179689118754 absolute error = 3.1908538551504e-19 relative error = 4.6136987041984744360442520608050e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.175 y[1] (analytic) = 0.6920894192914367803027372833639 y[1] (numeric) = 0.69208941929143678062333622049023 absolute error = 3.2059893712633e-19 relative error = 4.6323340335784955613764283765021e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.176 y[1] (analytic) = 0.6925746614240751276131091828998 y[1] (numeric) = 0.69257466142407512793521854579447 absolute error = 3.2210936289467e-19 relative error = 4.6508973087803599708414726156470e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.177 y[1] (analytic) = 0.6930600247353727244631630762324 y[1] (numeric) = 0.69306002473537272478677974696956 absolute error = 3.2361667073716e-19 relative error = 4.6693887857797708543400116359927e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.178 y[1] (analytic) = 0.6935455092052378002995862446305 y[1] (numeric) = 0.69354550920523780062470711317895 absolute error = 3.2512086854845e-19 relative error = 4.6878087195895669049256540937854e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=125.8MB, alloc=4.4MB, time=13.09 NO POLE x[1] = 0.179 y[1] (analytic) = 0.694031114813595685680589090488 y[1] (numeric) = 0.69403111481359568600721105468741 absolute error = 3.2662196419941e-19 relative error = 4.7061573642434576388712022719348e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.18 y[1] (analytic) = 0.6945168415403887934010329070236 y[1] (numeric) = 0.6945168415403887937291528725603 absolute error = 3.2811996553670e-19 relative error = 4.7244349727927883113072896588912e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.181 y[1] (analytic) = 0.6950026893655765996484498581985 y[1] (numeric) = 0.6950026893655765999780647385833 absolute error = 3.2961488038480e-19 relative error = 4.7426417973387166828332937616802e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.182 y[1] (analytic) = 0.69548865826913562518989148271 y[1] (numeric) = 0.69548865826913562552099819925371 absolute error = 3.3110671654371e-19 relative error = 4.7607780890019992427052780167568e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.183 y[1] (analytic) = 0.6959747482310594165895421969455 y[1] (numeric) = 0.69597474823105941692213767873634 absolute error = 3.3259548179084e-19 relative error = 4.7788440979531100325993111349444e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.184 y[1] (analytic) = 0.6964609592313585274570344323578 y[1] (numeric) = 0.69646095923135852779111561623801 absolute error = 3.3408118388021e-19 relative error = 4.7968400734036121961151412160755e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=129.7MB, alloc=4.4MB, time=13.49 NO POLE x[1] = 0.185 y[1] (analytic) = 0.6969472912500604997264022027948 y[1] (numeric) = 0.69694729125006050006196603333775 absolute error = 3.3556383054295e-19 relative error = 4.8147662636162210752524546272971e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.186 y[1] (analytic) = 0.6974337442672098449656100569291 y[1] (numeric) = 0.69743374426720984530265348641585 absolute error = 3.3704342948675e-19 relative error = 4.8326229158997726669576907323944e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.187 y[1] (analytic) = 0.6979203182628680257165945300589 y[1] (numeric) = 0.69792031826286802605511451845604 absolute error = 3.3851998839714e-19 relative error = 4.8504102766304365230798109871266e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.188 y[1] (analytic) = 0.6984070132171134368657553682163 y[1] (numeric) = 0.69840701321711343720574888315226 absolute error = 3.3999351493596e-19 relative error = 4.8681285912326081846675850901832e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.189 y[1] (analytic) = 0.6988938291100413870448339556942 y[1] (numeric) = 0.69889382911004138738629797243729 absolute error = 3.4146401674309e-19 relative error = 4.8857781042065292017621094678837e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=133.5MB, alloc=4.4MB, time=13.88 NO POLE x[1] = 0.19 y[1] (analytic) = 0.6993807659217640800621165348311 y[1] (numeric) = 0.6993807659217640804050480362657 absolute error = 3.4293150143460e-19 relative error = 4.9033590591046062693334113994419e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.191 y[1] (analytic) = 0.6998678236324105963638999641248 y[1] (numeric) = 0.69986782363241059670829594073015 absolute error = 3.4439597660535e-19 relative error = 4.9208716985714152406121032721748e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.192 y[1] (analytic) = 0.7003550022221268745261579175431 y[1] (numeric) = 0.70035500222212687487201536736971 absolute error = 3.4585744982661e-19 relative error = 4.9383162643124340001309608329459e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.193 y[1] (analytic) = 0.7008423016710756927763455841952 y[1] (numeric) = 0.70084230167107569312366151284296 absolute error = 3.4731592864776e-19 relative error = 4.9556929971211239556301516091216e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.194 y[1] (analytic) = 0.7013297219594366505452810833935 y[1] (numeric) = 0.70132972195943665089405250398881 absolute error = 3.4877142059531e-19 relative error = 4.9730021368676880680052341227938e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.195 y[1] (analytic) = 0.7018172630674061500490419655119 y[1] (numeric) = 0.701817263067406150399265898686 absolute error = 3.5022393317410e-19 relative error = 4.9902439225189404743630088651722e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=137.3MB, alloc=4.4MB, time=14.29 NO POLE x[1] = 0.196 y[1] (analytic) = 0.7023049249751973779008153239836 y[1] (numeric) = 0.70230492497519737825248879784956 absolute error = 3.5167347386596e-19 relative error = 5.0074185921219292475171401934495e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.197 y[1] (analytic) = 0.7027927076630402867526401982392 y[1] (numeric) = 0.70279270766304028710576024837049 absolute error = 3.5312005013129e-19 relative error = 5.0245263828291783715574833797285e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.198 y[1] (analytic) = 0.7032806111111815769669811014075 y[1] (numeric) = 0.70328061111118157732154477081572 absolute error = 3.5456366940822e-19 relative error = 5.0415675308894170146974027849959e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.199 y[1] (analytic) = 0.7037686352998846783180716601475 y[1] (numeric) = 0.70376863529988467867407599925992 absolute error = 3.5600433911242e-19 relative error = 5.0585422716475858264251805661897e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.2 y[1] (analytic) = 0.7042567802094297317229675070826 y[1] (numeric) = 0.70425678020942973208040957372085 absolute error = 3.5744206663825e-19 relative error = 5.0754508395638728423701194790122e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.201 y[1] (analytic) = 0.7047450458201135710022477189595 y[1] (numeric) = 0.70474504582011357136112457831747 absolute error = 3.5887685935797e-19 relative error = 5.0922934682051450524194284841144e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=141.1MB, alloc=4.4MB, time=14.70 NO POLE x[1] = 0.202 y[1] (analytic) = 0.7052334321122497046703042458437 y[1] (numeric) = 0.70523343211224970503061297046571 absolute error = 3.6030872462201e-19 relative error = 5.1090703902514484843005554608565e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.203 y[1] (analytic) = 0.7057219390661682977551589284141 y[1] (numeric) = 0.70572193906616829811689659817322 absolute error = 3.6173766975912e-19 relative error = 5.1257818375007833519375150242351e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.204 y[1] (analytic) = 0.7062105666622161536477478517158 y[1] (numeric) = 0.70621056666221615401091155379222 absolute error = 3.6316370207642e-19 relative error = 5.1424280408724458001993777340521e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.205 y[1] (analytic) = 0.706699314880756695980612934581 y[1] (numeric) = 0.7066993148807566963451997634408 absolute error = 3.6458682885980e-19 relative error = 5.1590092304153107974941747341688e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.206 y[1] (analytic) = 0.707188183702169950535940804336 y[1] (numeric) = 0.70718818370216995090194786170891 absolute error = 3.6600705737291e-19 relative error = 5.1755256352961449592924155053347e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=144.9MB, alloc=4.4MB, time=15.10 NO POLE x[1] = 0.207 y[1] (analytic) = 0.7076771731068525271828891563688 y[1] (numeric) = 0.70767717310685252755031355122769 absolute error = 3.6742439485889e-19 relative error = 5.1919774838266884224856300827904e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.208 y[1] (analytic) = 0.708166283075217601844140947662 y[1] (numeric) = 0.70816628307521760221297979620078 absolute error = 3.6883884853878e-19 relative error = 5.2083650034437452522884523914719e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.209 y[1] (analytic) = 0.7086555135876948984916269224629 y[1] (numeric) = 0.70865551358769489886187734807569 absolute error = 3.7025042561279e-19 relative error = 5.2246884207297167656817065229166e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.21 y[1] (analytic) = 0.7091448646247306711713571169135 y[1] (numeric) = 0.70914486462473067154301625017351 absolute error = 3.7165913326001e-19 relative error = 5.2409479614110538950381744015205e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.211 y[1] (analytic) = 0.7096343361667876860573021376597 y[1] (numeric) = 0.70963433616678768643036711629778 absolute error = 3.7306497863808e-19 relative error = 5.2571438503561546124632857614701e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.212 y[1] (analytic) = 0.710123928194345203534265157226 y[1] (numeric) = 0.7101239281943452039087331261097 absolute error = 3.7446796888370e-19 relative error = 5.2732763115851013007022267784142e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=148.7MB, alloc=4.4MB, time=15.49 NO POLE x[1] = 0.213 y[1] (analytic) = 0.7106136406878989603096857162753 y[1] (numeric) = 0.71061364068789896068555382738841 absolute error = 3.7586811111311e-19 relative error = 5.2893455682789380215981708064288e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.214 y[1] (analytic) = 0.7111034736279611515543165697729 y[1] (numeric) = 0.7111034736279611519315819821934 absolute error = 3.7726541242050e-19 relative error = 5.3053518427598020568516324050218e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.215 y[1] (analytic) = 0.7115934269950604130717149605324 y[1] (numeric) = 0.71159342699506041345037484041273 absolute error = 3.7865987988033e-19 relative error = 5.3212953565260869125265825953160e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.216 y[1] (analytic) = 0.7120835007697418034964898496711 y[1] (numeric) = 0.71208350076974180387654137021699 absolute error = 3.8005152054589e-19 relative error = 5.3371763302346596515526561040330e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.217 y[1] (analytic) = 0.7125736949325667865212467790967 y[1] (numeric) = 0.71257369493256678690268712054625 absolute error = 3.8144034144955e-19 relative error = 5.3529949837068707026674630917793e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=152.5MB, alloc=4.4MB, time=15.89 NO POLE x[1] = 0.218 y[1] (analytic) = 0.7130640094641132131521721863338 y[1] (numeric) = 0.71306400946411321353499853593732 absolute error = 3.8282634960352e-19 relative error = 5.3687515359416933831510223427610e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.219 y[1] (analytic) = 0.7135544443449753039931991367536 y[1] (numeric) = 0.71355444434497530437740868875264 absolute error = 3.8420955199904e-19 relative error = 5.3844462051068089676956046064480e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.22 y[1] (analytic) = 0.7140449995557636315586965825946 y[1] (numeric) = 0.71404499955576363194428653820158 absolute error = 3.8558995560698e-19 relative error = 5.4000792085494773815395497332325e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.221 y[1] (analytic) = 0.7145356750771051026146244020733 y[1] (numeric) = 0.71453567507710510300159196945145 absolute error = 3.8696756737815e-19 relative error = 5.4156507628033067659065198024601e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.222 y[1] (analytic) = 0.7150264708896429405480966153678 y[1] (numeric) = 0.71502647088964294093643900961022 absolute error = 3.8834239424242e-19 relative error = 5.4311610835783546349199713610610e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.223 y[1] (analytic) = 0.7155173869740366677652953173176 y[1] (numeric) = 0.71551738697403666815500976042753 absolute error = 3.8971444310993e-19 relative error = 5.4466103857804816069396391696211e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=156.4MB, alloc=4.4MB, time=16.29 NO POLE x[1] = 0.224 y[1] (analytic) = 0.7160084233109620881176780093363 y[1] (numeric) = 0.71600842331096208850876173020634 absolute error = 3.9108372087004e-19 relative error = 5.4619988834990638397709257209845e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.225 y[1] (analytic) = 0.7164995798811112693564211552532 y[1] (numeric) = 0.71649957988111126974887138964591 absolute error = 3.9245023439271e-19 relative error = 5.4773267900286730515411847841004e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.226 y[1] (analytic) = 0.716990856665192525615042927622 y[1] (numeric) = 0.71699085666519252600885691814913 absolute error = 3.9381399052713e-19 relative error = 5.4925943178523148606639759032688e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.227 y[1] (analytic) = 0.7174822536439303999201482524222 y[1] (numeric) = 0.71748225364393040031532324852508 absolute error = 3.9517499610288e-19 relative error = 5.5078016786600003364537604928050e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.228 y[1] (analytic) = 0.7179737707980656467302394010729 y[1] (numeric) = 0.71797377079806564712677265900226 absolute error = 3.9653325792936e-19 relative error = 5.5229490833431478533589992263351e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.229 memory used=160.2MB, alloc=4.4MB, time=16.68 y[1] (analytic) = 0.7184654081083552145025355192442 y[1] (numeric) = 0.71846540810835521490042430204076 absolute error = 3.9788878279656e-19 relative error = 5.5380367420076609184458285593676e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.23 y[1] (analytic) = 0.7189571655555722282877446221203 y[1] (numeric) = 0.71895716555557222868698619959413 absolute error = 3.9924157747383e-19 relative error = 5.5530648639591363968169663350877e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.231 y[1] (analytic) = 0.7194490431205059723527317255132 y[1] (numeric) = 0.71944904312050597275332337422495 absolute error = 4.0059164871175e-19 relative error = 5.5680336577312240444280657858479e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.232 y[1] (analytic) = 0.7199410407839618728310269215833 y[1] (numeric) = 0.719941040783961873232965924824 absolute error = 4.0193900324070e-19 relative error = 5.5829433310680348077759415728590e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.233 y[1] (analytic) = 0.720433158526761480401117346851 y[1] (numeric) = 0.72043315852676148080440099462239 absolute error = 4.0328364777139e-19 relative error = 5.5977940909338291418272967180813e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.234 y[1] (analytic) = 0.7209253963297424529924671287255 y[1] (numeric) = 0.72092539632974245339709271772052 absolute error = 4.0462558899502e-19 relative error = 5.6125861435175354502354036936453e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=164.0MB, alloc=4.4MB, time=17.08 NO POLE x[1] = 0.235 y[1] (analytic) = 0.7214177541737585385192095349051 y[1] (numeric) = 0.72141775417375853892517436848884 absolute error = 4.0596483358374e-19 relative error = 5.6273196942414105796296322330548e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.236 y[1] (analytic) = 0.7219102320396795576414556877343 y[1] (numeric) = 0.72191023203967955804875707592423 absolute error = 4.0730138818993e-19 relative error = 5.6419949477533214077755588756585e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.237 y[1] (analytic) = 0.7224028299083913865541643429273 y[1] (numeric) = 0.72240282990839138696279960237371 absolute error = 4.0863525944641e-19 relative error = 5.6566121079319337550332826432196e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.238 y[1] (analytic) = 0.7228955477607959398035173689986 y[1] (numeric) = 0.72289554776079594021348382296594 absolute error = 4.0996645396734e-19 relative error = 5.6711713779014270809482178616857e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.239 y[1] (analytic) = 0.723388385577811153130745700274 y[1] (numeric) = 0.7233883855778111535420406786211 absolute error = 4.1129497834710e-19 relative error = 5.6856729600182269316469162038355e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.24 y[1] (analytic) = 0.7238813433403709663433506724822 y[1] (numeric) = 0.72388134334037096675597151164341 absolute error = 4.1262083916121e-19 relative error = 5.7001170558859750159604205652251e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=167.8MB, alloc=4.4MB, time=17.48 NO POLE x[1] = 0.241 y[1] (analytic) = 0.7243744210294253062136657856727 y[1] (numeric) = 0.72437442102942530662760982863859 absolute error = 4.1394404296589e-19 relative error = 5.7145038663516653549441459156486e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.242 y[1] (analytic) = 0.7248676186259400694047040745436 y[1] (numeric) = 0.72486761862594006981996867084249 absolute error = 4.1526459629889e-19 relative error = 5.7288335915193186407678616680800e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.243 y[1] (analytic) = 0.7253609361108971054232364012199 y[1] (numeric) = 0.72536093611089710583981890689813 absolute error = 4.1658250567823e-19 relative error = 5.7431064307347895568144258568096e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.244 y[1] (analytic) = 0.7258543734652941996000461200743 y[1] (numeric) = 0.72585437346529420001794389767792 absolute error = 4.1789777760362e-19 relative error = 5.7573225826075600388872286130757e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.245 y[1] (analytic) = 0.7263479306701450560973056983617 y[1] (numeric) = 0.72634793067014505651651611691732 absolute error = 4.1921041855562e-19 relative error = 5.7714822450013311212423763983859e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=171.6MB, alloc=4.4MB, time=17.87 NO POLE x[1] = 0.246 y[1] (analytic) = 0.7268416077064792809430210102102 y[1] (numeric) = 0.72684160770647928136354144520632 absolute error = 4.2052043499612e-19 relative error = 5.7855856150428158343586204591263e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.247 y[1] (analytic) = 0.7273354045553423650924891549096 y[1] (numeric) = 0.72733540455534236551431698827819 absolute error = 4.2182783336859e-19 relative error = 5.7996328891273360243080361332305e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.248 y[1] (analytic) = 0.7278293211977956675167157834441 y[1] (numeric) = 0.72782932119779566793984840354136 absolute error = 4.2313262009726e-19 relative error = 5.8136242629096970774916083521326e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.249 y[1] (analytic) = 0.7283233576149163983177380498334 y[1] (numeric) = 0.72832335761491639874217285142163 absolute error = 4.2443480158823e-19 relative error = 5.8275599313216009301359756454741e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.25 y[1] (analytic) = 0.7288175137877976018707994360911 y[1] (numeric) = 0.72881751378779760229653382031989 absolute error = 4.2573438422879e-19 relative error = 5.8414400885644298544140388839394e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.251 y[1] (analytic) = 0.7293117896975481399933228314572 y[1] (numeric) = 0.72931178969754814042035420584557 absolute error = 4.2703137438837e-19 relative error = 5.8552649281244113280317202994293e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=175.4MB, alloc=4.4MB, time=18.27 NO POLE x[1] = 0.252 y[1] (analytic) = 0.729806185325292675140628378043 y[1] (numeric) = 0.72980618532529267556895415646027 absolute error = 4.2832577841727e-19 relative error = 5.8690346427573041472160918116559e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.253 y[1] (analytic) = 0.7303007006521716536283427261124 y[1] (numeric) = 0.73030070065217165405796032876016 absolute error = 4.2961760264776e-19 relative error = 5.8827494245056010215230529884537e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.254 y[1] (analytic) = 0.7307953356593412888814464729472 y[1] (numeric) = 0.7307953356593412893123533263413 absolute error = 4.3090685339410e-19 relative error = 5.8964094647008848021332248297792e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.255 y[1] (analytic) = 0.7312900903279735447099066895784 y[1] (numeric) = 0.73129009032797354514210022653013 absolute error = 4.3219353695173e-19 relative error = 5.9100149539548272099009017785818e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.256 y[1] (analytic) = 0.7317849646392561186108415696249 y[1] (numeric) = 0.73178496463925611904431922922358 absolute error = 4.3347765959868e-19 relative error = 5.9235660821805627287668950950692e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=179.2MB, alloc=4.4MB, time=18.67 NO POLE x[1] = 0.257 y[1] (analytic) = 0.732279958574392425097164364076 y[1] (numeric) = 0.7322799585743924255319235916701 absolute error = 4.3475922759410e-19 relative error = 5.9370630385746484725154367337295e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.258 y[1] (analytic) = 0.732775072114601579052653895057 y[1] (numeric) = 0.73277507211460157948869214223688 absolute error = 4.3603824717988e-19 relative error = 5.9505060116412674787381427821036e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.259 y[1] (analytic) = 0.7332703052411183791133990704699 y[1] (numeric) = 0.73327030524111837955071379504921 absolute error = 4.3731472457931e-19 relative error = 5.9638951891759686883593246194193e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.26 y[1] (analytic) = 0.7337656579351932910755649498601 y[1] (numeric) = 0.73376565793519329151415361585838 absolute error = 4.3858866599828e-19 relative error = 5.9772307582840905507822188826153e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.261 y[1] (analytic) = 0.7342611301780924313294280399698 y[1] (numeric) = 0.73426113017809243176928811759424 absolute error = 4.3986007762444e-19 relative error = 5.9905129053713288510479972736486e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.262 y[1] (analytic) = 0.7347567219510975503196286261624 y[1] (numeric) = 0.73475672195109755076075759179024 absolute error = 4.4112896562784e-19 relative error = 6.0037418161544872291191318362194e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=183.1MB, alloc=4.4MB, time=19.07 NO POLE x[1] = 0.263 y[1] (analytic) = 0.735252433235506016031588073272 y[1] (numeric) = 0.73525243323550601647398340943256 absolute error = 4.4239533616056e-19 relative error = 6.0169176756584492518308138717208e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.264 y[1] (analytic) = 0.7357482640126307975040391564251 y[1] (numeric) = 0.73574826401263079794769835178268 absolute error = 4.4365919535758e-19 relative error = 6.0300406682300181103498542272036e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.265 y[1] (analytic) = 0.73624421426380044836761760902 y[1] (numeric) = 0.73624421426380044881253815835554 absolute error = 4.4492054933554e-19 relative error = 6.0431109775230432094019135645620e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.266 y[1] (analytic) = 0.7367402839703590904094632013101 y[1] (numeric) = 0.73674028397035909085564260550415 absolute error = 4.4617940419405e-19 relative error = 6.0561287865182205318771925707154e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.267 y[1] (analytic) = 0.7372364731136663971637787889528 y[1] (numeric) = 0.73723647311366639761121455496784 absolute error = 4.4743576601504e-19 relative error = 6.0690942775162290694581834963502e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.268 y[1] (analytic) = 0.7377327816750975775282958964235 y[1] (numeric) = 0.73773278167509757797698553728632 absolute error = 4.4868964086282e-19 relative error = 6.0820076321405207843588116506442e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=186.9MB, alloc=4.4MB, time=19.46 NO POLE x[1] = 0.269 y[1] (analytic) = 0.7382292096360433594065955253814 y[1] (numeric) = 0.73822920963604335985653656016617 absolute error = 4.4994103478477e-19 relative error = 6.0948690313486350093169930542223e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.27 y[1] (analytic) = 0.7387257569779099733762330029017 y[1] (numeric) = 0.73872575697790997382742295671213 absolute error = 4.5118995381043e-19 relative error = 6.1076786554218100508274022441100e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.271 y[1] (analytic) = 0.7392224236821191363826158089509 y[1] (numeric) = 0.73922242368211913683505221290336 absolute error = 4.5243640395246e-19 relative error = 6.1204366839799352445226430809939e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.272 y[1] (analytic) = 0.7397192097301080354585834465999 y[1] (numeric) = 0.73971920973010803591226383780593 absolute error = 4.5368039120603e-19 relative error = 6.1331432959752202365608036457425e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.273 y[1] (analytic) = 0.7402161151033293114696385422192 y[1] (numeric) = 0.74021611510332931192456046376852 absolute error = 4.5492192154932e-19 relative error = 6.1457986697008870916418603406396e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=190.7MB, alloc=4.4MB, time=19.86 NO POLE x[1] = 0.274 y[1] (analytic) = 0.7407131397832510428847784863063 y[1] (numeric) = 0.74071313978325104334093948724972 absolute error = 4.5616100094342e-19 relative error = 6.1584029827917288250285079115308e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.275 y[1] (analytic) = 0.7412102837513567295728770486412 y[1] (numeric) = 0.74121028375135673003027468397355 absolute error = 4.5739763533235e-19 relative error = 6.1709564122262863584326211744975e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.276 y[1] (analytic) = 0.7417075469891452766245655241632 y[1] (numeric) = 0.74170754698914527708319735480612 absolute error = 4.5863183064292e-19 relative error = 6.1834591343268612290477632271619e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.277 y[1] (analytic) = 0.7422049294781309781995630883063 y[1] (numeric) = 0.74220492947813097865942668109186 absolute error = 4.5986359278556e-19 relative error = 6.1959113247725991017350497345483e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.278 y[1] (analytic) = 0.7427024311998435013994061625305 y[1] (numeric) = 0.7427024311998435018604990901837 absolute error = 4.6109292765320e-19 relative error = 6.2083131585862669144866629295172e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.279 y[1] (analytic) = 0.7432000521358278701655267124262 y[1] (numeric) = 0.74320005213582787062784655354877 absolute error = 4.6231984112257e-19 relative error = 6.2206648101536466897652875867486e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=194.5MB, alloc=4.4MB, time=20.26 NO POLE x[1] = 0.28 y[1] (analytic) = 0.7436977922676444492026295220786 y[1] (numeric) = 0.74369779226764444966617386113149 absolute error = 4.6354433905289e-19 relative error = 6.2329664532077582485719444592493e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.281 y[1] (analytic) = 0.7441956515768689279273186093222 y[1] (numeric) = 0.74419565157686892839208503660952 absolute error = 4.6476642728732e-19 relative error = 6.2452182608502339087052960281555e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.282 y[1] (analytic) = 0.7446936300450923044419230671348 y[1] (numeric) = 0.74469363004509230490790917878697 absolute error = 4.6598611165217e-19 relative error = 6.2574204055425296091926750494214e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.283 y[1] (analytic) = 0.7451917276539208695334727366772 y[1] (numeric) = 0.74519172765392087000067613463415 absolute error = 4.6720339795695e-19 relative error = 6.2695730591084451660641837400970e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.284 y[1] (analytic) = 0.7456899443849761906977742374102 y[1] (numeric) = 0.74568994438497619116619252940507 absolute error = 4.6841829199487e-19 relative error = 6.2816763927426707408109971953362e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=198.3MB, alloc=4.4MB, time=20.66 NO POLE x[1] = 0.285 y[1] (analytic) = 0.7461882802198950961885379993017 y[1] (numeric) = 0.74618828021989509665816879884457 absolute error = 4.6963079954287e-19 relative error = 6.2937305770130020125523589811242e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.286 y[1] (analytic) = 0.7466867351403296590915070613761 y[1] (numeric) = 0.7466867351403296595623479877366 absolute error = 4.7084092636050e-19 relative error = 6.3057357818471467119504569216407e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.287 y[1] (analytic) = 0.7471853091279471814235385197536 y[1] (numeric) = 0.74718530912794718189558719794577 absolute error = 4.7204867819217e-19 relative error = 6.3176921765646881755098960210932e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.288 y[1] (analytic) = 0.7476840021644301782565886269014 y[1] (numeric) = 0.74768400216443017872984268766638 absolute error = 4.7325406076498e-19 relative error = 6.3295999298498067305737342915501e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.289 y[1] (analytic) = 0.7481828142314763618665526620276 y[1] (numeric) = 0.74818281423147636234100974181822 absolute error = 4.7445707979062e-19 relative error = 6.3414592097785102200908433040792e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.29 y[1] (analytic) = 0.7486817453107986259069108104533 y[1] (numeric) = 0.7486817453107986263825685514171 absolute error = 4.7565774096380e-19 relative error = 6.3532701837994091292553112209203e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=202.1MB, alloc=4.4MB, time=21.05 NO POLE x[1] = 0.291 y[1] (analytic) = 0.7491807953841250296071314073389 y[1] (numeric) = 0.74918079538412503008398745730216 absolute error = 4.7685604996326e-19 relative error = 6.3650330187490077121139609757767e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.292 y[1] (analytic) = 0.7496799644331987819957830183699 y[1] (numeric) = 0.7496799644331987824738350308219 absolute error = 4.7805201245200e-19 relative error = 6.3767478808565311809757266026249e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.293 y[1] (analytic) = 0.7501792524397782261483069468916 y[1] (numeric) = 0.75017925243977822662755258096809 absolute error = 4.7924563407649e-19 relative error = 6.3884149357351384221741319289863e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.294 y[1] (analytic) = 0.7506786593856368234594018735347 y[1] (numeric) = 0.75067865938563682393983879400225 absolute error = 4.8043692046755e-19 relative error = 6.4000343483954178639487980127194e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.295 y[1] (analytic) = 0.7511781852525631379399724506047 y[1] (numeric) = 0.75117818525256313842159832784425 absolute error = 4.8162587723955e-19 relative error = 6.4116062832364661892705980486868e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.296 memory used=206.0MB, alloc=4.4MB, time=21.45 y[1] (analytic) = 0.7516778300223608205385937893963 y[1] (numeric) = 0.75167783002236082102140629938793 absolute error = 4.8281250999163e-19 relative error = 6.4231309040638773695884205554237e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.297 y[1] (analytic) = 0.7521775936768485934874438941689 y[1] (numeric) = 0.75217759367684859397144071847552 absolute error = 4.8399682430662e-19 relative error = 6.4346083740770836447442508410372e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.298 y[1] (analytic) = 0.7526774761978602346726562117504 y[1] (numeric) = 0.75267747619786023515783503750217 absolute error = 4.8517882575177e-19 relative error = 6.4460388558807959323953057459598e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.299 y[1] (analytic) = 0.7531774775672445620290445806569 y[1] (numeric) = 0.7531774775672445625154031005351 absolute error = 4.8635851987820e-19 relative error = 6.4574225114794055314526771335203e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.3 y[1] (analytic) = 0.753677597766865417959152978198 y[1] (numeric) = 0.75367759776686541844668889041973 absolute error = 4.8753591222173e-19 relative error = 6.4687595022897198317536717288696e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.301 y[1] (analytic) = 0.7541778367786016537765825783062 y[1] (numeric) = 0.75417783677860165426529358660902 absolute error = 4.8871100830282e-19 relative error = 6.4800499891418479207326257587370e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=209.8MB, alloc=4.4MB, time=21.85 NO POLE x[1] = 0.302 y[1] (analytic) = 0.7546781945843471141735487467675 y[1] (numeric) = 0.75467819458434711466343256039282 absolute error = 4.8988381362532e-19 relative error = 6.4912941322643158370621435947764e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.303 y[1] (analytic) = 0.7551786711660106217126207141443 y[1] (numeric) = 0.75517867116601062220367504782256 absolute error = 4.9105433367826e-19 relative error = 6.5024920913094978621824860819914e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.304 y[1] (analytic) = 0.7556792665055159613425967799888 y[1] (numeric) = 0.7556792665055159618348193539242 absolute error = 4.9222257393540e-19 relative error = 6.5136440253493060357197675575660e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.305 y[1] (analytic) = 0.7561799805848018649384680149155 y[1] (numeric) = 0.75617998058480186543185655476984 absolute error = 4.9338853985434e-19 relative error = 6.5247500928650795243680732279774e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.306 y[1] (analytic) = 0.7566808133858219958654235397591 y[1] (numeric) = 0.75668081338582199635997577663703 absolute error = 4.9455223687793e-19 relative error = 6.5358104517679115076237685556084e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.307 y[1] (analytic) = 0.7571817648905449335668505733925 y[1] (numeric) = 0.75718176489054493406256424382563 absolute error = 4.9571367043313e-19 relative error = 6.5468252593852193385721985913516e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=213.6MB, alloc=4.4MB, time=22.25 NO POLE x[1] = 0.308 y[1] (analytic) = 0.7576828350809541581762825527935 y[1] (numeric) = 0.75768283508095415867315539872569 absolute error = 4.9687284593219e-19 relative error = 6.5577946724779890952612564249260e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.309 y[1] (analytic) = 0.7581840239390480351532487406665 y[1] (numeric) = 0.75818402393904803565127850943815 absolute error = 4.9802976877165e-19 relative error = 6.5687188472292002822055067088156e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.31 y[1] (analytic) = 0.7586853314468397999429788473102 y[1] (numeric) = 0.75868533144683980044216329164312 absolute error = 4.9918444433292e-19 relative error = 6.5795979392531233388495532631101e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.311 y[1] (analytic) = 0.7591867575863575426599163045076 y[1] (numeric) = 0.75918675758635754316025318249012 absolute error = 5.0033687798252e-19 relative error = 6.5904321036001032703288059285099e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.312 y[1] (analytic) = 0.7596883023396441927949939399795 y[1] (numeric) = 0.75968830233964419329648101505125 absolute error = 5.0148707507175e-19 relative error = 6.6012214947538226723324937742067e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=217.4MB, alloc=4.4MB, time=22.66 NO POLE x[1] = 0.313 y[1] (analytic) = 0.7601899656887575039466259113965 y[1] (numeric) = 0.7601899656887575044492609523332 absolute error = 5.0263504093670e-19 relative error = 6.6119662666330495667810215961404e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.314 y[1] (analytic) = 0.7606917476157700385753698690896 y[1] (numeric) = 0.76069174761577003907915064998828 absolute error = 5.0378078089868e-19 relative error = 6.6226665725989010225438427948261e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.315 y[1] (analytic) = 0.7611936481027691527822134264352 y[1] (numeric) = 0.76119364810276915328713772669907 absolute error = 5.0492430026387e-19 relative error = 6.6333225654518323828910573313036e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.316 y[1] (analytic) = 0.7616956671318569811104391264134 y[1] (numeric) = 0.76169566713185698161650473073711 absolute error = 5.0606560432371e-19 relative error = 6.6439343974383549534593506771641e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.317 y[1] (analytic) = 0.7621978046851504213710222020593 y[1] (numeric) = 0.76219780468515042187822690041402 absolute error = 5.0720469835472e-19 relative error = 6.6545022202502501565605905530941e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.318 y[1] (analytic) = 0.7627000607447811194915155374362 y[1] (numeric) = 0.76270006074478111999985712505482 absolute error = 5.0834158761862e-19 relative error = 6.6650261850277215613104692324090e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=221.2MB, alloc=4.4MB, time=23.07 NO POLE x[1] = 0.319 y[1] (analytic) = 0.7632024352928954543883763443664 y[1] (numeric) = 0.76320243529289545489785262172887 absolute error = 5.0947627736247e-19 relative error = 6.6755064423627978955434211747442e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.32 y[1] (analytic) = 0.7637049283116545228626891784563 y[1] (numeric) = 0.76370492831165452337329795127457 absolute error = 5.1060877281827e-19 relative error = 6.6859431422956531977501910572257e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.321 y[1] (analytic) = 0.7642075397832341245192400259476 y[1] (numeric) = 0.76420753978323412503097910515127 absolute error = 5.1173907920367e-19 relative error = 6.6963364343254676991282637318630e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.322 y[1] (analytic) = 0.764710269689824746708896300624 y[1] (numeric) = 0.76471026968982474722176350234595 absolute error = 5.1286720172195e-19 relative error = 6.7066864674117011319508523077397e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.323 y[1] (analytic) = 0.7652131180136315494942476973938 y[1] (numeric) = 0.76521311801363155000824084295503 absolute error = 5.1399314556123e-19 relative error = 6.7169933899652998005088477731376e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE memory used=225.0MB, alloc=4.4MB, time=23.47 x[1] = 0.324 y[1] (analytic) = 0.7657160847368743506384629562579 y[1] (numeric) = 0.76571608473687435115357987215328 absolute error = 5.1511691589538e-19 relative error = 6.7272573498621410814488096685957e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.325 y[1] (analytic) = 0.7662191698417876106173176971697 y[1] (numeric) = 0.76621916984178761113355621505369 absolute error = 5.1623851788399e-19 relative error = 6.7374784944441582830933964946164e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.326 y[1] (analytic) = 0.7667223733106204176543485927833 y[1] (numeric) = 0.76672237331062041817170654945533 absolute error = 5.1735795667203e-19 relative error = 6.7476569705164192119249835895987e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.327 y[1] (analytic) = 0.7672256951256364727790892522811 y[1] (numeric) = 0.76722569512563647329756448967119 absolute error = 5.1847523739009e-19 relative error = 6.7577929243517772605529797611257e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.328 y[1] (analytic) = 0.7677291352691140749083432953719 y[1] (numeric) = 0.7677291352691140754279336605263 absolute error = 5.1959036515440e-19 relative error = 6.7678865016926399243820822906297e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.329 y[1] (analytic) = 0.7682326937233461059504502011517 y[1] (numeric) = 0.76823269372334610647115354621863 absolute error = 5.2070334506693e-19 relative error = 6.7779378477537730244098488177042e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=228.8MB, alloc=4.4MB, time=23.88 NO POLE x[1] = 0.33 y[1] (analytic) = 0.7687363704706400159324996218269 y[1] (numeric) = 0.76873637047064001645431380404232 absolute error = 5.2181418221542e-19 relative error = 6.7879471072241846256175508243080e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.331 y[1] (analytic) = 0.7692401654933178081504499563123 y[1] (numeric) = 0.76924016549331780867337283798603 absolute error = 5.2292288167373e-19 relative error = 6.7979144242731627985432032229478e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.332 y[1] (analytic) = 0.7697440787737160243421070834381 y[1] (numeric) = 0.76974407877371602486613653193899 absolute error = 5.2402944850089e-19 relative error = 6.8078399425394022262305926813880e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.333 y[1] (analytic) = 0.7702481102941857298829192589228 y[1] (numeric) = 0.77024811029418573040805314666527 absolute error = 5.2513388774247e-19 relative error = 6.8177238051502949435886403900059e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.334 y[1] (analytic) = 0.7707522600370924990045442844134 y[1] (numeric) = 0.77075226003709249953078048884316 absolute error = 5.2623620442976e-19 relative error = 6.8275661547127328685391823675329e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.335 y[1] (analytic) = 0.7712565279848164000361451607332 y[1] (numeric) = 0.77125652798481640056348156431278 absolute error = 5.2733640357958e-19 relative error = 6.8373671333121161567117654436911e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=232.7MB, alloc=4.4MB, time=24.29 NO POLE x[1] = 0.336 y[1] (analytic) = 0.7717609141197519806683705410363 y[1] (numeric) = 0.77176091411975198119680503123195 absolute error = 5.2843449019565e-19 relative error = 6.8471268825315802322805867772072e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.337 y[1] (analytic) = 0.7722654184243082532399764028416 y[1] (numeric) = 0.77226541842430825376950687210858 absolute error = 5.2953046926698e-19 relative error = 6.8568455434325609601876712642251e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.338 y[1] (analytic) = 0.7727700408809086800470454608894 y[1] (numeric) = 0.77277004088090868057766980665883 absolute error = 5.3062434576943e-19 relative error = 6.8665232565764584526813331350944e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.339 y[1] (analytic) = 0.7732747814719911586747609454703 y[1] (numeric) = 0.77327478147199115920647707013447 absolute error = 5.3171612466417e-19 relative error = 6.8761601620061280621299554326711e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.34 y[1] (analytic) = 0.773779640180008007351691473272 y[1] (numeric) = 0.77377964018000800788449728417143 absolute error = 5.3280581089943e-19 relative error = 6.8857563992699636183994913350758e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=236.5MB, alloc=4.4MB, time=24.70 NO POLE x[1] = 0.341 y[1] (analytic) = 0.7742846169874259503265438399263 y[1] (numeric) = 0.77428461698742595086043724933547 absolute error = 5.3389340940917e-19 relative error = 6.8953121074061090341311896323751e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.342 y[1] (analytic) = 0.774789711876726103267340665267 y[1] (numeric) = 0.77478971187672610380231959038068 absolute error = 5.3497892511368e-19 relative error = 6.9048274249516428567914733671225e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.343 y[1] (analytic) = 0.7752949248304039586829799238739 y[1] (numeric) = 0.77529492483040395921904228679375 absolute error = 5.3606236291985e-19 relative error = 6.9143024899474717066715046549970e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.344 y[1] (analytic) = 0.7758002558309693713671334947511 y[1] (numeric) = 0.77580025583096937190427722247186 absolute error = 5.3714372772076e-19 relative error = 6.9237374399344406660791721902814e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.345 y[1] (analytic) = 0.7763057048609465438644419649799 y[1] (numeric) = 0.77630570486094654440266498937586 absolute error = 5.3822302439596e-19 relative error = 6.9331324119583483206892906555967e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.346 y[1] (analytic) = 0.7768112719028740119589630229027 y[1] (numeric) = 0.77681127190287401249826328071422 absolute error = 5.3930025781152e-19 relative error = 6.9424875425719826089687516458923e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=240.3MB, alloc=4.4MB, time=25.11 NO POLE x[1] = 0.347 y[1] (analytic) = 0.7773169569393046301848308768273 y[1] (numeric) = 0.77731695693930463072520630964746 absolute error = 5.4037543282016e-19 relative error = 6.9518029678381791071812788756138e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.348 y[1] (analytic) = 0.7778227599528055573590842353981 y[1] (numeric) = 0.77782275995280555790053278965863 absolute error = 5.4144855426053e-19 relative error = 6.9610788233219406375382493709097e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.349 y[1] (analytic) = 0.7783286809259582421366204856551 y[1] (numeric) = 0.77832868092595824267914011261386 absolute error = 5.4251962695876e-19 relative error = 6.9703152441117538536858126521621e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.35 y[1] (analytic) = 0.7788347198413584085872338044118 y[1] (numeric) = 0.77883471984135840913082246013859 absolute error = 5.4358865572679e-19 relative error = 6.9795123647994801115657359070365e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.351 y[1] (analytic) = 0.7793408766816160417946950378968 y[1] (numeric) = 0.77934087668161604233935068326113 absolute error = 5.4465564536433e-19 relative error = 6.9886703195069036766520605539793e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE memory used=244.1MB, alloc=4.4MB, time=25.51 x[1] = 0.352 y[1] (analytic) = 0.7798471514293553734778312836697 y[1] (numeric) = 0.7798471514293553740235518843261 absolute error = 5.4572060065640e-19 relative error = 6.9977892418554999459682349885401e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.353 y[1] (analytic) = 0.7803535440672148676335632075812 y[1] (numeric) = 0.78035354406721486818034673395736 absolute error = 5.4678352637616e-19 relative error = 7.0068692650041123024964006192769e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.354 y[1] (analytic) = 0.7808600545778472062018582270715 y[1] (numeric) = 0.78086005457784720674970265435404 absolute error = 5.4784442728254e-19 relative error = 7.0159105216198902987035427703940e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.355 y[1] (analytic) = 0.7813666829439192747525577903125 y[1] (numeric) = 0.78136668294391927530146109843461 absolute error = 5.4890330812211e-19 relative error = 7.0249131439036059129109342647780e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.356 y[1] (analytic) = 0.7818734291481121481940370786768 y[1] (numeric) = 0.78187342914811214874399725230451 absolute error = 5.4996017362771e-19 relative error = 7.0338772635734336079592539735671e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.357 y[1] (analytic) = 0.7823802931731210765036555576927 y[1] (numeric) = 0.78238029317312107705467058621217 absolute error = 5.5101502851947e-19 relative error = 7.0428030118793423660279497719314e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=247.9MB, alloc=4.4MB, time=25.92 NO POLE x[1] = 0.358 y[1] (analytic) = 0.7828872750016554704799568990739 y[1] (numeric) = 0.78288727500165547103202477657853 absolute error = 5.5206787750463e-19 relative error = 7.0516905196021050853215193567648e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.359 y[1] (analytic) = 0.7833943746164388875165768935592 y[1] (numeric) = 0.78339437461643888806969561883622 absolute error = 5.5311872527702e-19 relative error = 7.0605399170479728620932928809693e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.36 y[1] (analytic) = 0.78390159200020901739781807118 y[1] (numeric) = 0.7839015920002090179519856476978 absolute error = 5.5416757651780e-19 relative error = 7.0693513340594445209136572143551e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.361 y[1] (analytic) = 0.7844089271357176681158498421933 y[1] (numeric) = 0.78440892713571766867106427808871 absolute error = 5.5521443589541e-19 relative error = 7.0781249000159242118583206159898e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.362 y[1] (analytic) = 0.7849163800057307517094930682652 y[1] (numeric) = 0.78491638000573075226575237633028 absolute error = 5.5625930806508e-19 relative error = 7.0868607438287718759001614264135e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.363 y[1] (analytic) = 0.7854239505930282701245480695735 y[1] (numeric) = 0.78542395059302827068185026724277 absolute error = 5.5730219766927e-19 relative error = 7.0955589939482147498204142642765e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=251.7MB, alloc=4.4MB, time=26.32 NO POLE x[1] = 0.364 y[1] (analytic) = 0.7859316388804043010956251693202 y[1] (numeric) = 0.78593163888040430165396827865819 absolute error = 5.5834310933799e-19 relative error = 7.1042197783687063520346307074971e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.365 y[1] (analytic) = 0.7864394448506669840494369727006 y[1] (numeric) = 0.78643944485066698460881902038895 absolute error = 5.5938204768835e-19 relative error = 7.1128432246244748452523269095922e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.366 y[1] (analytic) = 0.7869473684866385060295116726672 y[1] (numeric) = 0.78694736848663850658993068999163 absolute error = 5.6041901732443e-19 relative error = 7.1214294597891560733876839375946e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.367 y[1] (analytic) = 0.7874554097711550876422867698579 y[1] (numeric) = 0.78745540977115508820374079269629 absolute error = 5.6145402283839e-19 relative error = 7.1299786104911760403426819270079e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.368 y[1] (analytic) = 0.787963568687066969024542688833 y[1] (numeric) = 0.78796356868706696958702975764204 absolute error = 5.6248706880904e-19 relative error = 7.1384908028968399724847354642088e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=255.5MB, alloc=4.4MB, time=26.73 NO POLE x[1] = 0.369 y[1] (analytic) = 0.7884718452172383958321358672659 y[1] (numeric) = 0.78847184521723839639565402706888 absolute error = 5.6351815980298e-19 relative error = 7.1469661627260825473645544269661e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.37 y[1] (analytic) = 0.7889802393445476052499909889917 y[1] (numeric) = 0.78898023934454760581453828936618 absolute error = 5.6454730037448e-19 relative error = 7.1554048152521883457598287300814e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.371 y[1] (analytic) = 0.7894887510518868120233121258048 y[1] (numeric) = 0.7894887510518868125888866208693 absolute error = 5.6557449506450e-19 relative error = 7.1638068852906213210523836821586e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.372 y[1] (analytic) = 0.7899973803221621945099726466266 y[1] (numeric) = 0.78999738032216219507657239502928 absolute error = 5.6659974840268e-19 relative error = 7.1721724972254935439023409124357e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.373 y[1] (analytic) = 0.7905061271382938807540438461515 y[1] (numeric) = 0.79050612713829388132166691105695 absolute error = 5.6762306490545e-19 relative error = 7.1805017749868503470508437195430e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.374 y[1] (analytic) = 0.7910149914832159345804223382854 y[1] (numeric) = 0.79101499148321593514906678736258 absolute error = 5.6864444907718e-19 relative error = 7.1887948420664758070102470297442e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=259.4MB, alloc=4.4MB, time=27.14 NO POLE x[1] = 0.375 y[1] (analytic) = 0.7915239733398763417105163526672 y[1] (numeric) = 0.79152397333987634228018025807694 absolute error = 5.6966390540974e-19 relative error = 7.1970518215135504882591425540475e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.376 y[1] (analytic) = 0.7920330726912369958989511652662 y[1] (numeric) = 0.79203307269123699646963260364923 absolute error = 5.7068143838303e-19 relative error = 7.2052728359425739361685881569678e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.377 y[1] (analytic) = 0.7925422895202736850912539865094 y[1] (numeric) = 0.79254228952027368566295103897356 absolute error = 5.7169705246416e-19 relative error = 7.2134580075242238842530174604600e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.378 y[1] (analytic) = 0.7930516238099760776024787225898 y[1] (numeric) = 0.79305162380997607817518947469839 absolute error = 5.7271075210859e-19 relative error = 7.2216074580009663723789770986323e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.379 y[1] (analytic) = 0.7935610755433477083167311175649 y[1] (numeric) = 0.793561075543347708890453659324 absolute error = 5.7372254175910e-19 relative error = 7.2297213086752616932006882178788e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=263.2MB, alloc=4.4MB, time=27.54 NO POLE x[1] = 0.38 y[1] (analytic) = 0.7940706447034059649075548755455 y[1] (numeric) = 0.79407064470340596548228730139228 absolute error = 5.7473242584678e-19 relative error = 7.2377996804232553042022389465637e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.381 y[1] (analytic) = 0.7945803312731820740791394537311 y[1] (numeric) = 0.79458033127318207465487986252153 absolute error = 5.7574040879043e-19 relative error = 7.2458426936884065212117896789220e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.382 y[1] (analytic) = 0.7950901352357210878283103082411 y[1] (numeric) = 0.79509013523572108840505680323765 absolute error = 5.7674649499655e-19 relative error = 7.2538504684825632714275744694395e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.383 y[1] (analytic) = 0.7956000565740818697272624656426 y[1] (numeric) = 0.79560005657408187030501315450249 absolute error = 5.7775068885989e-19 relative error = 7.2618231243940724447600843405213e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.384 y[1] (analytic) = 0.7961100952713370812269983837782 y[1] (numeric) = 0.79611009527133708180575137854138 absolute error = 5.7875299476318e-19 relative error = 7.2697607805855600016947514410588e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.385 y[1] (analytic) = 0.7966202513105731679814311559483 y[1] (numeric) = 0.79662025131057316856118457302553 absolute error = 5.7975341707723e-19 relative error = 7.2776635557963652294514866499829e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=267.0MB, alloc=4.4MB, time=27.95 NO POLE x[1] = 0.386 y[1] (analytic) = 0.7971305246748903461921142027108 y[1] (numeric) = 0.79713052467489034677286616287174 absolute error = 5.8075196016094e-19 relative error = 7.2855315683438375992321813373560e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.387 y[1] (analytic) = 0.7976409153474025889735586855218 y[1] (numeric) = 0.79764091534740258955530731388302 absolute error = 5.8174862836122e-19 relative error = 7.2933649361235013111905401400176e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.388 y[1] (analytic) = 0.7981514233112376127390999661562 y[1] (numeric) = 0.79815142331123761332184339216917 absolute error = 5.8274342601297e-19 relative error = 7.3011637766099719350506263262711e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.389 y[1] (analytic) = 0.7986620485495368636072745253181 y[1] (numeric) = 0.79866204854953686419101088275791 absolute error = 5.8373635743981e-19 relative error = 7.3089282068672612284531946354673e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.39 y[1] (analytic) = 0.7991727910454555038286688430814 y[1] (numeric) = 0.79917279104545550441339627003453 absolute error = 5.8472742695313e-19 relative error = 7.3166583435380216900455581447499e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.391 y[1] (analytic) = 0.79968365078216239823320183278 y[1] (numeric) = 0.79968365078216239881891847163301 absolute error = 5.8571663885301e-19 relative error = 7.3243543028562175467365248583971e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=270.8MB, alloc=4.4MB, time=28.37 NO POLE x[1] = 0.392 y[1] (analytic) = 0.8001946277428401006978025087165 y[1] (numeric) = 0.80019462774284010128450650614388 absolute error = 5.8670399742738e-19 relative error = 7.3320162006377535289303208556023e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.393 y[1] (analytic) = 0.8007057219106848406344446565529 y[1] (numeric) = 0.80070572191068484122213416350564 absolute error = 5.8768950695274e-19 relative error = 7.3396441522906233048604383191267e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.394 y[1] (analytic) = 0.8012169332689065094985003635128 y[1] (numeric) = 0.80121693326890651008717353520679 absolute error = 5.8867317169399e-19 relative error = 7.3472382728139119366362922145990e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.395 y[1] (analytic) = 0.8017282618007286473173743535422 y[1] (numeric) = 0.80172826180072864790702934944659 absolute error = 5.8965499590439e-19 relative error = 7.3547986767984246026666917017826e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.396 y[1] (analytic) = 0.8022397074893884292393811603581 y[1] (numeric) = 0.80223970748938842983001614418414 absolute error = 5.9063498382604e-19 relative error = 7.3623254784337957215575834310561e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=274.6MB, alloc=4.4MB, time=28.77 NO POLE x[1] = 0.397 y[1] (analytic) = 0.8027512703181366521028272588598 y[1] (numeric) = 0.80275127031813665269444039854866 absolute error = 5.9161313968886e-19 relative error = 7.3698187914968861065379271477423e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.398 y[1] (analytic) = 0.803262950270237721025260362678 y[1] (numeric) = 0.80326295027023772161784983038959 absolute error = 5.9258946771159e-19 relative error = 7.3772787293653728319078741691117e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.399 y[1] (analytic) = 0.8037747473289696360128481827122 y[1] (numeric) = 0.80377474732896963660641215481382 absolute error = 5.9356397210162e-19 relative error = 7.3847054050167318218191459482953e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.4 y[1] (analytic) = 0.8042866614776239785898490283349 y[1] (numeric) = 0.80428666147762397918438568539012 absolute error = 5.9453665705522e-19 relative error = 7.3920989310321986036650572836078e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.401 y[1] (analytic) = 0.8047986926995058984481367195416 y[1] (numeric) = 0.80479869269950589904364424629813 absolute error = 5.9550752675653e-19 relative error = 7.3994594195853072915685744736911e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.402 y[1] (analytic) = 0.8053108409779341001167423646828 y[1] (numeric) = 0.80531084097793410071321895006176 absolute error = 5.9647658537896e-19 relative error = 7.4067869824604005548356788178004e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=278.4MB, alloc=4.4MB, time=29.18 NO POLE x[1] = 0.403 y[1] (analytic) = 0.8058231062962408296513756445515 y[1] (numeric) = 0.80582310629624083024881948163585 absolute error = 5.9744383708435e-19 relative error = 7.4140817310432722648841912496143e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.404 y[1] (analytic) = 0.8063354886377718613438883294862 y[1] (numeric) = 0.80633548863777186194229761551009 absolute error = 5.9840928602389e-19 relative error = 7.4213437763336738641655711783553e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.405 y[1] (analytic) = 0.8068479879858864844516428418212 y[1] (numeric) = 0.80684798798588648505101577815766 absolute error = 5.9937293633646e-19 relative error = 7.4285732289257977101983601711686e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.406 y[1] (analytic) = 0.8073606043239574899467487614365 y[1] (numeric) = 0.80736060432395749054708355358714 absolute error = 6.0033479215064e-19 relative error = 7.4357701990342924269066938200832e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.407 y[1] (analytic) = 0.807873337635371157285130257373 y[1] (numeric) = 0.80787333763537115788642511495659 absolute error = 6.0129485758359e-19 relative error = 7.4429347964814364269108491375802e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=282.2MB, alloc=4.4MB, time=29.59 NO POLE x[1] = 0.408 y[1] (analytic) = 0.8083861879035272411953875134378 y[1] (numeric) = 0.80838618790352724179764065017894 absolute error = 6.0225313674114e-19 relative error = 7.4500671306993292287400236958698e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.409 y[1] (analytic) = 0.8088991551118389584874153004696 y[1] (numeric) = 0.80889915511183895909062493418803 absolute error = 6.0320963371843e-19 relative error = 7.4571673107388747052165786938672e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.41 y[1] (analytic) = 0.8094122392437329748807419324471 y[1] (numeric) = 0.80941223924373297548490628504652 absolute error = 6.0416435259942e-19 relative error = 7.4642354452647703165201807172389e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.411 y[1] (analytic) = 0.8099254402826493918525519279037 y[1] (numeric) = 0.80992544028264939245766922536022 absolute error = 6.0511729745652e-19 relative error = 7.4712716425519978899137444896565e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.412 y[1] (analytic) = 0.8104387582120417335053557821674 y[1] (numeric) = 0.81043875821204173411142425451945 absolute error = 6.0606847235205e-19 relative error = 7.4782760105049089854868748406498e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.413 y[1] (analytic) = 0.8109521930153769334542703397805 y[1] (numeric) = 0.81095219301537693406128822111752 absolute error = 6.0701788133702e-19 relative error = 7.4852486566431910857637093721666e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=286.1MB, alloc=4.4MB, time=30.00 NO POLE x[1] = 0.414 y[1] (analytic) = 0.8114657446761353217338733400484 y[1] (numeric) = 0.81146574467613532234183886849952 absolute error = 6.0796552845112e-19 relative error = 7.4921896881027992165537498031866e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.415 y[1] (analytic) = 0.8119794131778106117245957920491 y[1] (numeric) = 0.81197941317781061233350720977282 absolute error = 6.0891141772372e-19 relative error = 7.4990992116493236532256756989519e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.416 y[1] (analytic) = 0.8124931985039098870986159185909 y[1] (numeric) = 0.81249319850390988770847147176395 absolute error = 6.0985555317305e-19 relative error = 7.5059773336689076001669254911156e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.417 y[1] (analytic) = 0.8130071006379535887852184915294 y[1] (numeric) = 0.81300710063795358939601643033611 absolute error = 6.1079793880671e-19 relative error = 7.5128241601755591865110487385414e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.418 y[1] (analytic) = 0.8135211195634755019555834635663 y[1] (numeric) = 0.81352111956347550256732204218769 absolute error = 6.1173857862139e-19 relative error = 7.5196397968087257375404677380752e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.419 y[1] (analytic) = 0.8140352552640227430269678841331 y[1] (numeric) = 0.81403525526402274363964536073609 absolute error = 6.1267747660299e-19 relative error = 7.5264243488357918825461848465237e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=289.9MB, alloc=4.4MB, time=30.41 NO POLE x[1] = 0.42 y[1] (analytic) = 0.8145495077231557466862451692259 y[1] (numeric) = 0.81454950772315574729985980595293 absolute error = 6.1361463672703e-19 relative error = 7.5331779211581293063192006329583e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.421 y[1] (analytic) = 0.8150638769244482529327658770997 y[1] (numeric) = 0.81506387692444825354731594005753 absolute error = 6.1455006295783e-19 relative error = 7.5399006183020336017492742069979e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.422 y[1] (analytic) = 0.8155783628514872941405042235466 y[1] (numeric) = 0.81557836285148729475598798279592 absolute error = 6.1548375924932e-19 relative error = 7.5465925444296820792343030640566e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.423 y[1] (analytic) = 0.8160929654878731821394546520879 y[1] (numeric) = 0.81609296548787318275587038163299 absolute error = 6.1641572954509e-19 relative error = 7.5532538033407383084808424858014e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.424 y[1] (analytic) = 0.8166076848172194953162428557894 y[1] (numeric) = 0.81660768481721949593358883356712 absolute error = 6.1734597777772e-19 relative error = 7.5598844984651344592481633798507e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=293.7MB, alloc=4.4MB, time=30.81 NO POLE x[1] = 0.425 y[1] (analytic) = 0.8171225208231530657339157285699 y[1] (numeric) = 0.81712252082315306635219023643935 absolute error = 6.1827450786945e-19 relative error = 7.5664847328722807631189918506457e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.426 y[1] (analytic) = 0.8176374734893139662708748048227 y[1] (numeric) = 0.81763747348931396689007612855468 absolute error = 6.1920132373198e-19 relative error = 7.5730546092696006025060958486111e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.427 y[1] (analytic) = 0.8181525427993554977789178268946 y[1] (numeric) = 0.81815254279935549839904425616117 absolute error = 6.2012642926657e-19 relative error = 7.5795942300047387511659759370746e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.428 y[1] (analytic) = 0.8186677287369441762603531604804 y[1] (numeric) = 0.81866772873694417688140298884444 absolute error = 6.2104982836404e-19 relative error = 7.5861036970665406025870346084934e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.429 y[1] (analytic) = 0.8191830312857597200641518582865 y[1] (numeric) = 0.81918303128575972068612338319122 absolute error = 6.2197152490472e-19 relative error = 7.5925831120854181552579840683194e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.43 y[1] (analytic) = 0.819698450429495037101102252398 y[1] (numeric) = 0.81969845042949503772399377515666 absolute error = 6.2289152275866e-19 relative error = 7.5990325763368873293510606766453e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=297.5MB, alloc=4.4MB, time=31.22 NO POLE x[1] = 0.431 y[1] (analytic) = 0.8202139861518562120779320356516 y[1] (numeric) = 0.82021398615185621270174186143685 absolute error = 6.2380982578525e-19 relative error = 7.6054521907378995109877737736474e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.432 y[1] (analytic) = 0.8207296384365624937503628719667 y[1] (numeric) = 0.82072963843656249437508930980083 absolute error = 6.2472643783413e-19 relative error = 7.6118420558589054512252758611486e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.433 y[1] (analytic) = 0.8212454072673462821950626550325 y[1] (numeric) = 0.82124540726734628282070401777633 absolute error = 6.2564136274383e-19 relative error = 7.6182022719082335709128099244223e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.434 y[1] (analytic) = 0.8217612926279531161004606139672 y[1] (numeric) = 0.82176129262795311672701521831093 absolute error = 6.2655460434373e-19 relative error = 7.6245329387569289188386157991293e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.435 y[1] (analytic) = 0.822277294502141660076390543594 y[1] (numeric) = 0.82227729450214166070385671004597 absolute error = 6.2746616645197e-19 relative error = 7.6308341559142459662538099265709e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=301.3MB, alloc=4.4MB, time=31.62 NO POLE x[1] = 0.436 y[1] (analytic) = 0.8227934128736836919825275157683 y[1] (numeric) = 0.82279341287368369261090356864521 absolute error = 6.2837605287691e-19 relative error = 7.6371060225463801041708907167421e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.437 y[1] (analytic) = 0.8233096477263640902755835067975 y[1] (numeric) = 0.82330964772636409090486777421442 absolute error = 6.2928426741692e-19 relative error = 7.6433486374748455003606475766811e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.438 y[1] (analytic) = 0.8238259990439808213752274543724 y[1] (numeric) = 0.82382599904398082200541826823233 absolute error = 6.3019081385993e-19 relative error = 7.6495620991719465941710449163481e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.439 y[1] (analytic) = 0.8243424668103449270486953356048 y[1] (numeric) = 0.82434246681034492767979103158867 absolute error = 6.3109569598387e-19 relative error = 7.6557465057670638749804312517621e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.44 y[1] (analytic) = 0.8248590510092805118140559357349 y[1] (numeric) = 0.82485905100928051244605485329167 absolute error = 6.3199891755677e-19 relative error = 7.6619019550487949102810188934595e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.441 y[1] (analytic) = 0.8253757516246247303620980548297 y[1] (numeric) = 0.82537575162462473099499853716619 absolute error = 6.3290048233649e-19 relative error = 7.6680285444626052964889853557807e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=305.1MB, alloc=4.4MB, time=32.02 NO POLE x[1] = 0.442 y[1] (analytic) = 0.8258925686402277749968049773448 y[1] (numeric) = 0.82589256864022777563060537141529 absolute error = 6.3380039407049e-19 relative error = 7.6741263711089735201256788743625e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.443 y[1] (analytic) = 0.8264095020399528630943821067657 y[1] (numeric) = 0.82640950203995286372908076326305 absolute error = 6.3469865649735e-19 relative error = 7.6801955317627194942168015934549e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.444 y[1] (analytic) = 0.826926551807676224580803744691 y[1] (numeric) = 0.82692655180767622521639901803534 absolute error = 6.3559527334434e-19 relative error = 7.6862361228444941140417731393573e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.445 y[1] (analytic) = 0.8274437179272870894278450706394 y[1] (numeric) = 0.82744371792728709006433531896921 absolute error = 6.3649024832981e-19 relative error = 7.6922482404506281578981093108353e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.446 y[1] (analytic) = 0.8279610003826876751675654556086 y[1] (numeric) = 0.82796100038268767580494904077034 absolute error = 6.3738358516174e-19 relative error = 7.6982319803364910914214857431690e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.447 y[1] (analytic) = 0.8284783991577931744252093189246 y[1] (numeric) = 0.82847839915779317506348460646313 absolute error = 6.3827528753853e-19 relative error = 7.7041874379269504741821110669533e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=309.0MB, alloc=4.4MB, time=32.44 NO POLE x[1] = 0.448 y[1] (analytic) = 0.8289959142365317424704908142506 y[1] (numeric) = 0.82899591423653174310965617339941 absolute error = 6.3916535914881e-19 relative error = 7.7101147083149714214332059758832e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.449 y[1] (analytic) = 0.8295135456028444847872287067398 y[1] (numeric) = 0.82951354560284448542728251041051 absolute error = 6.4005380367071e-19 relative error = 7.7160138862537122092807761653244e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.45 y[1] (analytic) = 0.8300312932406854446612978792303 y[1] (numeric) = 0.83003129324068544530223850400395 absolute error = 6.4094062477365e-19 relative error = 7.7218850661790105053584639430128e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.451 y[1] (analytic) = 0.8305491571340215907868639811044 y[1] (numeric) = 0.83054915713402159142868980722086 absolute error = 6.4182582611646e-19 relative error = 7.7277283421875986015976208725537e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.452 y[1] (analytic) = 0.8310671372668328048908678089355 y[1] (numeric) = 0.83106713726683280553357722028443 absolute error = 6.4270941134893e-19 relative error = 7.7335438080566730602774814194401e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=312.8MB, alloc=4.4MB, time=32.84 NO POLE x[1] = 0.453 y[1] (analytic) = 0.8315852336231118693757260833726 y[1] (numeric) = 0.83158523362311187001931746748301 absolute error = 6.4359138411041e-19 relative error = 7.7393315572279175448719916190692e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.454 y[1] (analytic) = 0.8321034461868644549802153618143 y[1] (numeric) = 0.83210344618686445562468710984577 absolute error = 6.4447174803147e-19 relative error = 7.7450916828283603381645885210348e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.455 y[1] (analytic) = 0.832621774942109108458505901351 y[1] (numeric) = 0.83262177494210910910385640808335 absolute error = 6.4535050673235e-19 relative error = 7.7508242776526017802197956107254e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.456 y[1] (analytic) = 0.8331402198728772402773123611579 y[1] (numeric) = 0.83314021987287724092354002498237 absolute error = 6.4622766382447e-19 relative error = 7.7565294341818372752949701606323e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.457 y[1] (analytic) = 0.8336587809632131123311283080525 y[1] (numeric) = 0.83365878096321311297823153096104 absolute error = 6.4710322290854e-19 relative error = 7.7622072445620259663146345562588e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.458 y[1] (analytic) = 0.8341774581971738256755115632374 y[1] (numeric) = 0.83417745819717382632348875081427 absolute error = 6.4797718757687e-19 relative error = 7.7678578006324905511243467967788e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=316.6MB, alloc=4.4MB, time=33.25 NO POLE x[1] = 0.459 y[1] (analytic) = 0.8346962515588293082783875023893 y[1] (numeric) = 0.83469625155882930892723706380096 absolute error = 6.4884956141166e-19 relative error = 7.7734811939062499533070461907186e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.46 y[1] (analytic) = 0.8352151610322623027893374951687 y[1] (numeric) = 0.83521516103226230343905784315472 absolute error = 6.4972034798602e-19 relative error = 7.7790775155831121769717616129015e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.461 y[1] (analytic) = 0.8357341866015683543268397439686 y[1] (numeric) = 0.83573418660156835497742929483183 absolute error = 6.5058955086323e-19 relative error = 7.7846468565416597682347621655350e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.462 y[1] (analytic) = 0.8362533282508557982834298552511 y[1] (numeric) = 0.83625332825085579893488702884847 absolute error = 6.5145717359737e-19 relative error = 7.7901893073476484179997979809762e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.463 y[1] (analytic) = 0.8367725859642457481487485501695 y[1] (numeric) = 0.8367725859642457488010717699027 absolute error = 6.5232321973320e-19 relative error = 7.7957049582534119950667721351976e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=320.4MB, alloc=4.4MB, time=33.66 NO POLE x[1] = 0.464 y[1] (analytic) = 0.837291959725872083350443994321 y[1] (numeric) = 0.83729195972587208400363168712674 absolute error = 6.5318769280574e-19 relative error = 7.8011938991936875053299114264503e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.465 y[1] (analytic) = 0.8378114495198814371128962994305 y[1] (numeric) = 0.83781144951988143776694689577184 absolute error = 6.5405059634134e-19 relative error = 7.8066562197992407064903218956363e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.466 y[1] (analytic) = 0.8383310553304331843337318225359 y[1] (numeric) = 0.83833105533043318498864375639245 absolute error = 6.5491193385655e-19 relative error = 7.8120920093841991348287550870683e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.467 y[1] (analytic) = 0.8388507771416994294780949608097 y[1] (numeric) = 0.83885077714169943013386666966857 absolute error = 6.5577170885887e-19 relative error = 7.8175013569558445050771213037026e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.468 y[1] (analytic) = 0.8393706149378649944906452125399 y[1] (numeric) = 0.83937061493786499514727513738642 absolute error = 6.5662992484652e-19 relative error = 7.8228843512126940043780852324243e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.469 y[1] (analytic) = 0.8398905687031274067252473469794 y[1] (numeric) = 0.83989056870312740738273393228756 absolute error = 6.5748658530816e-19 relative error = 7.8282410805419940729926848734549e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=324.2MB, alloc=4.4MB, time=34.07 NO POLE x[1] = 0.47 y[1] (analytic) = 0.840410638421696886892322597773 y[1] (numeric) = 0.84041063842169688755066429149676 absolute error = 6.5834169372376e-19 relative error = 7.8335716330309079560971221115530e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.471 y[1] (analytic) = 0.8409308240777963370238288664851 y[1] (numeric) = 0.84093082407779633768302412004936 absolute error = 6.5919525356426e-19 relative error = 7.8388760964632735989607477238534e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.472 y[1] (analytic) = 0.8414511256556613284558379943694 y[1] (numeric) = 0.84145112565566132911588526266017 absolute error = 6.6004726829077e-19 relative error = 7.8441545583109074834084431001970e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.473 y[1] (analytic) = 0.8419715431395400898286782319531 y[1] (numeric) = 0.84197154313954009048957597330887 absolute error = 6.6089774135577e-19 relative error = 7.8494071057486951519951332423889e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.474 y[1] (analytic) = 0.8424920765136934951046101072593 y[1] (numeric) = 0.84249207651369349576635678346201 absolute error = 6.6174667620271e-19 relative error = 7.8546338256506351964011000027576e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.475 y[1] (analytic) = 0.8430127257623950516030039645435 y[1] (numeric) = 0.84301272576239505226559804080932 absolute error = 6.6259407626582e-19 relative error = 7.8598348045883896219535097911352e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=328.0MB, alloc=4.4MB, time=34.48 NO POLE x[1] = 0.476 y[1] (analytic) = 0.8435334908699308880529875162926 y[1] (numeric) = 0.84353349086993088871642746126302 absolute error = 6.6343994497042e-19 relative error = 7.8650101288357676872748216046575e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.477 y[1] (analytic) = 0.8440543718205997426635318219209 y[1] (numeric) = 0.84405437182059974332781610765359 absolute error = 6.6428428573269e-19 relative error = 7.8701598843667961103038417315836e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.478 y[1] (analytic) = 0.8445753685987129512109441770946 y[1] (numeric) = 0.84457536859871295187607127905458 absolute error = 6.6512710195998e-19 relative error = 7.8752841568601908134520008021357e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.479 y[1] (analytic) = 0.8450964811885944351437364679326 y[1] (numeric) = 0.84509648118859443580970486498326 absolute error = 6.6596839705066e-19 relative error = 7.8803830316983696130436975153782e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.48 y[1] (analytic) = 0.845617709574580689704837614459 y[1] (numeric) = 0.84561770957458069037164578885328 absolute error = 6.6680817439428e-19 relative error = 7.8854565939701351637600107042812e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=331.8MB, alloc=4.4MB, time=34.89 NO POLE x[1] = 0.481 y[1] (analytic) = 0.8461390537410207720711187976299 y[1] (numeric) = 0.84613905374102077273876523500132 absolute error = 6.6764643737142e-19 relative error = 7.8905049284696849299951010196107e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.482 y[1] (analytic) = 0.8466605136722762895102002340184 y[1] (numeric) = 0.84666051367227629017868342337199 absolute error = 6.6848318935359e-19 relative error = 7.8955281196962160109233531698510e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.483 y[1] (analytic) = 0.8471820893527213875545083318205 y[1] (numeric) = 0.84718208935272138822382676552453 absolute error = 6.6931843370403e-19 relative error = 7.9005262518641555204452110375289e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.484 y[1] (analytic) = 0.8477037807667427381925521312454 y[1] (numeric) = 0.84770378076674273886270430502226 absolute error = 6.7015217377686e-19 relative error = 7.9054994088938894863074656385954e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.485 y[1] (analytic) = 0.8482255878987395280773880015639 y[1] (numeric) = 0.8482255878987395287483724144809 absolute error = 6.7098441291700e-19 relative error = 7.9104476744116043627654010869717e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.486 y[1] (analytic) = 0.848747510733123446752241636125 y[1] (numeric) = 0.8487475107331234474240567905864 absolute error = 6.7181515446140e-19 relative error = 7.9153711317645642737232546912148e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=335.7MB, alloc=4.4MB, time=35.30 NO POLE x[1] = 0.487 y[1] (analytic) = 0.8492695492543186748932564555087 y[1] (numeric) = 0.84926954925431867556590085724644 absolute error = 6.7264440173774e-19 relative error = 7.9202698640065422425605697351480e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.488 y[1] (analytic) = 0.8497917034467618725693375976481 y[1] (numeric) = 0.84979170344676187324280975571331 absolute error = 6.7347215806521e-19 relative error = 7.9251439539077823248300119417113e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.489 y[1] (analytic) = 0.8503139732949021675190607422556 y[1] (numeric) = 0.85031397329490216819335916900996 absolute error = 6.7429842675436e-19 relative error = 7.9299934839539885265062447131831e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.49 y[1] (analytic) = 0.8508363587832011434446150851991 y[1] (numeric) = 0.85083635878320114411973829630607 absolute error = 6.7512321110697e-19 relative error = 7.9348185363455531237519538756401e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.491 y[1] (analytic) = 0.851358859896132828322749846611 y[1] (numeric) = 0.85135885989613282899869636102745 absolute error = 6.7594651441645e-19 relative error = 7.9396191930030137817225915195069e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=339.5MB, alloc=4.4MB, time=35.69 NO POLE x[1] = 0.492 y[1] (analytic) = 0.8518814766181836827326937644736 y[1] (numeric) = 0.85188147661818368340946210444087 absolute error = 6.7676833996727e-19 relative error = 7.9443955355611046421458580053846e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.493 y[1] (analytic) = 0.8524042089338525882010170932022 y[1] (numeric) = 0.85240420893385258887860578423764 absolute error = 6.7758869103544e-19 relative error = 7.9491476453751480041665834342263e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.494 y[1] (analytic) = 0.8529270568276508355634056943552 y[1] (numeric) = 0.8529270568276508362418132652437 absolute error = 6.7840757088850e-19 relative error = 7.9538756035216781900020947374267e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.495 y[1] (analytic) = 0.8534500202841021133433168740263 y[1] (numeric) = 0.85345002028410211402254185681205 absolute error = 6.7922498278575e-19 relative error = 7.9585794908018758350400043091329e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.496 y[1] (analytic) = 0.8539730992877424961474866887285 y[1] (numeric) = 0.85397309928774249682752761870586 absolute error = 6.8004092997736e-19 relative error = 7.9632593877318749900154919903750e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.497 y[1] (analytic) = 0.8544962938231204330782585086519 y[1] (numeric) = 0.85449629382312043375911392435746 absolute error = 6.8085541570556e-19 relative error = 7.9679153745574482511691350752825e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop memory used=343.3MB, alloc=4.4MB, time=36.09 NO POLE x[1] = 0.498 y[1] (analytic) = 0.8550196038747967361627026940869 y[1] (numeric) = 0.85501960387479673684437113729091 absolute error = 6.8166844320401e-19 relative error = 7.9725475312473525133467648116754e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.499 y[1] (analytic) = 0.8555430294273445687984973075261 y[1] (numeric) = 0.85554302942734456948097732322403 absolute error = 6.8248001569793e-19 relative error = 7.9771559374955829786237175363459e-17 % Correct digits = 18 h = 0.001 TOP MAIN SOLVE Loop NO POLE x[1] = 0.5 y[1] (analytic) = 0.8560665704653494342165398505159 y[1] (numeric) = 0.85606657046534943489982998692012 absolute error = 6.8329013640422e-19 relative error = 7.9817406727235026755979664750660e-17 % Correct digits = 18 h = 0.001 Finished! diff ( y , x , 1 ) = arcsin(sqrt(0.1 * x + 0.2)); Iterations = 500 Total Elapsed Time = 36 Seconds Elapsed Time(since restart) = 36 Seconds Time to Timeout = 2 Minutes 23 Seconds Percent Done = 100.2 % > quit memory used=345.0MB, alloc=4.4MB, time=36.26