|\^/| 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 > display_alot := proc(iter) > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > > local abserr, analytic_val_y, ind_var, numeric_val, relerr, term_no; > #TOP DISPLAY ALOT > if (iter >= 0) then # if number 1 > 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 := abs(numeric_val - analytic_val_y); > omniout_float(ALWAYS,"y[1] (numeric) ",33,numeric_val,20," "); > if (abs(analytic_val_y) <> 0.0) then # if number 2 > relerr := abserr*100.0/abs(analytic_val_y); > else > relerr := -1.0 ; > fi;# end if 2 > ; > if glob_iter = 1 then # if number 2 > array_1st_rel_error[1] := relerr; > else > array_last_rel_error[1] := relerr; > fi;# end if 2 > ; > omniout_float(ALWAYS,"absolute error ",4,abserr,20," "); > omniout_float(ALWAYS,"relative error ",4,relerr,20,"%"); > omniout_float(ALWAYS,"h ",4,glob_h,20," "); > #BOTTOM DISPLAY ALOT > fi;# end if 1 > ; > # End Function number 3 > end; display_alot := proc(iter) local abserr, analytic_val_y, ind_var, numeric_val, relerr, term_no; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; 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 := abs(numeric_val - analytic_val_y); omniout_float(ALWAYS, "y[1] (numeric) ", 33, numeric_val, 20, " "); if abs(analytic_val_y) <> 0. then relerr := abserr*100.0/abs(analytic_val_y) else relerr := -1.0 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_float(ALWAYS, "h ", 4, glob_h, 20, " ") end if end proc > # Begin Function number 4 > adjust_for_pole := proc(h_param) > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > > local hnew, sz2, tmp; > #TOP ADJUST FOR POLE > > hnew := h_param; > glob_normmax := glob_small_float; > if (abs(array_y_higher[1,1]) > glob_small_float) then # if number 1 > tmp := abs(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 (abs(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"); > newline(); > 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 > #BOTTOM ADJUST FOR POLE > # End Function number 4 > end; adjust_for_pole := proc(h_param) local hnew, sz2, tmp; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; hnew := h_param; glob_normmax := glob_small_float; if glob_small_float < abs(array_y_higher[1, 1]) then tmp := abs(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 < abs(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"); newline(); 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 end proc > # Begin Function number 5 > prog_report := proc(x_start,x_end) > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > 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)); > 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)); > 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 Function number 5 > 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, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, 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)); 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)) 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 > # Begin Function number 6 > check_for_pole := proc() > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > > local cnt, dr1, dr2, ds1, ds2, hdrc, m, n, nr1, nr2, ord_no, rad_c, rcs, rm0, rm1, rm2, rm3, rm4, found; > #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 ((abs(array_y_higher[1,m]) < glob_small_float) or (abs(array_y_higher[1,m-1]) < glob_small_float) or (abs(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 (abs(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 (abs(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 (abs(array_y_higher[1,m]) >= (glob_large_float)) or (abs(array_y_higher[1,m-1]) >=(glob_large_float)) or (abs(array_y_higher[1,m-2]) >= (glob_large_float)) or (abs(array_y_higher[1,m-3]) >= (glob_large_float)) or (abs(array_y_higher[1,m-4]) >= (glob_large_float)) or (abs(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 ((abs(nr1 * dr2 - nr2 * dr1) <= glob_small_float) or (abs(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 (abs(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 (abs(rcs) > glob_small_float) then # if number 5 > if (rcs > 0.0) then # if number 6 > rad_c := sqrt(rcs) * 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 > omniout_str(ALWAYS,"Complex estimate of poles used"); > 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 > omniout_str(ALWAYS,"Real estimate of pole used"); > 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 (glob_display_flag) 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 > omniout_str(ALWAYS,"Real estimate of pole used"); > 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 > omniout_str(ALWAYS,"Complex estimate of poles used"); > 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 (glob_display_flag) 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 > #BOTTOM CHECK FOR POLE > display_pole(); > # End Function number 6 > 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; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; n := glob_max_terms; m := n - 2; while 10 <= m and (abs(array_y_higher[1, m]) < glob_small_float or abs(array_y_higher[1, m - 1]) < glob_small_float or abs(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 < abs(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 < abs(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 <= abs(array_y_higher[1, m]) or glob_large_float <= abs(array_y_higher[1, m - 1]) or glob_large_float <= abs(array_y_higher[1, m - 2]) or glob_large_float <= abs(array_y_higher[1, m - 3]) or glob_large_float <= abs(array_y_higher[1, m - 4]) or glob_large_float <= abs(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 abs(nr1*dr2 - nr2*dr1) <= glob_small_float or abs(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 < abs(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 < abs(rcs) then if 0. < rcs then rad_c := sqrt(rcs)*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 omniout_str(ALWAYS, "Complex estimate of poles used") 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 omniout_str(ALWAYS, "Real estimate of pole used") 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 glob_display_flag 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 omniout_str(ALWAYS, "Real estimate of pole used") 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 omniout_str(ALWAYS, "Complex estimate of poles used") 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 glob_display_flag 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; display_pole() end proc > # Begin Function number 7 > get_norms := proc() > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > > local iii; > if (not glob_initial_pass) then # if number 2 > set_z(array_norms,glob_max_terms+1); > #TOP GET NORMS > iii := 1; > while (iii <= glob_max_terms) do # do number 2 > if (abs(array_y[iii]) > array_norms[iii]) then # if number 3 > array_norms[iii] := abs(array_y[iii]); > fi;# end if 3 > ; > iii := iii + 1; > od;# end do number 2 > #GET NORMS > ; > fi;# end if 2 > ; > # End Function number 7 > end; get_norms := proc() local iii; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; if not glob_initial_pass then set_z(array_norms, glob_max_terms + 1); iii := 1; while iii <= glob_max_terms do if array_norms[iii] < abs(array_y[iii]) then array_norms[iii] := abs(array_y[iii]) end if; iii := iii + 1 end do end if end proc > # Begin Function number 8 > atomall := proc() > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > > local kkk, order_d, adj2, temporary, term; > #TOP ATOMALL > #END OUTFILE1 > #BEGIN ATOMHDR1 > # emit pre mult $eq_no = 1 i = 1 > array_tmp1[1] := (array_m1[1] * (array_const_2D0[1])); > #emit pre div $eq_no = 1 i = 1 > array_tmp2[1] := (array_tmp1[1] / (array_x[1])); > #emit pre div $eq_no = 1 i = 1 > array_tmp3[1] := (array_tmp2[1] / (array_x[1])); > #emit pre div $eq_no = 1 i = 1 > array_tmp4[1] := (array_tmp3[1] / (array_x[1])); > #emit pre add $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] * (glob_h ^ (1)) * factorial_3(0,1); > array_y[2] := temporary; > array_y_higher[1,2] := temporary; > temporary := temporary / glob_h * (2.0); > array_y_higher[2,1] := temporary > ; > fi;# end if 2 > ; > fi;# end if 1 > ; > kkk := 2; > #END ATOMHDR1 > #BEGIN ATOMHDR2 > # emit pre mult $eq_no = 1 i = 2 > array_tmp1[2] := ats(2,array_m1,array_const_2D0,1); > #emit pre div $eq_no = 1 i = 2 > array_tmp2[2] := ((array_tmp1[2] - ats(2,array_x,array_tmp2,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 2 > array_tmp3[2] := ((array_tmp2[2] - ats(2,array_x,array_tmp3,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 2 > array_tmp4[2] := ((array_tmp3[2] - ats(2,array_x,array_tmp4,2))/array_x[1]); > #emit pre add $eq_no = 1 i = 2 > array_tmp5[2] := array_const_0D0[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] * (glob_h ^ (1)) * factorial_3(1,2); > array_y[3] := temporary; > array_y_higher[1,3] := temporary; > temporary := temporary / glob_h * (2.0); > array_y_higher[2,2] := temporary > ; > fi;# end if 2 > ; > fi;# end if 1 > ; > kkk := 3; > #END ATOMHDR2 > #BEGIN ATOMHDR3 > # emit pre mult $eq_no = 1 i = 3 > array_tmp1[3] := ats(3,array_m1,array_const_2D0,1); > #emit pre div $eq_no = 1 i = 3 > array_tmp2[3] := ((array_tmp1[3] - ats(3,array_x,array_tmp2,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 3 > array_tmp3[3] := ((array_tmp2[3] - ats(3,array_x,array_tmp3,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 3 > array_tmp4[3] := ((array_tmp3[3] - ats(3,array_x,array_tmp4,2))/array_x[1]); > #emit pre add $eq_no = 1 i = 3 > array_tmp5[3] := array_const_0D0[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] * (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 mult $eq_no = 1 i = 4 > array_tmp1[4] := ats(4,array_m1,array_const_2D0,1); > #emit pre div $eq_no = 1 i = 4 > array_tmp2[4] := ((array_tmp1[4] - ats(4,array_x,array_tmp2,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 4 > array_tmp3[4] := ((array_tmp2[4] - ats(4,array_x,array_tmp3,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 4 > array_tmp4[4] := ((array_tmp3[4] - ats(4,array_x,array_tmp4,2))/array_x[1]); > #emit pre add $eq_no = 1 i = 4 > array_tmp5[4] := array_const_0D0[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] * (glob_h ^ (1)) * factorial_3(3,4); > array_y[5] := temporary; > array_y_higher[1,5] := temporary; > temporary := temporary / glob_h * (2.0); > array_y_higher[2,4] := temporary > ; > fi;# end if 2 > ; > fi;# end if 1 > ; > kkk := 5; > #END ATOMHDR4 > #BEGIN ATOMHDR5 > # emit pre mult $eq_no = 1 i = 5 > array_tmp1[5] := ats(5,array_m1,array_const_2D0,1); > #emit pre div $eq_no = 1 i = 5 > array_tmp2[5] := ((array_tmp1[5] - ats(5,array_x,array_tmp2,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 5 > array_tmp3[5] := ((array_tmp2[5] - ats(5,array_x,array_tmp3,2))/array_x[1]); > #emit pre div $eq_no = 1 i = 5 > array_tmp4[5] := ((array_tmp3[5] - ats(5,array_x,array_tmp4,2))/array_x[1]); > #emit pre add $eq_no = 1 i = 5 > array_tmp5[5] := array_const_0D0[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] * (glob_h ^ (1)) * factorial_3(4,5); > array_y[6] := temporary; > array_y_higher[1,6] := temporary; > temporary := temporary / glob_h * (2.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 mult $eq_no = 1 > array_tmp1[kkk] := ats(kkk,array_m1,array_const_2D0,1); > #emit div $eq_no = 1 > array_tmp2[kkk] := ((array_tmp1[kkk] - ats(kkk,array_x,array_tmp2,2))/array_x[1]); > #emit div $eq_no = 1 > array_tmp3[kkk] := ((array_tmp2[kkk] - ats(kkk,array_x,array_tmp3,2))/array_x[1]); > #emit div $eq_no = 1 > array_tmp4[kkk] := ((array_tmp3[kkk] - ats(kkk,array_x,array_tmp4,2))/array_x[1]); > #emit add $eq_no = 1 > array_tmp5[kkk] := array_const_0D0[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] * (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 := 2; > while (adj2 <= order_d + 1) and (term >= 1) do # do number 2 > temporary := temporary / glob_h * convfp(adj2); > array_y_higher[adj2,term] := temporary; > adj2 := adj2 + 1; > term := term - 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 > # End Function number 8 > end; atomall := proc() local kkk, order_d, adj2, temporary, term; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; array_tmp1[1] := array_m1[1]*array_const_2D0[1]; array_tmp2[1] := array_tmp1[1]/array_x[1]; array_tmp3[1] := array_tmp2[1]/array_x[1]; array_tmp4[1] := array_tmp3[1]/array_x[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]*glob_h*factorial_3(0, 1); array_y[2] := temporary; array_y_higher[1, 2] := temporary; temporary := temporary*2.0/glob_h; array_y_higher[2, 1] := temporary end if end if; kkk := 2; array_tmp1[2] := ats(2, array_m1, array_const_2D0, 1); array_tmp2[2] := (array_tmp1[2] - ats(2, array_x, array_tmp2, 2))/array_x[1]; array_tmp3[2] := (array_tmp2[2] - ats(2, array_x, array_tmp3, 2))/array_x[1]; array_tmp4[2] := (array_tmp3[2] - ats(2, array_x, array_tmp4, 2))/array_x[1]; array_tmp5[2] := array_const_0D0[2] + array_tmp4[2]; if not array_y_set_initial[1, 3] then if 2 <= glob_max_terms then temporary := array_tmp5[2]*glob_h*factorial_3(1, 2); array_y[3] := temporary; array_y_higher[1, 3] := temporary; temporary := temporary*2.0/glob_h; array_y_higher[2, 2] := temporary end if end if; kkk := 3; array_tmp1[3] := ats(3, array_m1, array_const_2D0, 1); array_tmp2[3] := (array_tmp1[3] - ats(3, array_x, array_tmp2, 2))/array_x[1]; array_tmp3[3] := (array_tmp2[3] - ats(3, array_x, array_tmp3, 2))/array_x[1]; array_tmp4[3] := (array_tmp3[3] - ats(3, array_x, array_tmp4, 2))/array_x[1]; array_tmp5[3] := array_const_0D0[3] + array_tmp4[3]; if not array_y_set_initial[1, 4] then if 3 <= glob_max_terms then temporary := array_tmp5[3]*glob_h*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_tmp1[4] := ats(4, array_m1, array_const_2D0, 1); array_tmp2[4] := (array_tmp1[4] - ats(4, array_x, array_tmp2, 2))/array_x[1]; array_tmp3[4] := (array_tmp2[4] - ats(4, array_x, array_tmp3, 2))/array_x[1]; array_tmp4[4] := (array_tmp3[4] - ats(4, array_x, array_tmp4, 2))/array_x[1]; array_tmp5[4] := array_const_0D0[4] + array_tmp4[4]; if not array_y_set_initial[1, 5] then if 4 <= glob_max_terms then temporary := array_tmp5[4]*glob_h*factorial_3(3, 4); array_y[5] := temporary; array_y_higher[1, 5] := temporary; temporary := temporary*2.0/glob_h; array_y_higher[2, 4] := temporary end if end if; kkk := 5; array_tmp1[5] := ats(5, array_m1, array_const_2D0, 1); array_tmp2[5] := (array_tmp1[5] - ats(5, array_x, array_tmp2, 2))/array_x[1]; array_tmp3[5] := (array_tmp2[5] - ats(5, array_x, array_tmp3, 2))/array_x[1]; array_tmp4[5] := (array_tmp3[5] - ats(5, array_x, array_tmp4, 2))/array_x[1]; array_tmp5[5] := array_const_0D0[5] + array_tmp4[5]; if not array_y_set_initial[1, 6] then if 5 <= glob_max_terms then temporary := array_tmp5[5]*glob_h*factorial_3(4, 5); array_y[6] := temporary; array_y_higher[1, 6] := temporary; temporary := temporary*2.0/glob_h; array_y_higher[2, 5] := temporary end if end if; kkk := 6; while kkk <= glob_max_terms do array_tmp1[kkk] := ats(kkk, array_m1, array_const_2D0, 1); array_tmp2[kkk] := (array_tmp1[kkk] - ats(kkk, array_x, array_tmp2, 2))/array_x[1] ; array_tmp3[kkk] := (array_tmp2[kkk] - ats(kkk, array_x, array_tmp3, 2))/array_x[1] ; array_tmp4[kkk] := (array_tmp3[kkk] - ats(kkk, array_x, array_tmp4, 2))/array_x[1] ; array_tmp5[kkk] := array_const_0D0[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]*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 := 2; while adj2 <= order_d + 1 and 1 <= term do temporary := temporary*convfp(adj2)/glob_h; array_y_higher[adj2, term] := temporary; adj2 := adj2 + 1; term := term - 1 end do end if end if; kkk := kkk + 1 end do end proc > #BEGIN ATS LIBRARY BLOCK > omniout_str := proc(iolevel,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then > printf("%s\n",str); > fi; > # End Function number 1 > end; omniout_str := proc(iolevel, str) global glob_iolevel; if iolevel <= glob_iolevel then printf("%s\n", str) end if end proc > omniout_str_noeol := proc(iolevel,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then > printf("%s",str); > fi; > # End Function number 1 > end; omniout_str_noeol := proc(iolevel, str) global glob_iolevel; if iolevel <= glob_iolevel then printf("%s", str) end if end proc > omniout_labstr := proc(iolevel,label,str) > global glob_iolevel; > if (glob_iolevel >= iolevel) then > print(label,str); > fi; > # End Function number 1 > end; omniout_labstr := proc(iolevel, label, str) global glob_iolevel; if iolevel <= glob_iolevel then print(label, str) end if end proc > omniout_float := proc(iolevel,prelabel,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= 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); > fi; > fi; > # End Function number 1 > 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 > omniout_int := proc(iolevel,prelabel,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= iolevel) then > if vallen = 5 then > printf("%-30s = %-32d %s\n",prelabel,value, postlabel); > else > printf("%-30s = %-32d %s \n",prelabel,value, postlabel); > fi; > fi; > # End Function number 1 > 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 > omniout_float_arr := proc(iolevel,prelabel,elemnt,prelen,value,vallen,postlabel) > global glob_iolevel; > if (glob_iolevel >= iolevel) then > print(prelabel,"[",elemnt,"]",value, postlabel); > fi; > # End Function number 1 > 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 > dump_series := proc(iolevel,dump_label,series_name, > array_series,numb) > global glob_iolevel; > local i; > if (glob_iolevel >= iolevel) then > i := 1; > while (i <= numb) do > print(dump_label,series_name > ,i,array_series[i]); > i := i + 1; > od; > fi; > # End Function number 1 > end; dump_series := proc(iolevel, dump_label, series_name, array_series, numb) local i; global glob_iolevel; if iolevel <= glob_iolevel then i := 1; while i <= numb do print(dump_label, series_name, i, array_series[i]); i := i + 1 end do end if end proc > dump_series_2 := proc(iolevel,dump_label,series_name2, > array_series2,numb,subnum,array_x) > global glob_iolevel; > local i,sub,ts_term; > if (glob_iolevel >= iolevel) then > sub := 1; > while (sub <= subnum) do > i := 1; > while (i <= numb) do > print(dump_label,series_name2,sub,i,array_series2[sub,i]); > od; > sub := sub + 1; > od; > fi; > # End Function number 1 > end; dump_series_2 := proc( iolevel, dump_label, series_name2, array_series2, numb, subnum, array_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, array_series2[sub, i]) end do; sub := sub + 1 end do end if end proc > cs_info := proc(iolevel,str) > global glob_iolevel,glob_correct_start_flag,glob_h,glob_reached_optimal_h; > if (glob_iolevel >= 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) > fi; > # End Function number 1 > 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 > # Begin Function number 2 > logitem_time := proc(fd,secs_in) > global centuries_in_millinium, days_in_year, hours_in_day, min_in_hour, sec_in_min, years_in_century; > local cent_int, centuries, days, days_int, hours, hours_int, millinium_int, milliniums, minutes, minutes_int, sec_in_millinium, sec_int, seconds, secs, years, years_int; > secs := (secs_in); > if (secs > 0.0) then # if number 1 > sec_in_millinium := convfloat(sec_in_min * min_in_hour * hours_in_day * days_in_year * years_in_century * centuries_in_millinium); > milliniums := convfloat(secs / sec_in_millinium); > millinium_int := floor(milliniums); > centuries := (milliniums - millinium_int)*centuries_in_millinium; > cent_int := floor(centuries); > years := (centuries - cent_int) * years_in_century; > years_int := floor(years); > days := (years - years_int) * days_in_year; > days_int := floor(days); > hours := (days - days_int) * hours_in_day; > hours_int := floor(hours); > minutes := (hours - hours_int) * min_in_hour; > minutes_int := floor(minutes); > seconds := (minutes - minutes_int) * sec_in_min; > sec_int := floor(seconds); > fprintf(fd,""); > if (millinium_int > 0) then # if number 2 > fprintf(fd,"%d Millinia %d Centuries %d Years %d Days %d Hours %d Minutes %d Seconds",millinium_int,cent_int,years_int,days_int,hours_int,minutes_int,sec_int); > elif (cent_int > 0) then # if number 3 > fprintf(fd,"%d Centuries %d Years %d Days %d Hours %d Minutes %d Seconds",cent_int,years_int,days_int,hours_int,minutes_int,sec_int); > elif (years_int > 0) then # if number 4 > 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 5 > 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 6 > fprintf(fd,"%d Hours %d Minutes %d Seconds",hours_int,minutes_int,sec_int); > elif (minutes_int > 0) then # if number 7 > fprintf(fd,"%d Minutes %d Seconds",minutes_int,sec_int); > else > fprintf(fd,"%d Seconds",sec_int); > fi;# end if 7 > else > fprintf(fd,"Unknown"); > fi;# end if 6 > fprintf(fd,""); > # End Function number 2 > end; logitem_time := proc(fd, secs_in) local cent_int, centuries, days, days_int, hours, hours_int, millinium_int, milliniums, minutes, minutes_int, sec_in_millinium, sec_int, seconds, secs, years, years_int; global centuries_in_millinium, days_in_year, hours_in_day, min_in_hour, sec_in_min, years_in_century; secs := secs_in; if 0. < secs then sec_in_millinium := convfloat(sec_in_min*min_in_hour*hours_in_day* days_in_year*years_in_century*centuries_in_millinium); milliniums := convfloat(secs/sec_in_millinium); millinium_int := floor(milliniums); centuries := (milliniums - millinium_int)*centuries_in_millinium; cent_int := floor(centuries); years := (centuries - cent_int)*years_in_century; years_int := floor(years); days := (years - years_int)*days_in_year; days_int := floor(days); hours := (days - days_int)*hours_in_day; hours_int := floor(hours); minutes := (hours - hours_int)*min_in_hour; minutes_int := floor(minutes); seconds := (minutes - minutes_int)*sec_in_min; sec_int := floor(seconds); fprintf(fd, ""); if 0 < millinium_int then fprintf(fd, "%d Millinia %d Centuries %\ d Years %d Days %d Hours %d Minutes %d Seconds", millinium_int, cent_int, years_int, days_int, hours_int, minutes_int, sec_int) elif 0 < cent_int then fprintf(fd, "%d Centuries %d Years %d Days %d Hours %d Minutes %d Seconds", cent_int, years_int, days_int, hours_int, minutes_int, sec_int) elif 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, "") end proc > omniout_timestr := proc (secs_in) > global centuries_in_millinium, days_in_year, hours_in_day, min_in_hour, sec_in_min, years_in_century; > local cent_int, centuries, days, days_int, hours, hours_int, millinium_int, milliniums, minutes, minutes_int, sec_in_millinium, sec_int, seconds, secs, years, years_int; > secs := convfloat(secs_in); > if (secs > 0.0) then # if number 6 > sec_in_millinium := convfloat(sec_in_min * min_in_hour * hours_in_day * days_in_year * years_in_century * centuries_in_millinium); > milliniums := convfloat(secs / sec_in_millinium); > millinium_int := floor(milliniums); > centuries := (milliniums - millinium_int)*centuries_in_millinium; > cent_int := floor(centuries); > years := (centuries - cent_int) * years_in_century; > years_int := floor(years); > days := (years - years_int) * days_in_year; > days_int := floor(days); > hours := (days - days_int) * hours_in_day; > hours_int := floor(hours); > minutes := (hours - hours_int) * min_in_hour; > minutes_int := floor(minutes); > seconds := (minutes - minutes_int) * sec_in_min; > sec_int := floor(seconds); > > if (millinium_int > 0) then # if number 7 > printf(" = %d Millinia %d Centuries %d Years %d Days %d Hours %d Minutes %d Seconds\n",millinium_int,cent_int,years_int,days_int,hours_int,minutes_int,sec_int); > elif (cent_int > 0) then # if number 8 > printf(" = %d Centuries %d Years %d Days %d Hours %d Minutes %d Seconds\n",cent_int,years_int,days_int,hours_int,minutes_int,sec_int); > elif (years_int > 0) then # if number 9 > 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 10 > 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 11 > printf(" = %d Hours %d Minutes %d Seconds\n",hours_int,minutes_int,sec_int); > elif (minutes_int > 0) then # if number 12 > printf(" = %d Minutes %d Seconds\n",minutes_int,sec_int); > else > printf(" = %d Seconds\n",sec_int); > fi;# end if 12 > else > printf(" Unknown\n"); > fi;# end if 11 > # End Function number 2 > end; omniout_timestr := proc(secs_in) local cent_int, centuries, days, days_int, hours, hours_int, millinium_int, milliniums, minutes, minutes_int, sec_in_millinium, sec_int, seconds, secs, years, years_int; global centuries_in_millinium, days_in_year, hours_in_day, min_in_hour, sec_in_min, years_in_century; secs := convfloat(secs_in); if 0. < secs then sec_in_millinium := convfloat(sec_in_min*min_in_hour*hours_in_day* days_in_year*years_in_century*centuries_in_millinium); milliniums := convfloat(secs/sec_in_millinium); millinium_int := floor(milliniums); centuries := (milliniums - millinium_int)*centuries_in_millinium; cent_int := floor(centuries); years := (centuries - cent_int)*years_in_century; years_int := floor(years); days := (years - years_int)*days_in_year; days_int := floor(days); hours := (days - days_int)*hours_in_day; hours_int := floor(hours); minutes := (hours - hours_int)*min_in_hour; minutes_int := floor(minutes); seconds := (minutes - minutes_int)*sec_in_min; sec_int := floor(seconds); if 0 < millinium_int then printf(" = %d Millinia %d Centuries %d\ Years %d Days %d Hours %d Minutes %d Seconds\n", millinium_int, cent_int, years_int, days_int, hours_int, minutes_int, sec_int) elif 0 < cent_int then printf(" = %d Centuries %d Years %d Days \ %d Hours %d Minutes %d Seconds\n", cent_int, years_int, days_int, hours_int, minutes_int, sec_int) elif 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 > > # Begin Function number 3 > ats := proc( > mmm_ats,array_a,array_b,jjj_ats) > local iii_ats, lll_ats,ma_ats, ret_ats; > ret_ats := 0.0; > if (jjj_ats <= mmm_ats) then # if number 11 > 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 + array_a[iii_ats]*array_b[lll_ats]; > iii_ats := iii_ats + 1; > od;# end do number 1 > fi;# end if 11 > ; > ret_ats > # End Function number 3 > end; ats := proc(mmm_ats, array_a, array_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 + array_a[iii_ats]*array_b[lll_ats]; iii_ats := iii_ats + 1 end do end if; ret_ats end proc > > # Begin Function number 4 > att := proc( > mmm_att,array_aa,array_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 11 > 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 12 > ret_att := ret_att + array_aa[iii_att]*array_bb[lll_att]* convfp(al_att); > fi;# end if 12 > ; > iii_att := iii_att + 1; > od;# end do number 1 > ; > ret_att := ret_att / convfp(mmm_att) ; > fi;# end if 11 > ; > ret_att; > # End Function number 4 > end; att := proc(mmm_att, array_aa, array_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 + array_aa[iii_att]*array_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 > # Begin Function number 5 > 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 11 > 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 11 > # End Function number 5 > 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 > # Begin Function number 6 > logditto := proc(file) > fprintf(file,""); > fprintf(file,"ditto"); > fprintf(file,""); > # End Function number 6 > end; logditto := proc(file) fprintf(file, ""); fprintf(file, "ditto"); fprintf(file, "") end proc > # Begin Function number 7 > logitem_integer := proc(file,n) > fprintf(file,""); > fprintf(file,"%d",n); > fprintf(file,""); > # End Function number 7 > end; logitem_integer := proc(file, n) fprintf(file, ""); fprintf(file, "%d", n); fprintf(file, "") end proc > # Begin Function number 8 > logitem_str := proc(file,str) > fprintf(file,""); > fprintf(file,str); > fprintf(file,""); > # End Function number 8 > end; logitem_str := proc(file, str) fprintf(file, ""); fprintf(file, str); fprintf(file, "") end proc > # Begin Function number 9 > log_revs := proc(file,revs) > fprintf(file,revs); > # End Function number 9 > end; log_revs := proc(file, revs) fprintf(file, revs) end proc > # Begin Function number 10 > logitem_float := proc(file,x) > fprintf(file,""); > fprintf(file,"%g",x); > fprintf(file,""); > # End Function number 10 > end; logitem_float := proc(file, x) fprintf(file, ""); fprintf(file, "%g", x); fprintf(file, "") end proc > # Begin Function number 11 > logitem_pole := proc(file,pole) > fprintf(file,""); > if pole = 0 then # if number 11 > fprintf(file,"NA"); > elif pole = 1 then # if number 12 > fprintf(file,"Real"); > elif pole = 2 then # if number 13 > fprintf(file,"Complex"); > else > fprintf(file,"No Pole"); > fi;# end if 13 > fprintf(file,""); > # End Function number 11 > 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 > # Begin Function number 12 > logstart := proc(file) > fprintf(file,""); > # End Function number 12 > end; logstart := proc(file) fprintf(file, "") end proc > # Begin Function number 13 > logend := proc(file) > fprintf(file,"\n"); > # End Function number 13 > end; logend := proc(file) fprintf(file, "\n") end proc > # Begin Function number 14 > 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 13 > omniout_str(ALWAYS,"Illegal max_terms = -- Using 30"); > glob_max_terms := 30; > fi;# end if 13 > ; > if (glob_max_iter < 2) then # if number 13 > omniout_str(ALWAYS,"Illegal max_iter"); > errflag := true; > fi;# end if 13 > ; > if (errflag) then # if number 13 > > quit; > fi;# end if 13 > # End Function number 14 > 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 > > # Begin Function number 15 > comp_expect_sec := proc(t_end2,t_start2,t2,clock_sec) > global glob_small_float; > local ms2, rrr, sec_left, sub1, sub2; > ; > ms2 := clock_sec; > sub1 := (t_end2-t_start2); > sub2 := (t2-t_start2); > if (sub1 = 0.0) then # if number 13 > sec_left := 0.0; > else > if (abs(sub2) > 0.0) then # if number 14 > rrr := (sub1/sub2); > sec_left := rrr * ms2 - ms2; > else > sec_left := 0.0; > fi;# end if 14 > fi;# end if 13 > ; > sec_left; > # End Function number 15 > end; comp_expect_sec := proc(t_end2, t_start2, t2, clock_sec) local ms2, rrr, sec_left, sub1, sub2; global glob_small_float; ms2 := clock_sec; sub1 := t_end2 - t_start2; sub2 := t2 - t_start2; if sub1 = 0. then sec_left := 0. else if 0. < abs(sub2) then rrr := sub1/sub2; sec_left := rrr*ms2 - ms2 else sec_left := 0. end if end if; sec_left end proc > > # Begin Function number 16 > 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 (abs(sub2) > glob_small_float) then # if number 13 > rrr := (100.0*sub2)/sub1; > else > rrr := 0.0; > fi;# end if 13 > ; > rrr > # End Function number 16 > 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 < abs(sub2) then rrr := 100.0*sub2/sub1 else rrr := 0. end if; rrr end proc > # Begin Function number 17 > factorial_1 := proc(nnn) > if (nnn <= glob_max_terms) then # if number 13 > ret := array_fact_1[nnn]; > else > ret := nnn!; > fi;# end if 13 > ; > ret; > # End Function number 17 > end; Warning, `ret` is implicitly declared local to procedure `factorial_1` factorial_1 := proc(nnn) local ret; if nnn <= glob_max_terms then ret := array_fact_1[nnn] else ret := nnn! end if; ret end proc > # Begin Function number 18 > factorial_3 := proc(mmm,nnn) > if (nnn <= glob_max_terms) and (mmm <= glob_max_terms) then # if number 13 > ret := array_fact_2[mmm,nnn]; > else > ret := (mmm!)/(nnn!); > fi;# end if 13 > ; > ret; > # End Function number 18 > end; Warning, `ret` is implicitly declared local to procedure `factorial_3` factorial_3 := proc(mmm, nnn) local ret; if nnn <= glob_max_terms and mmm <= glob_max_terms then ret := array_fact_2[mmm, nnn] else ret := mmm!/nnn! end if; ret end proc > # Begin Function number 19 > convfp := proc(mmm) > (mmm); > > # End Function number 19 > end; convfp := proc(mmm) mmm end proc > # Begin Function number 20 > convfloat := proc(mmm) > (mmm); > > # End Function number 20 > end; convfloat := proc(mmm) mmm end proc > elapsed_time_seconds := proc() > time(); > end; elapsed_time_seconds := proc() time() end proc > > > > #END ATS LIBRARY BLOCK > #BEGIN USER DEF BLOCK > #BEGIN USER DEF BLOCK > exact_soln_y := proc(x) > 1.0/x/x; > end; exact_soln_y := proc(x) 1.0/(x*x) end proc > > > #END USER DEF BLOCK > #END USER DEF BLOCK > #END OUTFILE5 > # Begin Function number 2 > mainprog := proc() > #BEGIN OUTFIEMAIN > local d1,d2,d3,d4,est_err_2,niii,done_once, > term,ord,order_diff,term_no,html_log_file, > rows,r_order,sub_iter,calc_term,iii,temp_sum,current_iter, > x_start,x_end > ,it, log10norm, max_terms, opt_iter, tmp; > #Top Generate Globals Definition > #Bottom Generate Globals Deninition > global > glob_max_terms, > glob_iolevel, > DEBUGMASSIVE, > INFO, > DEBUGL, > ALWAYS, > #Top Generate Globals Decl > glob_iter, > glob_look_poles, > glob_optimal_done, > years_in_century, > glob_percent_done, > glob_max_minutes, > glob_orig_start_sec, > glob_max_trunc_err, > glob_dump, > glob_log10normmin, > glob_optimal_start, > glob_optimal_clock_start_sec, > glob_max_iter, > glob_hmin, > glob_h, > glob_warned2, > glob_warned, > glob_reached_optimal_h, > glob_subiter_method, > glob_smallish_float, > glob_last_good_h, > glob_hmax, > centuries_in_millinium, > djd_debug2, > glob_normmax, > glob_current_iter, > glob_curr_iter_when_opt, > glob_max_sec, > glob_log10_abserr, > glob_large_float, > glob_not_yet_start_msg, > glob_initial_pass, > glob_not_yet_finished, > days_in_year, > glob_html_log, > glob_optimal_expect_sec, > glob_log10relerr, > MAX_UNCHANGED, > glob_max_hours, > glob_hmin_init, > glob_disp_incr, > glob_clock_sec, > glob_log10abserr, > glob_small_float, > glob_no_eqs, > glob_max_rel_trunc_err, > glob_log10_relerr, > glob_dump_analytic, > djd_debug, > min_in_hour, > sec_in_min, > glob_unchanged_h_cnt, > glob_relerr, > glob_abserr, > glob_clock_start_sec, > glob_almost_1, > glob_max_opt_iter, > glob_start, > hours_in_day, > glob_display_flag, > #Bottom Generate Globals Decl > #BEGIN CONST > array_const_2D0, > array_const_0D0, > array_const_1, > #END CONST > array_tmp0, > array_tmp1, > array_tmp2, > array_tmp3, > array_tmp4, > array_tmp5, > array_norms, > array_last_rel_error, > array_1st_rel_error, > array_pole, > array_fact_1, > array_m1, > array_type_pole, > array_y, > array_x, > array_y_init, > array_complex_pole, > array_y_set_initial, > array_fact_2, > array_real_pole, > array_y_higher_work2, > array_y_higher, > array_poles, > array_y_higher_work, > glob_last; > glob_last; > ALWAYS := 1; > INFO := 2; > DEBUGL := 3; > DEBUGMASSIVE := 4; > glob_iolevel := INFO; > glob_max_terms := 30; > glob_iolevel := 5; > DEBUGMASSIVE := 4; > INFO := 2; > DEBUGL := 3; > ALWAYS := 1; > glob_iter := 0; > glob_look_poles := false; > glob_optimal_done := false; > years_in_century := 100.0; > glob_percent_done := 0.0; > glob_max_minutes := 0.0; > glob_orig_start_sec := 0.0; > glob_max_trunc_err := 0.1e-10; > glob_dump := false; > glob_log10normmin := 0.1; > glob_optimal_start := 0.0; > glob_optimal_clock_start_sec := 0.0; > glob_max_iter := 1000; > glob_hmin := 0.00000000001; > glob_h := 0.1; > glob_warned2 := false; > glob_warned := false; > glob_reached_optimal_h := false; > glob_subiter_method := 3; > glob_smallish_float := 0.1e-100; > glob_last_good_h := 0.1; > glob_hmax := 1.0; > centuries_in_millinium := 10.0; > djd_debug2 := true; > glob_normmax := 0.0; > glob_current_iter := 0; > glob_curr_iter_when_opt := 0; > glob_max_sec := 10000.0; > glob_log10_abserr := 0.1e-10; > glob_large_float := 9.0e100; > glob_not_yet_start_msg := true; > glob_initial_pass := true; > glob_not_yet_finished := true; > days_in_year := 365.0; > glob_html_log := true; > glob_optimal_expect_sec := 0.1; > glob_log10relerr := 0.0; > MAX_UNCHANGED := 10; > glob_max_hours := 0.0; > glob_hmin_init := 0.001; > glob_disp_incr := 0.1; > glob_clock_sec := 0.0; > glob_log10abserr := 0.0; > glob_small_float := 0.1e-50; > glob_no_eqs := 0; > glob_max_rel_trunc_err := 0.1e-10; > glob_log10_relerr := 0.1e-10; > glob_dump_analytic := false; > djd_debug := true; > min_in_hour := 60.0; > sec_in_min := 60.0; > glob_unchanged_h_cnt := 0; > glob_relerr := 0.1e-10; > glob_abserr := 0.1e-10; > glob_clock_start_sec := 0.0; > glob_almost_1 := 0.9990; > glob_max_opt_iter := 10; > glob_start := 0; > hours_in_day := 24.0; > glob_display_flag := true; > #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/sing3postode.ode#################"); > omniout_str(ALWAYS,"diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ;"); > omniout_str(ALWAYS,"!"); > omniout_str(ALWAYS,"#BEGIN FIRST INPUT BLOCK"); > omniout_str(ALWAYS,"Digits := 100;"); > 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 := -1.0;"); > omniout_str(ALWAYS,"x_end := -0.7;"); > omniout_str(ALWAYS,"array_y_init[0 + 1] := exact_soln_y(x_start);"); > omniout_str(ALWAYS,"glob_h := 0.1;"); > omniout_str(ALWAYS,"glob_look_poles := true;"); > omniout_str(ALWAYS,"glob_max_iter := 100000;"); > omniout_str(ALWAYS,"#END SECOND INPUT BLOCK"); > omniout_str(ALWAYS,"#BEGIN OVERRIDE BLOCK"); > omniout_str(ALWAYS,"glob_h := 0.001 ;"); > omniout_str(ALWAYS,"glob_look_poles := true;"); > omniout_str(ALWAYS,"glob_max_iter := 1000;"); > omniout_str(ALWAYS,"glob_max_minutes := 15;"); > 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,"1.0/x/x;"); > omniout_str(ALWAYS,"end;"); > omniout_str(ALWAYS,""); > omniout_str(ALWAYS,""); > 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 := 100; > 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_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:= Array(0..(max_terms + 1),[]); > array_tmp5:= Array(0..(max_terms + 1),[]); > array_norms:= Array(0..(max_terms + 1),[]); > array_last_rel_error:= Array(0..(max_terms + 1),[]); > array_1st_rel_error:= Array(0..(max_terms + 1),[]); > array_pole:= Array(0..(max_terms + 1),[]); > array_fact_1:= Array(0..(max_terms + 1),[]); > array_m1:= 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_y_init:= Array(0..(max_terms + 1),[]); > array_complex_pole := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_y_set_initial := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_fact_2 := Array(0..(max_terms+ 1) ,(0..max_terms+ 1),[]); > array_real_pole := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_y_higher_work2 := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_y_higher := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > array_poles := Array(0..(1+ 1) ,(0..3+ 1),[]); > array_y_higher_work := Array(0..(2+ 1) ,(0..max_terms+ 1),[]); > 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[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_norms[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_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_pole[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_m1[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_y_init[term] := 0.0; > term := term + 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 <=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 <=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 > ; > 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 <=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_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 <=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 <=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 > ; > #BEGIN ARRAYS DEFINED AND INITIALIZATED > 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_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_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_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_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_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_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_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_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_const_2D0 := Array(1..(max_terms+1 + 1),[]); > term := 1; > while term <= max_terms + 1 do # do number 2 > array_const_2D0[term] := 0.0; > term := term + 1; > od;# end do number 2 > ; > array_const_2D0[1] := 2.0; > 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_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_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 > temp1 := iiif !; > temp2 := jjjf !; > array_fact_1[iiif] := temp1; > array_fact_2[iiif,jjjf] := temp1/temp2; > 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 := -1.0; > x_end := -0.7; > array_y_init[0 + 1] := exact_soln_y(x_start); > glob_h := 0.1; > glob_look_poles := true; > glob_max_iter := 100000; > #END SECOND INPUT BLOCK > #BEGIN OVERRIDE BLOCK > glob_h := 0.001 ; > glob_look_poles := true; > glob_max_iter := 1000; > glob_max_minutes := 15; > #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 := 10.0 ^ (glob_log10_abserr); > glob_relerr := 10.0 ^ (glob_log10_relerr); > 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; > if glob_html_log then # if number 2 > html_log_file := fopen("html/entry.html",WRITE,TEXT); > fi;# end if 2 > ; > #BEGIN SOLUTION CODE > omniout_str(ALWAYS,"START of Soultion"); > #Start Series -- INITIALIZE FOR SOLUTION > array_x[1] := x_start; > array_x[2] := glob_h; > 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] * 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]* (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(); > start_array_y(); > if (abs(array_y_higher[1,1]) > glob_small_float) then # if number 2 > tmp := abs(array_y_higher[1,1]); > log10norm := (log10(tmp)); > if (log10norm < glob_log10normmin) then # if number 3 > glob_log10normmin := log10norm; > fi;# end if 3 > fi;# end if 2 > ; > 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 (array_x[1] <= x_end ) and ((convfloat(glob_clock_sec) - convfloat(glob_orig_start_sec)) < convfloat(glob_max_sec))) do # do number 2 > #left paren 0001C > omniout_str(INFO," "); > omniout_str(INFO,"TOP MAIN SOLVE Loop"); > 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 2 > #left paren 0004C > check_for_pole(); > fi;# end if 2 > ;#was right paren 0004C > 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] / (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 * (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] / (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 * (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] / (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 * (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 2 > omniout_str(ALWAYS,"Maximum Iterations Reached before Solution Completed!") > fi;# end if 2 > ; > if (elapsed_time_seconds() - convfloat(glob_orig_start_sec) >= convfloat(glob_max_sec )) then # if number 2 > omniout_str(ALWAYS,"Maximum Time Reached before Solution Completed!") > fi;# end if 2 > ; > glob_clock_sec := elapsed_time_seconds(); > omniout_str(INFO,"diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ;"); > omniout_int(INFO,"Iterations ",32,glob_iter,4," ") > ; > prog_report(x_start,x_end); > if glob_html_log then # if number 2 > logstart(html_log_file); > logitem_str(html_log_file,"2012-06-17T02:21:51-05:00") > ; > logitem_str(html_log_file,"Maple") > ; > logitem_str(html_log_file,"sing3") > ; > logitem_str(html_log_file,"diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ;") > ; > 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_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 3 > 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 3 > ; > logitem_time(html_log_file,convfloat(glob_clock_sec)) > ; > if glob_percent_done < 100.0 then # if number 3 > logitem_time(html_log_file,convfloat(glob_optimal_expect_sec)) > ; > 0 > else > logitem_str(html_log_file,"Done") > ; > 0 > fi;# end if 3 > ; > log_revs(html_log_file," 091 ") > ; > logitem_str(html_log_file,"sing3 diffeq.mxt") > ; > logitem_str(html_log_file,"sing3 maple results") > ; > logitem_str(html_log_file,"Test of revised logic - mostly for speeding factorials") > ; > logend(html_log_file) > ; > ; > fi;# end if 2 > ; > if glob_html_log then # if number 2 > fclose(html_log_file); > fi;# end if 2 > ; > ;; > #END OUTFILEMAIN > # End Function number 8 > end; Warning, `iiif` is implicitly declared local to procedure `mainprog` Warning, `jjjf` is implicitly declared local to procedure `mainprog` Warning, `temp1` is implicitly declared local to procedure `mainprog` Warning, `temp2` is implicitly declared local to procedure `mainprog` mainprog := proc() local d1, d2, d3, d4, est_err_2, niii, done_once, term, ord, order_diff, term_no, html_log_file, rows, r_order, sub_iter, calc_term, iii, temp_sum, current_iter, x_start, x_end, it, log10norm, max_terms, opt_iter, tmp, iiif, jjjf, temp1, temp2; global glob_max_terms, glob_iolevel, DEBUGMASSIVE, INFO, DEBUGL, ALWAYS, glob_iter, glob_look_poles, glob_optimal_done, years_in_century, glob_percent_done, glob_max_minutes, glob_orig_start_sec, glob_max_trunc_err, glob_dump, glob_log10normmin, glob_optimal_start, glob_optimal_clock_start_sec, glob_max_iter, glob_hmin, glob_h, glob_warned2, glob_warned, glob_reached_optimal_h, glob_subiter_method, glob_smallish_float, glob_last_good_h, glob_hmax, centuries_in_millinium, djd_debug2, glob_normmax, glob_current_iter, glob_curr_iter_when_opt, glob_max_sec, glob_log10_abserr, glob_large_float, glob_not_yet_start_msg, glob_initial_pass, glob_not_yet_finished, days_in_year, glob_html_log, glob_optimal_expect_sec, glob_log10relerr, MAX_UNCHANGED, glob_max_hours, glob_hmin_init, glob_disp_incr, glob_clock_sec, glob_log10abserr, glob_small_float, glob_no_eqs, glob_max_rel_trunc_err, glob_log10_relerr, glob_dump_analytic, djd_debug, min_in_hour, sec_in_min, glob_unchanged_h_cnt, glob_relerr, glob_abserr, glob_clock_start_sec, glob_almost_1, glob_max_opt_iter, glob_start, hours_in_day, glob_display_flag, array_const_2D0, array_const_0D0, array_const_1, array_tmp0, array_tmp1, array_tmp2, array_tmp3, array_tmp4, array_tmp5, array_norms, array_last_rel_error, array_1st_rel_error, array_pole, array_fact_1, array_m1, array_type_pole, array_y, array_x, array_y_init, array_complex_pole, array_y_set_initial, array_fact_2, array_real_pole, array_y_higher_work2, array_y_higher, array_poles, array_y_higher_work, glob_last; glob_last; ALWAYS := 1; INFO := 2; DEBUGL := 3; DEBUGMASSIVE := 4; glob_iolevel := INFO; glob_max_terms := 30; glob_iolevel := 5; DEBUGMASSIVE := 4; INFO := 2; DEBUGL := 3; ALWAYS := 1; glob_iter := 0; glob_look_poles := false; glob_optimal_done := false; years_in_century := 100.0; glob_percent_done := 0.; glob_max_minutes := 0.; glob_orig_start_sec := 0.; glob_max_trunc_err := 0.1*10^(-10); glob_dump := false; glob_log10normmin := 0.1; glob_optimal_start := 0.; glob_optimal_clock_start_sec := 0.; glob_max_iter := 1000; glob_hmin := 0.1*10^(-10); glob_h := 0.1; glob_warned2 := false; glob_warned := false; glob_reached_optimal_h := false; glob_subiter_method := 3; glob_smallish_float := 0.1*10^(-100); glob_last_good_h := 0.1; glob_hmax := 1.0; centuries_in_millinium := 10.0; djd_debug2 := true; glob_normmax := 0.; glob_current_iter := 0; glob_curr_iter_when_opt := 0; glob_max_sec := 10000.0; glob_log10_abserr := 0.1*10^(-10); glob_large_float := 0.90*10^101; glob_not_yet_start_msg := true; glob_initial_pass := true; glob_not_yet_finished := true; days_in_year := 365.0; glob_html_log := true; glob_optimal_expect_sec := 0.1; glob_log10relerr := 0.; MAX_UNCHANGED := 10; glob_max_hours := 0.; glob_hmin_init := 0.001; glob_disp_incr := 0.1; glob_clock_sec := 0.; glob_log10abserr := 0.; glob_small_float := 0.1*10^(-50); glob_no_eqs := 0; glob_max_rel_trunc_err := 0.1*10^(-10); glob_log10_relerr := 0.1*10^(-10); glob_dump_analytic := false; djd_debug := true; min_in_hour := 60.0; sec_in_min := 60.0; glob_unchanged_h_cnt := 0; glob_relerr := 0.1*10^(-10); glob_abserr := 0.1*10^(-10); glob_clock_start_sec := 0.; glob_almost_1 := 0.9990; glob_max_opt_iter := 10; glob_start := 0; hours_in_day := 24.0; glob_display_flag := true; 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/sing3postode.ode#################"); omniout_str(ALWAYS, "diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ;"); omniout_str(ALWAYS, "!"); omniout_str(ALWAYS, "#BEGIN FIRST INPUT BLOCK"); omniout_str(ALWAYS, "Digits := 100;"); 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 := -1.0;"); omniout_str(ALWAYS, "x_end := -0.7;"); omniout_str(ALWAYS, "array_y_init[0 + 1] := exact_soln_y(x_start);"); omniout_str(ALWAYS, "glob_h := 0.1;"); omniout_str(ALWAYS, "glob_look_poles := true;"); omniout_str(ALWAYS, "glob_max_iter := 100000;"); omniout_str(ALWAYS, "#END SECOND INPUT BLOCK"); omniout_str(ALWAYS, "#BEGIN OVERRIDE BLOCK"); omniout_str(ALWAYS, "glob_h := 0.001 ;"); omniout_str(ALWAYS, "glob_look_poles := true;"); omniout_str(ALWAYS, "glob_max_iter := 1000;"); omniout_str(ALWAYS, "glob_max_minutes := 15;"); 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, "1.0/x/x;"); omniout_str(ALWAYS, "end;"); omniout_str(ALWAYS, ""); omniout_str(ALWAYS, ""); 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 := 100; max_terms := 30; glob_max_terms := max_terms; glob_html_log := true; 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 := Array(0 .. max_terms + 1, []); array_tmp5 := Array(0 .. max_terms + 1, []); array_norms := Array(0 .. max_terms + 1, []); array_last_rel_error := Array(0 .. max_terms + 1, []); array_1st_rel_error := Array(0 .. max_terms + 1, []); array_pole := Array(0 .. max_terms + 1, []); array_fact_1 := Array(0 .. max_terms + 1, []); array_m1 := 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_y_init := Array(0 .. max_terms + 1, []); array_complex_pole := Array(0 .. 2, 0 .. 4, []); array_y_set_initial := Array(0 .. 3, 0 .. max_terms + 1, []); array_fact_2 := Array(0 .. max_terms + 1, 0 .. max_terms + 1, []); array_real_pole := Array(0 .. 2, 0 .. 4, []); array_y_higher_work2 := Array(0 .. 3, 0 .. max_terms + 1, []); array_y_higher := Array(0 .. 3, 0 .. max_terms + 1, []); array_poles := Array(0 .. 2, 0 .. 4, []); array_y_higher_work := Array(0 .. 3, 0 .. max_terms + 1, []); 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[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_norms[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_1st_rel_error[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_fact_1[term] := 0.; term := term + 1 end do; term := 1; while term <= max_terms do array_m1[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_y_init[term] := 0.; term := term + 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 <= 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 <= 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; 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 <= 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_higher[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 <= 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; 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_tmp4 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp4[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_tmp2 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp2[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_tmp0 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_tmp0[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_x := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_x[term] := 0.; term := term + 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_const_2D0 := Array(1 .. max_terms + 2, []); term := 1; while term <= max_terms + 1 do array_const_2D0[term] := 0.; term := term + 1 end do; array_const_2D0[1] := 2.0; 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_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_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 temp1 := iiif!; temp2 := jjjf!; array_fact_1[iiif] := temp1; array_fact_2[iiif, jjjf] := temp1/temp2; jjjf := jjjf + 1 end do; iiif := iiif + 1 end do; x_start := -1.0; x_end := -0.7; array_y_init[1] := exact_soln_y(x_start); glob_h := 0.1; glob_look_poles := true; glob_max_iter := 100000; glob_h := 0.001; glob_look_poles := true; glob_max_iter := 1000; glob_max_minutes := 15; 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 := 10.0^glob_log10_abserr; glob_relerr := 10.0^glob_log10_relerr; 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; if glob_html_log then html_log_file := fopen("html/entry.html", WRITE, TEXT) end if; omniout_str(ALWAYS, "START of Soultion"); array_x[1] := x_start; array_x[2] := glob_h; order_diff := 1; term_no := 1; while term_no <= order_diff do array_y[term_no] := array_y_init[term_no]*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]* 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(); start_array_y(); if glob_small_float < abs(array_y_higher[1, 1]) then tmp := abs(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 array_x[1] <= x_end and convfloat(glob_clock_sec) - convfloat(glob_orig_start_sec) < convfloat(glob_max_sec) do omniout_str(INFO, " "); omniout_str(INFO, "TOP MAIN SOLVE Loop"); 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; 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]/( 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*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]/( 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*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]/( 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*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 ) = m1 * 2.0 / x / x / x ;"); 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-06-17T02:21:51-05:00"); logitem_str(html_log_file, "Maple"); logitem_str(html_log_file, "sing3"); logitem_str(html_log_file, "diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ;"); 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_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_optimal_expect_sec)) ; 0 else logitem_str(html_log_file, "Done"); 0 end if; log_revs(html_log_file, " 091 "); logitem_str(html_log_file, "sing3 diffeq.mxt"); logitem_str(html_log_file, "sing3 maple results"); logitem_str(html_log_file, "Test of revised logic - mostly for speeding factorials"); logend(html_log_file) end if; if glob_html_log then fclose(html_log_file) end if end proc > mainprog(); ##############ECHO OF PROBLEM################# ##############temp/sing3postode.ode################# diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ; ! #BEGIN FIRST INPUT BLOCK Digits := 100; max_terms := 30; ! #END FIRST INPUT BLOCK #BEGIN SECOND INPUT BLOCK x_start := -1.0; x_end := -0.7; array_y_init[0 + 1] := exact_soln_y(x_start); glob_h := 0.1; glob_look_poles := true; glob_max_iter := 100000; #END SECOND INPUT BLOCK #BEGIN OVERRIDE BLOCK glob_h := 0.001 ; glob_look_poles := true; glob_max_iter := 1000; glob_max_minutes := 15; #END OVERRIDE BLOCK ! #BEGIN USER DEF BLOCK exact_soln_y := proc(x) 1.0/x/x; end; #END USER DEF BLOCK #######END OF ECHO OF PROBLEM################# START of Soultion x[1] = -1 y[1] (analytic) = 1 y[1] (numeric) = 1 absolute error = 0 relative error = 0 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.008 Order of pole = 4.437 x[1] = -0.999 y[1] (analytic) = 1.002003004005006007008009010011 y[1] (numeric) = 1.0020030040050062523925768111015 absolute error = 2.4538456780109044186135492858834e-16 relative error = 2.4489404405005606206807408008609e-14 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.007 Order of pole = 4.437 x[1] = -0.998 y[1] (analytic) = 1.0040120320801924490263091312886 y[1] (numeric) = 1.0040120320801929417677732682409 absolute error = 4.9274146413695226871278732505646e-16 relative error = 4.9077246924626100744701102690553e-14 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.006 Order of pole = 4.437 x[1] = -0.997 y[1] (analytic) = 1.0060271084064631205552464816717 y[1] (numeric) = 1.0060271084064638626437880330719 absolute error = 7.4208854155140017752429017356399e-16 relative error = 7.3764268909896573906074215113417e-14 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.005 Order of pole = 4.437 x[1] = -0.996 y[1] (analytic) = 1.0080482572861728036644570248867 y[1] (numeric) = 1.0080482572861737971082893409124 absolute error = 9.9344383231602566902907422868115e-16 relative error = 9.8551217675881452008754610003936e-14 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.004 Order of pole = 4.437 x[1] = -0.995 y[1] (analytic) = 1.0100755031438600035352642610035 y[1] (numeric) = 1.0100755031438612503608146835255 absolute error = 1.2468255504225220071426684070229e-15 relative error = 1.2343884655570573501214202896628e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.003 Order of pole = 4.437 x[1] = -0.994 y[1] (analytic) = 1.0121088705269848467059904699829 y[1] (numeric) = 1.0121088705269863489580840691095 absolute error = 1.5022520935991266260181344710108e-15 relative error = 1.4842791495513066750644535101996e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.002 Order of pole = 4.437 x[1] = -0.993 y[1] (analytic) = 1.0141483841066721836338762069633 y[1] (numeric) = 1.0141483841066739433759215584609 absolute error = 1.7597420453514975787478520549133e-15 relative error = 1.7351918840767988360267407708952e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 1.001 Order of pole = 4.437 x[1] = -0.992 y[1] (analytic) = 1.0161940686784599375650364203954 y[1] (numeric) = 1.0161940686784619568792134487405 absolute error = 2.0193141770283451019207148618800e-15 relative error = 1.9871343863032213943765063498411e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9999 Order of pole = 4.437 x[1] = -0.991 y[1] (analytic) = 1.0182459491630527420854287986429 y[1] (numeric) = 1.0182459491630550230728787107868 absolute error = 2.2809874499121439184396255311686e-15 relative error = 2.2401144357971682115651058812756e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9989 Order of pole = 4.437 x[1] = -0.99 y[1] (analytic) = 1.0203040506070809101112131415162 y[1] (numeric) = 1.0203040506070834548922304767727 absolute error = 2.5447810173352565182998275055451e-15 relative error = 2.4941398750902849135856609381847e-13 % h = 0.001 TOP MAIN SOLVE Loop memory used=3.8MB, alloc=3.1MB, time=0.17 Real estimate of pole used Radius of convergence = 0.9979 Order of pole = 4.437 x[1] = -0.989 y[1] (analytic) = 1.0223683981838647774661826093091 y[1] (numeric) = 1.0223683981838675881804094311114 absolute error = 2.8107142268218023445448024412579e-15 relative error = 2.7492186102531681310485067086456e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9969 Order of pole = 4.437 x[1] = -0.988 y[1] (analytic) = 1.0244390171941844645871920536314 y[1] (numeric) = 1.024439017194187543393814309244 absolute error = 3.0788066222556125704934664397810e-15 relative error = 3.0053586114750826770117743043935e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9959 Order of pole = 4.437 x[1] = -0.987 y[1] (analytic) = 1.0265159330670551002957392403166 y[1] (numeric) = 1.0265159330670584493736853149316 absolute error = 3.3490779460746149857301863717958e-15 relative error = 3.2625679136495616060337899276259e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9949 Order of pole = 4.437 x[1] = -0.986 y[1] (analytic) = 1.0285991713605075519751161288464 y[1] (numeric) = 1.0285991713605111735232576208449 absolute error = 3.6215481414919984134477316266682e-15 relative error = 3.5208546169659548895602308965203e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9939 Order of pole = 4.437 x[1] = -0.985 y[1] (analytic) = 1.0306887577623747068978845113247 y[1] (numeric) = 1.0306887577623786031352392558358 absolute error = 3.8962373547445110617331211313594e-15 relative error = 3.7802268875069932448700174496732e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9929 Order of pole = 4.437 x[1] = -0.984 y[1] (analytic) = 1.0327847180910833498578888227907 y[1] (numeric) = 1.0327847180910875230238261910429 absolute error = 4.1731659373682522675086609643292e-15 relative error = 4.0406929578524344675288660306776e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9919 Order of pole = 4.437 x[1] = -0.983 y[1] (analytic) = 1.0348870782964516826746449561156 y[1] (numeric) = 1.0348870782964561350290934584378 absolute error = 4.4523544485023222253277128596336e-15 relative error = 4.3022611276888604407896903314225e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9909 Order of pole = 4.437 x[1] = -0.982 y[1] (analytic) = 1.0369958644604925315557841555328 y[1] (numeric) = 1.0369958644604972653794413762323 absolute error = 4.7338236572206995053408741209499e-15 relative error = 4.5649397644256938297883330958109e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9899 Order of pole = 4.437 x[1] = -0.981 y[1] (analytic) = 1.0391111027982222887253328013084 y[1] (numeric) = 1.0391111027982273063198776940299 absolute error = 5.0175945448927214567792347768314e-15 relative error = 4.8287373038175043138675211590662e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9888 Order of pole = 4.437 x[1] = -0.98 y[1] (analytic) = 1.0412328196584756351520199916701 y[1] (numeric) = 1.0412328196584809388403275642181 absolute error = 5.3036883075725479665555266345533e-15 relative error = 5.0936622505926750670799277798250e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9878 Order of pole = 4.437 x[1] = -0.979 y[1] (analytic) = 1.0433610415247260916425737212828 y[1] (numeric) = 1.0433610415247316837689321392773 absolute error = 5.5921263584179944983923906557561e-15 relative error = 5.3597231790885010650337012924935e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9868 Order of pole = 4.437 x[1] = -0.978 y[1] (analytic) = 1.0454957950159124460001421874281 y[1] (numeric) = 1.045495795015918328930472326554 absolute error = 5.8829303301391258776039646423603e-15 relative error = 5.6269287338927916759141505169834e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9858 Order of pole = 4.437 x[1] = -0.977 y[1] (analytic) = 1.0476371068872711043876089673546 y[1] (numeric) = 1.0476371068872772805096864443625 absolute error = 6.1761220774770079116604635152831e-15 relative error = 5.8952876304920508849093505787797e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9848 Order of pole = 4.437 x[1] = -0.976 y[1] (analytic) = 1.0497850040311744154797097554421 y[1] (numeric) = 1.0497850040311808872033894684617 absolute error = 6.4717236797130196483573874931503e-15 relative error = 6.1648086559263094045536867486752e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9838 Order of pole = 4.437 x[1] = -0.975 y[1] (analytic) = 1.0519395134779750164365548980934 y[1] (numeric) = 1.0519395134779817861939981072282 absolute error = 6.7697574432091348732179598499514e-15 relative error = 6.4355006694506838388528230823600e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9828 Order of pole = 4.437 x[1] = -0.974 y[1] (analytic) = 1.0541006623968562501844676159194 y[1] (numeric) = 1.0541006623968633204303715955068 absolute error = 7.0702459039795873371308431380476e-15 relative error = 6.7073726032037389966399397448304e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9818 Order of pole = 4.437 x[1] = -0.973 y[1] (analytic) = 1.056268478096688703948014690582 y[1] (numeric) = 1.0562684780966960771598449849222 absolute error = 7.3732118302943401856420183193177e-15 relative error = 6.9804334628827303896126823614294e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9808 Order of pole = 4.437 x[1] = -0.972 y[1] (analytic) = 1.0584429880268929194397872952971 y[1] (numeric) = 1.0584429880269005981180126100833 absolute error = 7.6786782253147861342827449211704e-15 relative error = 7.2546923284258049030921888776030e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9798 Order of pole = 4.437 x[1] = -0.971 y[1] (analytic) = 1.0606242197783083255819379937869 y[1] (numeric) = 1.060624219778316312250267755898 absolute error = 7.9866683297621111013539456466636e-15 relative error = 7.5301583547012385929116554674459e-13 % h = 0.001 TOP MAIN SOLVE Loop memory used=7.6MB, alloc=4.3MB, time=0.39 Real estimate of pole used Radius of convergence = 0.9788 Order of pole = 4.437 x[1] = -0.97 y[1] (analytic) = 1.0628122010840684451057498140079 y[1] (numeric) = 1.0628122010840767423113744327681 absolute error = 8.2972056246187602722572440467968e-15 relative error = 7.8068407722037915401668409236311e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9778 Order of pole = 4.437 x[1] = -0.969 y[1] (analytic) = 1.0650069598204824268526594821297 y[1] (numeric) = 1.0650069598204910371664933455816 absolute error = 8.6103138338634519293476724503968e-15 relative error = 8.0847488877582606870322198716971e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9767 Order of pole = 4.437 x[1] = -0.968 y[1] (analytic) = 1.067208524007922956082234820026 y[1] (numeric) = 1.0672085240079318820991620602168 absolute error = 8.9260169272401908399940886606363e-15 relative error = 8.3638920852303125816546209331441e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9757 Order of pole = 4.437 x[1] = -0.967 y[1] (analytic) = 1.0694169218117205955796720953834 y[1] (numeric) = 1.069416921811729839918795157123 absolute error = 9.2443391230617395547103295790078e-15 relative error = 8.6442798262446789784745273757048e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9747 Order of pole = 4.437 x[1] = -0.966 y[1] (analytic) = 1.0716321815430646108474895944515 y[1] (numeric) = 1.0716321815430741761523806424641 absolute error = 9.5653048910480126285317605988004e-15 relative error = 8.9259216509107992723901835933342e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9737 Order of pole = 4.437 x[1] = -0.965 y[1] (analytic) = 1.0738543316599103331633063974872 y[1] (numeric) = 1.0738543316599202221022615973527 absolute error = 9.8889389551998655439563023564066e-15 relative error = 9.2088271785559947911707076618447e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9727 Order of pole = 4.437 x[1] = -0.964 y[1] (analytic) = 1.0760834007678931147879685267127 y[1] (numeric) = 1.0760834007679033300542652354697 absolute error = 1.0215266296708756984474412583007e-14 relative error = 9.4930061084662610306441337157384e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9717 Order of pole = 4.437 x[1] = -0.963 y[1] (analytic) = 1.078319417621248931115877282937 y[1] (numeric) = 1.0783194176212594754280341857071 absolute error = 1.0544312156902770085737644895008e-14 relative error = 9.7784682206347649916404340086387e-13 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9707 Order of pole = 4.437 x[1] = -0.962 y[1] (analytic) = 1.0805624111237416850722464028077 y[1] (numeric) = 1.0805624111237525611742866322931 absolute error = 1.0876102040229485378550240155435e-14 relative error = 1.0065223376518135866667048450406e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9697 Order of pole = 4.437 x[1] = -0.961 y[1] (analytic) = 1.0828124103295972695802261128875 y[1] (numeric) = 1.0828124103296084802419433890929 absolute error = 1.1210661717276205335934423922382e-14 relative error = 1.0353281519800638428047495115222e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9687 Order of pole = 4.437 x[1] = -0.96 y[1] (analytic) = 1.0850694444444444444444444444444 y[1] (numeric) = 1.0850694444444559924616722724822 absolute error = 1.1548017227828037747371729533941e-14 relative error = 1.0642652677166319587977785938480e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9677 Order of pole = 4.437 x[1] = -0.959 y[1] (analytic) = 1.0873335428262625845265912854566 y[1] (numeric) = 1.0873335428262744727214752498092 absolute error = 1.1888194883964352568846743182089e-14 relative error = 1.0933346959079219734869541616446e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9667 Order of pole = 4.437 x[1] = -0.958 y[1] (analytic) = 1.0896047349863363566232713420879 y[1] (numeric) = 1.0896047349863485878445445362224 absolute error = 1.2231221273194134439436757085514e-14 relative error = 1.1225374560571741599675235929830e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9657 Order of pole = 4.437 x[1] = -0.957 y[1] (analytic) = 1.0918830505902173829965420063788 y[1] (numeric) = 1.0918830505902299601198036371395 absolute error = 1.2577123261630760715855714699946e-14 relative error = 1.1518745762041270570855740452231e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9647 Order of pole = 4.437 x[1] = -0.956 y[1] (analytic) = 1.0941685194586929500533954237496 y[1] (numeric) = 1.0941685194587058759813926304922 absolute error = 1.2925927997206742657563191843732e-14 relative error = 1.1813470930055141557482673300893e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9636 Order of pole = 4.437 x[1] = -0.955 y[1] (analytic) = 1.0964611715687618212220059757134 y[1] (numeric) = 1.0964611715687750988849189046887 absolute error = 1.3277662912928975298814151507539e-14 relative error = 1.2109560518164048696900976528663e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9626 Order of pole = 4.437 x[1] = -0.954 y[1] (analytic) = 1.0987610370546172136299109124551 y[1] (numeric) = 1.0987610370546308459856410875047 absolute error = 1.3632355730175049572414199642109e-14 relative error = 1.2407025067723995416647321721478e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9616 Order of pole = 4.437 x[1] = -0.953 y[1] (analytic) = 1.1010681462086369987524897903456 y[1] (numeric) = 1.101068146208650988786951821534 absolute error = 1.3990034462031188405056291374245e-14 relative error = 1.2705875208726883590167769332711e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9606 Order of pole = 4.437 x[1] = -0.952 y[1] (analytic) = 1.1033825294823811877692253371937 y[1] (numeric) = 1.1033825294823955384966420095705 absolute error = 1.4350727416672376788084103395654e-14 relative error = 1.3006121660639841772547775243895e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=11.4MB, alloc=4.4MB, time=0.60 Real estimate of pole used Radius of convergence = 0.9596 Order of pole = 4.437 x[1] = -0.951 y[1] (analytic) = 1.1057042174875967629403328833117 y[1] (numeric) = 1.105704217487611477403533668576 absolute error = 1.4714463200785264242528697921439e-14 relative error = 1.3307775233253393766207196928847e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9586 Order of pole = 4.437 x[1] = -0.95 y[1] (analytic) = 1.1080332409972299168975069252078 y[1] (numeric) = 1.1080332409972449981682299596344 absolute error = 1.5081270723034426645511771064461e-14 relative error = 1.3610846827538570047574373385676e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9576 Order of pole = 4.437 x[1] = -0.949 y[1] (analytic) = 1.1103696309464457623298219744371 y[1] (numeric) = 1.1103696309464612135090195470201 absolute error = 1.5451179197572583068853575492459e-14 relative error = 1.3915347436513065884392598942084e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9566 Order of pole = 4.437 x[1] = -0.948 y[1] (analytic) = 1.1127134184336555751393117199879 y[1] (numeric) = 1.11271341843367139935745931536 absolute error = 1.5824218147595372102259919964808e-14 relative error = 1.4221288146116551289789399112053e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9556 Order of pole = 4.437 x[1] = -0.947 y[1] (analytic) = 1.1150646347215516347405077335308 y[1] (numeric) = 1.1150646347215678351579166748319 absolute error = 1.6200417408941301095125149549600e-14 relative error = 1.4528680136095239293818090242427e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9546 Order of pole = 4.437 x[1] = -0.946 y[1] (analytic) = 1.1174233112381497257843194221581 y[1] (numeric) = 1.1174233112381663055914531596489 absolute error = 1.6579807133737490855153447206260e-14 relative error = 1.4837534680895820366130502360037e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9536 Order of pole = 4.437 x[1] = -0.945 y[1] (analytic) = 1.1197894795778393661991545589429 y[1] (numeric) = 1.1197894795778563286169486507905 absolute error = 1.6962417794091847591088795335289e-14 relative error = 1.5147863150568872195032071454297e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9526 Order of pole = 4.437 x[1] = -0.944 y[1] (analytic) = 1.1221631715024418270611893134157 y[1] (numeric) = 1.122163171502459175341375145719 absolute error = 1.7348280185832303283317818263326e-14 relative error = 1.5459677011681855418682707295907e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9515 Order of pole = 4.437 x[1] = -0.943 y[1] (analytic) = 1.1245444189422760104312740301086 y[1] (numeric) = 1.1245444189422937478567063238838 absolute error = 1.7737425432293775212477351425823e-14 relative error = 1.5772987828241807313920272278062e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9505 Order of pole = 4.437 x[1] = -0.942 y[1] (analytic) = 1.1269332539972322519281827975893 y[1] (numeric) = 1.1269332539972503818131709510943 absolute error = 1.8129884988153505075013196177940e-14 relative error = 1.6087807262627846877384009813241e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9495 Order of pole = 4.437 x[1] = -0.941 y[1] (analytic) = 1.1293297089378541154468588258811 y[1] (numeric) = 1.129329708937872641137502141329 absolute error = 1.8525690643315447968497625314965e-14 relative error = 1.6404147076533606182593245761521e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9485 Order of pole = 4.437 x[1] = -0.94 y[1] (analytic) = 1.1317338162064282480760525124491 y[1] (numeric) = 1.1317338162064471729505793568406 absolute error = 1.8924874526844391541067455128020e-14 relative error = 1.6722019131919704365687203351118e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9475 Order of pole = 4.437 x[1] = -0.939 y[1] (analytic) = 1.1341456084180823639223745379774 y[1] (numeric) = 1.1341456084181016913914854884732 absolute error = 1.9327469110950495771286600140495e-14 relative error = 1.7041435391976382081954592362477e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9465 Order of pole = 4.437 x[1] = -0.938 y[1] (analytic) = 1.1365651183618914262073731252358 y[1] (numeric) = 1.13656511836191115971458815019 absolute error = 1.9733507215024954179810659698160e-14 relative error = 1.7362407922096415785381330071468e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9455 Order of pole = 4.437 x[1] = -0.937 y[1] (analytic) = 1.1389923790019920976708744841788 y[1] (numeric) = 1.1389923790020122406928842116666 absolute error = 2.0143022009727487775229856189481e-14 relative error = 1.7684948890858432714530781608822e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9445 Order of pole = 4.437 x[1] = -0.936 y[1] (analytic) = 1.1414274234787055299875812696326 y[1] (numeric) = 1.1414274234787260860346023960263 absolute error = 2.0556047021126393706235042252364e-14 relative error = 1.8009070571020749020457695577127e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9435 Order of pole = 4.437 x[1] = -0.935 y[1] (analytic) = 1.1438702851096685635848894735337 y[1] (numeric) = 1.1438702851096895362010243654151 absolute error = 2.0972616134891881433685875226301e-14 relative error = 1.8334785340525855046364034269713e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9425 Order of pole = 4.437 x[1] = -0.934 y[1] (analytic) = 1.1463209973909734099381445189808 y[1] (numeric) = 1.146320997390994802701745062421 absolute error = 2.1392763600543440252209847087701e-14 relative error = 1.8662105683515673364656773366039e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9415 Order of pole = 4.437 x[1] = -0.933 y[1] (analytic) = 1.1487795939983158891151984689066 y[1] (numeric) = 1.1487795939983377056392342208997 absolute error = 2.1816524035751993184628775251935e-14 relative error = 1.8991044191357716795294317940281e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=15.2MB, alloc=4.4MB, time=0.82 Real estimate of pole used Radius of convergence = 0.9405 Order of pole = 4.437 x[1] = -0.932 y[1] (analytic) = 1.1512461087881522960452393670909 y[1] (numeric) = 1.1512461087881745399776700646946 absolute error = 2.2243932430697603646853658212680e-14 relative error = 1.9321613563682275270144612011331e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9395 Order of pole = 4.437 x[1] = -0.931 y[1] (analytic) = 1.1537205757988649696975290766428 y[1] (numeric) = 1.1537205757988876447216815601557 absolute error = 2.2675024152483512839023535686636e-14 relative error = 1.9653826609430762071864878815284e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9384 Order of pole = 4.437 x[1] = -0.93 y[1] (analytic) = 1.1562030292519366400739969938721 y[1] (numeric) = 1.1562030292519597499089466011697 absolute error = 2.3109834949607297563760309838369e-14 relative error = 1.9987696247915351662896291979206e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9374 Order of pole = 4.437 x[1] = -0.929 y[1] (analytic) = 1.158693503553133628645684272242 y[1] (numeric) = 1.1586935035531571770466407621921 absolute error = 2.3548400956489950107698724137767e-14 relative error = 2.0323235509890043030898414578583e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9364 Order of pole = 4.437 x[1] = -0.928 y[1] (analytic) = 1.1611920332936979785969084423306 y[1] (numeric) = 1.1611920332937219693556065060245 absolute error = 2.3990758698063693951217531186470e-14 relative error = 2.0660457538633284211685318377289e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9354 Order of pole = 4.437 x[1] = -0.927 y[1] (analytic) = 1.1636986532515485919828144982888 y[1] (numeric) = 1.1636986532515730289279089176502 absolute error = 2.4436945094419361396893467430905e-14 relative error = 2.0999375591042295409831066473933e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9344 Order of pole = 4.437 x[1] = -0.926 y[1] (analytic) = 1.1662133983924914516557897830377 y[1] (numeric) = 1.1662133983925163386532552972094 absolute error = 2.4886997465514171733034812463047e-14 relative error = 2.1340003038739229920955758851563e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9334 Order of pole = 4.437 x[1] = -0.925 y[1] (analytic) = 1.1687363038714390065741417092768 y[1] (numeric) = 1.1687363038714643475276776500381 absolute error = 2.5340953535940761278199732863188e-14 relative error = 2.1682353369189313868659646431065e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9324 Order of pole = 4.437 x[1] = -0.924 y[1] (analytic) = 1.1712674050336387998725661063323 y[1] (numeric) = 1.1712674050336645987240058646619 absolute error = 2.5798851439758329589404080659048e-14 relative error = 2.2026440186831107603523058368759e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9314 Order of pole = 4.437 x[1] = -0.923 y[1] (analytic) = 1.1738067374159114198483676456606 y[1] (numeric) = 1.1738067374159376805780930324399 absolute error = 2.6260729725386779264376969614041e-14 relative error = 2.2372277214219033471921407346320e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9304 Order of pole = 4.437 x[1] = -0.922 y[1] (analytic) = 1.1763543367478978548002315065335 y[1] (numeric) = 1.1763543367479245814275920712736 absolute error = 2.6726627360564740130400053154984e-14 relative error = 2.2719878293178316549010998786201e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9294 Order of pole = 4.437 x[1] = -0.921 y[1] (analytic) = 1.1789102389533163334476876265118 y[1] (numeric) = 1.178910238953343530031424998894 absolute error = 2.7196583737372382192705675542748e-14 relative error = 2.3069257385972486843522854928056e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9284 Order of pole = 4.437 x[1] = -0.92 y[1] (analytic) = 1.1814744801512287334593572778828 y[1] (numeric) = 1.1814744801512564040980345978183 absolute error = 2.7670638677319935517916930970380e-14 relative error = 2.3420428576483593422364890373330e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9274 Order of pole = 4.437 x[1] = -0.919 y[1] (analytic) = 1.1840470966573166414267293895882 y[1] (numeric) = 1.1840470966573447902591658924375 absolute error = 2.8148832436502849256466740788937e-14 relative error = 2.3773406071405282870890807067445e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9263 Order of pole = 4.437 x[1] = -0.918 y[1] (analytic) = 1.1866281249851671484376854106445 y[1] (numeric) = 1.1866281249851957796433962351808 absolute error = 2.8631205710824536266282962158576e-14 relative error = 2.4128204201448896500467043002124e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9253 Order of pole = 4.437 x[1] = -0.917 y[1] (analytic) = 1.1892176018475684662303823691355 y[1] (numeric) = 1.1892176018475975840300236567998 absolute error = 2.9117799641287664292295323056419e-14 relative error = 2.4484837422562742739083921909589e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9243 Order of pole = 4.437 x[1] = -0.916 y[1] (analytic) = 1.1918155641578154497435212905932 y[1] (numeric) = 1.1918155641578450583993406455626 absolute error = 2.9608655819354969386605572809479e-14 relative error = 2.4843320317164703193647725499230e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9233 Order of pole = 4.437 x[1] = -0.915 y[1] (analytic) = 1.194422049031025112723580877303 y[1] (numeric) = 1.1944220490310552165398732578852 absolute error = 3.0103816292380582226638938783248e-14 relative error = 2.5203667595388332954697785522805e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9223 Order of pole = 4.437 x[1] = -0.914 y[1] (analytic) = 1.1970370937854622239033943183831 y[1] (numeric) = 1.1970370937854928272269634312563 absolute error = 3.0603323569112873207514951970997e-14 relative error = 2.5565894096342617826065160816763e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=19.0MB, alloc=4.4MB, time=1.04 Real estimate of pole used Radius of convergence = 0.9213 Order of pole = 4.437 x[1] = -0.913 y[1] (analytic) = 1.1996607359438750721296017486255 y[1] (numeric) = 1.1996607359439061793502270184631 absolute error = 3.1107220625269837654570518954768e-14 relative error = 2.5930014789385553303882692914607e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9203 Order of pole = 4.437 x[1] = -0.912 y[1] (analytic) = 1.202293013234841489689135118498 y[1] (numeric) = 1.2022930132348731052400443065562 absolute error = 3.1615550909188058226850327438402e-14 relative error = 2.6296044775411712301833398744926e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9193 Order of pole = 4.437 x[1] = -0.911 y[1] (analytic) = 1.204933963594125223967100483058 y[1] (numeric) = 1.2049339635941573523254480293556 absolute error = 3.2128358347546297566944414891626e-14 relative error = 2.6663999288153970823056075751273e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9183 Order of pole = 4.437 x[1] = -0.91 y[1] (analytic) = 1.2075836251660427484603308779133 y[1] (numeric) = 1.2075836251660753941476820427038 absolute error = 3.2645687351164790501379365998734e-14 relative error = 2.7033893695499563014192252983551e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9173 Order of pole = 4.437 x[1] = -0.909 y[1] (analytic) = 1.2102420363048406050726084709681 y[1] (numeric) = 1.2102420363048737726554293522897 absolute error = 3.3167582820881321613523392116685e-14 relative error = 2.7405743500820639304143721961567e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9163 Order of pole = 4.437 x[1] = -0.908 y[1] (analytic) = 1.2129092355760833705292165576666 y[1] (numeric) = 1.2129092355761170646193700628574 absolute error = 3.3694090153505190802399346530377e-14 relative error = 2.7779564344319503629709374837820e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9153 Order of pole = 4.437 x[1] = -0.907 y[1] (analytic) = 1.2155852617580523406702007782177 y[1] (numeric) = 1.2155852617580865659254486284042 absolute error = 3.4225255247850186510755752558515e-14 relative error = 2.8155372004388708082886709086510e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9143 Order of pole = 4.437 x[1] = -0.906 y[1] (analytic) = 1.2182701538431550273136168491635 y[1] (numeric) = 1.2182701538431897884381276968672 absolute error = 3.4761124510847703659157505417738e-14 relative error = 2.8533182398986185680768210117074e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9132 Order of pole = 4.437 x[1] = -0.905 y[1] (analytic) = 1.2209639510393455633222429107781 y[1] (numeric) = 1.220963951039380865067106651939 absolute error = 3.5301744863741160964751337284458e-14 relative error = 2.8913011587025604359155464019403e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9122 Order of pole = 4.437 x[1] = -0.904 y[1] (analytic) = 1.2236666927715561124598637324771 y[1] (numeric) = 1.2236666927715919596236120953674 absolute error = 3.5847163748362890258857494685872e-14 relative error = 2.9294875769782127725782486377209e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9112 Order of pole = 4.437 x[1] = -0.903 y[1] (analytic) = 1.2263784186831393815864185948401 y[1] (numeric) = 1.2263784186831757790155520895288 absolute error = 3.6397429133494688651856152462287e-14 relative error = 2.9678791292313770578921373423121e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9102 Order of pole = 4.437 x[1] = -0.902 y[1] (analytic) = 1.2290991686373223337151734750567 y[1] (numeric) = 1.2290991686373592863046947882996 absolute error = 3.6952589521313242932291296534542e-14 relative error = 3.0064774644898539702683928025689e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9092 Order of pole = 4.437 x[1] = -0.901 y[1] (analytic) = 1.2318289827186712014397617150016 y[1] (numeric) = 1.231828982718708714133715636656 absolute error = 3.7512693953921654435123175610578e-14 relative error = 3.0452842464487552992087429083843e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9082 Order of pole = 4.437 x[1] = -0.9 y[1] (analytic) = 1.2345679012345679012345679012346 y[1] (numeric) = 1.2345679012346059790265878695463 absolute error = 3.8077792019968311777142604578686e-14 relative error = 3.0843011536174332539485509708735e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9072 Order of pole = 4.437 x[1] = -0.899 y[1] (analytic) = 1.2373159647166979501386412538465 y[1] (numeric) = 1.2373159647167365980725026082248 absolute error = 3.8647933861354378341340743234778e-14 relative error = 3.1235298794680469929849930023091e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9062 Order of pole = 4.437 x[1] = -0.898 y[1] (analytic) = 1.24007321392254998735125321799 y[1] (numeric) = 1.2400732139225892105214332491712 absolute error = 3.9223170180031181202237610249135e-14 relative error = 3.1629721325857864646209217855343e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9052 Order of pole = 4.437 x[1] = -0.897 y[1] (analytic) = 1.2428396898369270042964968077663 y[1] (numeric) = 1.2428396898369668078487416965746 absolute error = 3.9803552244888808326651603910378e-14 relative error = 3.2026296368207739178898820370725e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9042 Order of pole = 4.437 x[1] = -0.896 y[1] (analytic) = 1.2456154336734693877551020408163 y[1] (numeric) = 1.2456154336735097768870007780577 absolute error = 4.0389131898737241365091906313003e-14 relative error = 3.2425041314416637163757623858580e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9032 Order of pole = 4.437 x[1] = -0.895 y[1] (analytic) = 1.248400486876189881714053868481 y[1] (numeric) = 1.2484004868762308616756192498532 absolute error = 4.0979961565381372173940444411131e-14 relative error = 3.2825973712909613645630644484426e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=22.8MB, alloc=4.4MB, time=1.26 Real estimate of pole used Radius of convergence = 0.9022 Order of pole = 4.437 x[1] = -0.894 y[1] (analytic) = 1.2511948911210205746487895940623 y[1] (numeric) = 1.2511948911210621507430463853347 absolute error = 4.1576094256791272384040337579942e-14 relative error = 3.3229111269420829375130863246043e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9011 Order of pole = 4.437 x[1] = -0.893 y[1] (analytic) = 1.2539986883173720200288670498051 y[1] (numeric) = 1.2539986883174141976124474189119 absolute error = 4.2177583580369106863521753102506e-14 relative error = 3.3634471848581763899208558489840e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.9001 Order of pole = 4.437 x[1] = -0.892 y[1] (analytic) = 1.2568119206097045989261798950311 y[1] (numeric) = 1.2568119206097473834099262091349 absolute error = 4.2784483746314103818092491208862e-14 relative error = 3.4042073475527265100318743925208e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8991 Order of pole = 4.437 x[1] = -0.891 y[1] (analytic) = 1.2596346303791122347052014092792 y[1] (numeric) = 1.2596346303791556315547764962958 absolute error = 4.3396849575087016537140939199353e-14 relative error = 3.4451934337519655775521985952522e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8981 Order of pole = 4.437 x[1] = -0.89 y[1] (analytic) = 1.2624668602449185708875142027522 y[1] (numeric) = 1.2624668602449625856240191782866 absolute error = 4.4014736504975534435510107282829e-14 relative error = 3.4864072785591120826367555978729e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8971 Order of pole = 4.437 x[1] = -0.889 y[1] (analytic) = 1.2653086530662857244081835102446 y[1] (numeric) = 1.2653086530663303626087832723686 absolute error = 4.4638200599762124065497998048344e-14 relative error = 3.5278507336204601653568443315565e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8961 Order of pole = 4.437 x[1] = -0.888 y[1] (analytic) = 1.2681600519438357276195114032952 y[1] (numeric) = 1.2681600519438809949180678990994 absolute error = 4.5267298556495804188446751349642e-14 relative error = 3.5695256672933427417974555096252e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8951 Order of pole = 4.437 x[1] = -0.887 y[1] (analytic) = 1.2710211002212847735485256790748 y[1] (numeric) = 1.2710211002213306756362390484576 absolute error = 4.5902087713369382807259160334437e-14 relative error = 3.6114339648159915941884482317165e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8941 Order of pole = 4.437 x[1] = -0.886 y[1] (analytic) = 1.2738918414870903800783698260883 y[1] (numeric) = 1.2738918414871369227044275297966 absolute error = 4.6542626057703708277520427924333e-14 relative error = 3.6535775284793180183020425838889e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8931 Order of pole = 4.437 x[1] = -0.885 y[1] (analytic) = 1.276772319576111589900730952153 y[1] (numeric) = 1.2767723195761587788729649926642 absolute error = 4.7188972234040511242938195077922e-14 relative error = 3.6959582778006379418250267839905e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8921 Order of pole = 4.437 x[1] = -0.884 y[1] (analytic) = 1.2796625785712823242767347105915 y[1] (numeric) = 1.2796625785713301654622870560307 absolute error = 4.7841185552345439188019135822305e-14 relative error = 3.7385781496993657526112681803155e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8911 Order of pole = 4.437 x[1] = -0.883 y[1] (analytic) = 1.2825626628052980098475161250191 y[1] (numeric) = 1.28256266280534650917351244793 absolute error = 4.8499325996322910874894328972435e-14 relative error = 3.7814390986747014057135484462189e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8901 Order of pole = 4.437 x[1] = -0.882 y[1] (analytic) = 1.2854726168623155989531111008273 y[1] (numeric) = 1.2854726168623647624073429452712 absolute error = 4.9163454231844443839754023445048e-14 relative error = 3.8245430969853357129596808934465e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8891 Order of pole = 4.437 x[1] = -0.881 y[1] (analytic) = 1.2883924855796671051495759256134 y[1] (numeric) = 1.2883924855797169387811914177478 absolute error = 4.9833631615492134475371463551435e-14 relative error = 3.8678921348311990586538790521545e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.888 Order of pole = 4.437 x[1] = -0.88 y[1] (analytic) = 1.2913223140495867768595041322314 y[1] (numeric) = 1.2913223140496372867797073512284 absolute error = 5.0509920203218997027754676645044e-14 relative error = 3.9114882205372791298293221593922e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.887 Order of pole = 4.437 x[1] = -0.879 y[1] (analytic) = 1.2942621476209520333505470198967 y[1] (numeric) = 1.2942621476210032257333061477918 absolute error = 5.1192382759127895095290636403196e-14 relative error = 3.9553333807395335994320452601202e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.886 Order of pole = 4.437 x[1] = -0.878 y[1] (analytic) = 1.2972120319010382885103335910461 y[1] (numeric) = 1.2972120319010901695930979618731 absolute error = 5.1881082764370826946223852786451e-14 relative error = 3.9994296605729240559612828531430e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.885 Order of pole = 4.437 x[1] = -0.877 y[1] (analytic) = 1.3001720127572877891745077873803 y[1] (numeric) = 1.3001720127573403652589339577344 absolute error = 5.2576084426170354173490108980969e-14 relative error = 4.0437791238615978335102274030424e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.884 Order of pole = 4.437 x[1] = -0.876 y[1] (analytic) = 1.3031421363190925960676382894435 y[1] (numeric) = 1.3031421363191458735203252544354 absolute error = 5.3277452686964991893521084406820e-14 relative error = 4.0883838533112447619282635667768e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=26.7MB, alloc=4.4MB, time=1.48 Real estimate of pole used Radius of convergence = 0.883 Order of pole = 4.437 x[1] = -0.875 y[1] (analytic) = 1.306122448979591836734693877551 y[1] (numeric) = 1.3061224489796458219879275579589 absolute error = 5.3985253233680407876532136462376e-14 relative error = 4.1332459507036562280469916979007e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.882 Order of pole = 4.437 x[1] = -0.874 y[1] (analytic) = 1.3091129973974833611738030779865 y[1] (numeric) = 1.3091129973975380607263102062942 absolute error = 5.4699552507128307679062083414329e-14 relative error = 4.1783675370935143156651228030204e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.881 Order of pole = 4.437 x[1] = -0.873 y[1] (analytic) = 1.3121138284988499322293207580344 y[1] (numeric) = 1.3121138284989053526470322929474 absolute error = 5.5420417711534913044385899500354e-14 relative error = 4.2237507530074391743604781200305e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.88 Order of pole = 4.437 x[1] = -0.872 y[1] (analytic) = 1.315124989479000084167999326656 y[1] (numeric) = 1.3151249894790562320848235276276 absolute error = 5.6147916824200971552284868812891e-14 relative error = 4.2693977586453231552812577687421e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.879 Order of pole = 4.437 x[1] = -0.871 y[1] (analytic) = 1.3181465278043237842405037428771 y[1] (numeric) = 1.3181465278043806663591090381438 absolute error = 5.6882118605295266746134363868354e-14 relative error = 4.3153107340839806459554119939452e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.878 Order of pole = 4.437 x[1] = -0.87 y[1] (analytic) = 1.3211784912141630334258158277183 y[1] (numeric) = 1.3211784912142206565184236113481 absolute error = 5.7623092607783629752145609912544e-14 relative error = 4.3614918794831429359399012142804e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.877 Order of pole = 4.437 x[1] = -0.869 y[1] (analytic) = 1.3242209277226975439674453527129 y[1] (numeric) = 1.3242209277227559148766328481986 absolute error = 5.8370909187495485742855243762853e-14 relative error = 4.4079434152938278509060308735200e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8759 Order of pole = 4.437 x[1] = -0.868 y[1] (analytic) = 1.3272738856208456327380067531695 y[1] (numeric) = 1.327273885620904758377520083171 absolute error = 5.9125639513330001494771933630384e-14 relative error = 4.4546675824691143046197049323539e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8749 Order of pole = 4.437 x[1] = -0.867 y[1] (analytic) = 1.3303374134781804709128376230063 y[1] (numeric) = 1.3303374134782403582684152269401 absolute error = 5.9887355577603933758839715202258e-14 relative error = 4.5016666426773523363248466680670e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8739 Order of pole = 4.437 x[1] = -0.866 y[1] (analytic) = 1.333411560144861831894137789417 y[1] (numeric) = 1.3334115601449224880243443327292 absolute error = 6.0656130206543312212644277996978e-14 relative error = 4.5489428785178396253745852149502e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8729 Order of pole = 4.437 x[1] = -0.865 y[1] (analytic) = 1.3364963747535834809048080457082 y[1] (numeric) = 1.3364963747536449129418789668336 absolute error = 6.1432037070921125405861066075048e-14 relative error = 4.5964985937389959056800396164003e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8719 Order of pole = 4.437 x[1] = -0.864 y[1] (analytic) = 1.3395919067215363511659807956104 y[1] (numeric) = 1.3395919067215985663166776388238 absolute error = 6.2215150696843213356325562206291e-14 relative error = 4.6443361134590671397643606884747e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8709 Order of pole = 4.437 x[1] = -0.863 y[1] (analytic) = 1.3426982057523876530843791833441 y[1] (numeric) = 1.3426982057524506586308558679504 absolute error = 6.3005546476684606314516746059186e-14 relative error = 4.6924577843893917560256322445754e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8699 Order of pole = 4.437 x[1] = -0.862 y[1] (analytic) = 1.3458153218382760644053380418925 y[1] (numeric) = 1.3458153218383398677060182204782 absolute error = 6.3803300680178585700626668489252e-14 relative error = 4.7408659750602617033336442260928e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8689 Order of pole = 4.437 x[1] = -0.861 y[1] (analytic) = 1.3489433052618231508347935644613 y[1] (numeric) = 1.3489433052618877593252592252416 absolute error = 6.4608490465660780342411206316791e-14 relative error = 4.7895630760494115344216617877970e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8679 Order of pole = 4.437 x[1] = -0.86 y[1] (analytic) = 1.3520822065981611681990265008112 y[1] (numeric) = 1.3520822065982265893929179714602 absolute error = 6.5421193891470648915579581210418e-14 relative error = 4.8385515002131691937962658263225e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8669 Order of pole = 4.437 x[1] = -0.859 y[1] (analytic) = 1.3552320767169773987946565909679 y[1] (numeric) = 1.3552320767170436402845841037058 absolute error = 6.6241489927512737923719617683145e-14 relative error = 4.8878336829203026571892155215657e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8659 Order of pole = 4.437 x[1] = -0.858 y[1] (analytic) = 1.3583929667845751761835677919594 y[1] (numeric) = 1.3583929667846422456420347721031 absolute error = 6.7069458466980143664049674980758e-14 relative error = 4.9374120822885970480301464932535e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8649 Order of pole = 4.437 x[1] = -0.857 y[1] (analytic) = 1.3615649282659517543083318242655 y[1] (numeric) = 1.361564928266019659488670066912 absolute error = 6.7905180338242646421260715382886e-14 relative error = 4.9872891794241973421448511152245e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8639 Order of pole = 4.437 memory used=30.5MB, alloc=4.5MB, time=1.70 x[1] = -0.856 y[1] (analytic) = 1.3647480129268931784435321862171 y[1] (numeric) = 1.3647480129269619271808490882428 absolute error = 6.8748737316902025627238565662467e-14 relative error = 5.0374674786637522650000277649253e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8628 Order of pole = 4.437 x[1] = -0.855 y[1] (analytic) = 1.3679422728360863171574159570466 y[1] (numeric) = 1.3679422728361559173695539741525 absolute error = 6.9600212138017105932669397993469e-14 relative error = 5.0879495078193954864429646668176e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8618 Order of pole = 4.437 x[1] = -0.854 y[1] (analytic) = 1.3711477603672482161367637622101 y[1] (numeric) = 1.3711477603673186758252722633361 absolute error = 7.0459688508501126070825350537763e-14 relative error = 5.1387378184266007261470061352799e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8608 Order of pole = 4.437 x[1] = -0.853 y[1] (analytic) = 1.3743645282012729364260200189937 y[1] (numeric) = 1.3743645282013442636771397130588 absolute error = 7.1327251119694065067864366858720e-14 relative error = 5.1898349859949478989963724105707e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8598 Order of pole = 4.437 x[1] = -0.852 y[1] (analytic) = 1.3775926293283960413498203619211 y[1] (numeric) = 1.3775926293284682443354804745249 absolute error = 7.2202985660112603781694564723484e-14 relative error = 5.2412436102618379535547211311036e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8588 Order of pole = 4.437 x[1] = -0.851 y[1] (analytic) = 1.3808321170503768981263489003743 y[1] (numeric) = 1.3808321170504499851051772808183 absolute error = 7.3086978828380443947063825791132e-14 relative error = 5.2929663154491945886907569701764e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8578 Order of pole = 4.437 x[1] = -0.85 y[1] (analytic) = 1.3840830449826989619377162629758 y[1] (numeric) = 1.3840830449827729412560626047277 absolute error = 7.3979318346341751882540107337182e-14 relative error = 5.3450057505231915735135227551114e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8568 Order of pole = 4.437 x[1] = -0.849 y[1] (analytic) = 1.3873454670567882120030355118819 y[1] (numeric) = 1.3873454670568630920960078724217 absolute error = 7.4880092972360539790238762768807e-14 relative error = 5.3973645894570449441343890442519e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8558 Order of pole = 4.437 x[1] = -0.848 y[1] (analytic) = 1.390619437522249911000355998576 y[1] (numeric) = 1.3906194375223257003928708074202 absolute error = 7.5789392514808844166618936711907e-14 relative error = 5.4500455314969099075592343865279e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8548 Order of pole = 4.437 x[1] = -0.847 y[1] (analytic) = 1.3939050109491238610053679281972 y[1] (numeric) = 1.3939050109492005683132136748054 absolute error = 7.6707307845746608257804702386159e-14 relative error = 5.5030513014309228483623413734152e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8538 Order of pole = 4.437 x[1] = -0.846 y[1] (analytic) = 1.3972022422301583309580895215421 y[1] (numeric) = 1.3972022422302359648890043177658 absolute error = 7.7633930914796223751391159980192e-14 relative error = 5.5563846498614294078450675456383e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8528 Order of pole = 4.437 x[1] = -0.845 y[1] (analytic) = 1.4005111865831028325338748643255 y[1] (numeric) = 1.4005111865831814018886380790615 absolute error = 7.8569354763214736014591268544806e-14 relative error = 5.6100483534804401882818530522705e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8518 Order of pole = 4.437 x[1] = -0.844 y[1] (analytic) = 1.4038318995530199231823184564587 y[1] (numeric) = 1.4038318995530994368558566232259 absolute error = 7.9513673538166767182209502559704e-14 relative error = 5.6640452153483562267506388215370e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8507 Order of pole = 4.437 x[1] = -0.843 y[1] (analytic) = 1.4071644370146162170072708186461 y[1] (numeric) = 1.4071644370146966839897780199083 absolute error = 8.0466982507201262283967912087479e-14 relative error = 5.7183780651760069840839512757055e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8497 Order of pole = 4.437 x[1] = -0.842 y[1] (analytic) = 1.4105088551745927860935110950627 y[1] (numeric) = 1.4105088551746742154715840302781 absolute error = 8.1429378072935215396170959823414e-14 relative error = 5.7730497596100442048130948360247e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8487 Order of pole = 4.437 x[1] = -0.841 y[1] (analytic) = 1.4138652105740151368409444054061 y[1] (numeric) = 1.4138652105740975377987323529916 absolute error = 8.2400957787947585524934731797968e-14 relative error = 5.8280631825217356237661362040798e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8477 Order of pole = 4.437 x[1] = -0.84 y[1] (analytic) = 1.4172335600907029478458049886621 y[1] (numeric) = 1.4172335600907863296661748753277 absolute error = 8.3381820369886665594933294532776e-14 relative error = 5.8834212452992031243784932622327e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8467 Order of pole = 4.437 x[1] = -0.839 y[1] (analytic) = 1.4206139609416397578705564971069 y[1] (numeric) = 1.4206139609417241299362732913295 absolute error = 8.4372065716794222546899609470313e-14 relative error = 5.9391268871431505929436119997952e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8457 Order of pole = 4.437 x[1] = -0.838 y[1] (analytic) = 1.4240064706854027944702980730344 y[1] (numeric) = 1.4240064706854881662652207228166 absolute error = 8.5371794922649782157397767941012e-14 relative error = 5.9951830753661273621339638149968e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8447 Order of pole = 4.437 memory used=34.3MB, alloc=4.5MB, time=1.91 x[1] = -0.837 y[1] (analytic) = 1.4274111472246131358938234492248 y[1] (numeric) = 1.4274111472246995170041165877136 absolute error = 8.6381110293138488804470306206692e-14 relative error = 6.0515928056953737963258957948916e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8437 Order of pole = 4.437 x[1] = -0.836 y[1] (analytic) = 1.4308280488084064009523591492869 y[1] (numeric) = 1.4308280488084938010677207953149 absolute error = 8.7400115361646028031855721375398e-14 relative error = 6.1083591025792962407351836246380e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8427 Order of pole = 4.437 x[1] = -0.835 y[1] (analytic) = 1.4342572340349241636487504033848 y[1] (numeric) = 1.4342572340350125925636558875433 absolute error = 8.8428914905484158432155848140363e-14 relative error = 6.1654850194976192362859861219665e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8417 Order of pole = 4.437 x[1] = -0.834 y[1] (analytic) = 1.4376987618538262914847977732922 y[1] (numeric) = 1.4376987618539157590997601237513 absolute error = 8.9467614962350459095599867772611e-14 relative error = 6.2229736392752635926699061628446e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8407 Order of pole = 4.437 x[1] = -0.833 y[1] (analytic) = 1.4411526915688244085149065628652 y[1] (numeric) = 1.4411526915689149248377535888249 absolute error = 9.0516322847025959676300064503957e-14 relative error = 6.2808280743999996133828175458586e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8397 Order of pole = 4.437 x[1] = -0.832 y[1] (analytic) = 1.4446190828402366863905325443787 y[1] (numeric) = 1.4446190828403282615377008587607 absolute error = 9.1575147168314382032940828730090e-14 relative error = 6.3390514673439254788370432226858e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8387 Order of pole = 4.437 x[1] = -0.831 y[1] (analytic) = 1.4480979956875641688424339051872 y[1] (numeric) = 1.4480979956876568130402801319727 absolute error = 9.2644197846226785426930874848106e-14 relative error = 6.3976469908888215171206811865983e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8376 Order of pole = 4.437 x[1] = -0.83 y[1] (analytic) = 1.4515894904920888372768181158368 y[1] (numeric) = 1.4515894904921825608629475313083 absolute error = 9.3723586129415471429859768068237e-14 relative error = 6.4566178484554318268030394222208e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8366 Order of pole = 4.437 x[1] = -0.829 y[1] (analytic) = 1.4550936279994936274174561762177 y[1] (numeric) = 1.4550936279995884408420690372877 absolute error = 9.4813424612861070025760252922094e-14 relative error = 6.5159672744367254625573501978433e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8356 Order of pole = 4.437 x[1] = -0.828 y[1] (analytic) = 1.4586104693225046092090830591146 y[1] (numeric) = 1.4586104693226005230363388759095 absolute error = 9.5913827255816794914769927853337e-14 relative error = 6.5756985345351901524847626217402e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8346 Order of pole = 4.437 x[1] = -0.827 y[1] (analytic) = 1.4621400759435555445082749817598 y[1] (numeric) = 1.4621400759436525694176749956836 absolute error = 9.7024909400013923756357616616874e-14 relative error = 6.6358149261042122860761908375162e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8336 Order of pole = 4.437 x[1] = -0.826 y[1] (analytic) = 1.4656825097174750394268595114001 y[1] (numeric) = 1.4656825097175731862146476440281 absolute error = 9.8146787788132628055855351533212e-14 relative error = 6.6963197784935976939436765822674e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8326 Order of pole = 4.437 x[1] = -0.825 y[1] (analytic) = 1.4692378328741965105601469237833 y[1] (numeric) = 1.4692378328742957901407294661309 absolute error = 9.9279580582542347621626528352010e-14 relative error = 6.7572164533992885349969555859587e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8316 Order of pole = 4.437 x[1] = -0.824 y[1] (analytic) = 1.4728061080214911867282495993967 y[1] (numeric) = 1.4728061080215916101356339153728 absolute error = 1.0042340738431597602631181726425e-13 relative error = 6.8185083452173324138441092438809e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8306 Order of pole = 4.437 x[1] = -0.823 y[1] (analytic) = 1.4763873981477243702838650050419 y[1] (numeric) = 1.4763873981478259486731175272382 absolute error = 1.0157838925252219631924200148453e-13 relative error = 6.8801988814021606710715865623516e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8296 Order of pole = 4.437 x[1] = -0.822 y[1] (analytic) = 1.479981766624635184494527027427 y[1] (numeric) = 1.4799817666247379291432508278074 absolute error = 1.0274464872380038038382528608286e-13 relative error = 6.9422915228292336219264604601613e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8286 Order of pole = 4.437 x[1] = -0.821 y[1] (analytic) = 1.483589277210140035991875865118 y[1] (numeric) = 1.4835892772102439583017080876588 absolute error = 1.0392230983222254083957045491861e-13 relative error = 7.0047897641621113650044909003793e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8276 Order of pole = 4.437 x[1] = -0.82 y[1] (analytic) = 1.4872099940511600237953599048186 y[1] (numeric) = 1.4872099940512651352934893517198 absolute error = 1.0511149812944690128000337182887e-13 relative error = 7.0676971342240096420674267217729e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8266 Order of pole = 4.437 x[1] = -0.819 y[1] (analytic) = 1.4908439816864725289633714542139 y[1] (numeric) = 1.4908439816865788413040766219429 absolute error = 1.0631234070516772894223363685053e-13 relative error = 7.1310171963739011033021576487501e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8255 Order of pole = 4.437 x[1] = -0.818 y[1] (analytic) = 1.4944913050495872215015453040094 y[1] (numeric) = 1.4944913050496947464677531701631 absolute error = 1.0752496620786615364905795930427e-13 relative error = 7.1947535488872232194272257961510e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=38.1MB, alloc=4.5MB, time=2.13 Real estimate of pole used Radius of convergence = 0.8245 Order of pole = 4.437 x[1] = -0.817 y[1] (analytic) = 1.4981520294716467237662343499294 y[1] (numeric) = 1.4981520294717554732711002167074 absolute error = 1.0874950486586677807855308235141e-13 relative error = 7.2589098253412549832875318385660e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8235 Order of pole = 4.437 x[1] = -0.816 y[1] (analytic) = 1.501826220684352172241445597847 y[1] (numeric) = 1.5018262206844621583299543028141 absolute error = 1.0998608850870496712801162944798e-13 relative error = 7.3234896950052254591989311537717e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8225 Order of pole = 4.437 x[1] = -0.815 y[1] (analytic) = 1.5055139448229139222402047498965 y[1] (numeric) = 1.5055139448230251570907935596849 absolute error = 1.1123485058880978837831154965308e-13 relative error = 7.3884968632352181685583989068314e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8215 Order of pole = 4.437 x[1] = -0.814 y[1] (analytic) = 1.5092152684290276427868565460703 y[1] (numeric) = 1.5092152684291401387130600537318 absolute error = 1.1249592620350766146150460752269e-13 relative error = 7.4539350718739362453747106926105e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8205 Order of pole = 4.437 x[1] = -0.813 y[1] (analytic) = 1.5129302584538760516756459077506 y[1] (numeric) = 1.5129302584539898211277632596121 absolute error = 1.1376945211735186151931420173076e-13 relative error = 7.5198080996553942556559588603779e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8195 Order of pole = 4.437 x[1] = -0.812 y[1] (analytic) = 1.5166589822611565434735130675338 y[1] (numeric) = 1.5166589822612715990402978506447 absolute error = 1.1505556678478311094474628230223e-13 relative error = 7.5861197626146035502752792758280e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8185 Order of pole = 4.437 x[1] = -0.811 y[1] (analytic) = 1.5204015076301349660418323270809 y[1] (numeric) = 1.5204015076302513204522054536652 absolute error = 1.1635441037312658425519820219964e-13 relative error = 7.6528739145023190122913216748949e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8175 Order of pole = 4.437 x[1] = -0.81 y[1] (analytic) = 1.5241579027587258039932937052279 y[1] (numeric) = 1.5241579027588434701180796359711 absolute error = 1.1766612478593074328603299616322e-13 relative error = 7.7200744472049160669966248782691e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8165 Order of pole = 4.437 x[1] = -0.809 y[1] (analytic) = 1.5279282362665990303767412652163 y[1] (numeric) = 1.5279282362667180212304279187302 absolute error = 1.1899085368665351395199498802751e-13 relative error = 7.7877252911694678464815631759235e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8155 Order of pole = 4.437 x[1] = -0.808 y[1] (analytic) = 1.531712577198313890795020096069 y[1] (numeric) = 1.5317125771984342195375427974806 absolute error = 1.2032874252270141163420652158028e-13 relative error = 7.8558304158340934405154606504986e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8145 Order of pole = 4.437 x[1] = -0.807 y[1] (analytic) = 1.5355109950264798871092316456532 y[1] (numeric) = 1.535510995026601567047781472973 absolute error = 1.2167993854982731984765608845607e-13 relative error = 7.9243938300636492223466179950929e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8135 Order of pole = 4.437 x[1] = -0.806 y[1] (analytic) = 1.5393235596549452308677474770487 y[1] (numeric) = 1.5393235596550682754586043697749 absolute error = 1.2304459085689272626365381702503e-13 relative error = 7.9934195825908363119015011076874e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8124 Order of pole = 4.437 x[1] = -0.805 y[1] (analytic) = 1.5431503414220130396203850160102 y[1] (numeric) = 1.5431503414221374624707760163316 absolute error = 1.2442285039100032144003389106266e-13 relative error = 8.0629117624627983301177962255879e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8114 Order of pole = 4.437 x[1] = -0.804 y[1] (analytic) = 1.5469914111036855523378134204599 y[1] (numeric) = 1.5469914111038113672077964234287 absolute error = 1.2581486998300296878603870213655e-13 relative error = 8.1328744994932847070795993680303e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8104 Order of pole = 4.437 x[1] = -0.803 y[1] (analytic) = 1.5508468399169366432540488733873 y[1] (numeric) = 1.5508468399170638640584222685467 absolute error = 1.2722080437339515939672847567383e-13 relative error = 8.2033119647204559335445091670769e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8094 Order of pole = 4.437 x[1] = -0.802 y[1] (analytic) = 1.5547166995230129165863396371913 y[1] (numeric) = 1.5547166995231415573965782303638 absolute error = 1.2864081023859317247213092584748e-13 relative error = 8.2742283708704082906764500028800e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8084 Order of pole = 4.437 x[1] = -0.801 y[1] (analytic) = 1.5586010620307636677623632132743 y[1] (numeric) = 1.5586010620308937428085808235454 absolute error = 1.3007504621761027112871065038164e-13 relative error = 8.3456279728264967566451881995508e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8074 Order of pole = 4.437 x[1] = -0.8 y[1] (analytic) = 1.5625 y[1] (numeric) = 1.5625000000001315236729391333746 absolute error = 1.3152367293913337455547282691771e-13 relative error = 8.4175150681045359715502609227333e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8064 Order of pole = 4.437 x[1] = -0.799 y[1] (analytic) = 1.5664135864448833883405571106562 y[1] (numeric) = 1.5664135864450163751936061184169 absolute error = 1.3298685304900776070535761643141e-13 relative error = 8.4898939973339603442061007687431e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=41.9MB, alloc=4.5MB, time=2.36 Real estimate of pole used Radius of convergence = 0.8054 Order of pole = 4.437 x[1] = -0.798 y[1] (analytic) = 1.5703418948373439865327479098749 y[1] (numeric) = 1.570341894837478451283986046344 absolute error = 1.3446475123813646908664926795698e-13 relative error = 8.5627691447450256060254600432079e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8044 Order of pole = 4.437 x[1] = -0.797 y[1] (analytic) = 1.5742849991105289755025511288411 y[1] (numeric) = 1.5742849991106649330368219300318 absolute error = 1.3595753427080119077193743162940e-13 relative error = 8.6361449386621353589051604007881e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8034 Order of pole = 4.437 x[1] = -0.796 y[1] (analytic) = 1.578242973662281255523850407818 y[1] (numeric) = 1.5782429736624187208948638193705 absolute error = 1.3746537101341155251766968330267e-13 relative error = 8.7100258520033774260035794055506e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8024 Order of pole = 4.437 x[1] = -0.795 y[1] (analytic) = 1.5822158933586487876270717139354 y[1] (numeric) = 1.5822158933587877760595354037593 absolute error = 1.3898843246368982393040862711260e-13 relative error = 8.7844164027863560969616512550839e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8014 Order of pole = 4.437 x[1] = -0.794 y[1] (analytic) = 1.5862038335374248932484820029313 y[1] (numeric) = 1.5862038335375654201402623011323 absolute error = 1.4052689178029820097240332586798e-13 relative error = 8.8593211546404076628238063146909e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.8003 Order of pole = 4.437 x[1] = -0.793 y[1] (analytic) = 1.5902068700117198246319863751075 y[1] (numeric) = 1.5902068700118619055562992910534 absolute error = 1.4208092431291594581583859867668e-13 relative error = 8.9347447173252879610344286939234e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7993 Order of pole = 4.437 x[1] = -0.792 y[1] (analytic) = 1.594225079073563922048770533619 y[1] (numeric) = 1.5942250790737075727564033074112 absolute error = 1.4365070763277379217998102895030e-13 relative error = 9.0106917472564219977983620143482e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7983 Order of pole = 4.437 x[1] = -0.791 y[1] (analytic) = 1.5982585374975426774985975281333 y[1] (numeric) = 1.5982585374976879139201611812902 absolute error = 1.4523642156365315686727320730781e-13 relative error = 9.0871669480368070841872367621557e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7973 Order of pole = 4.437 x[1] = -0.79 y[1] (analytic) = 1.6023073225444640282006088767826 y[1] (numeric) = 1.6023073225446108664488222346149 absolute error = 1.4683824821335783230316900000016e-13 relative error = 9.1641750709956623140407772900098e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7963 Order of pole = 4.437 x[1] = -0.789 y[1] (analytic) = 1.6063715119650582068717360538841 y[1] (numeric) = 1.6063715119652066632437417198557 absolute error = 1.4845637200566597153116319347500e-13 relative error = 9.2417209157339186263551242365250e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7953 Order of pole = 4.437 x[1] = -0.788 y[1] (analytic) = 1.6104511840037104795279445489448 y[1] (numeric) = 1.6104511840038605705076573192612 absolute error = 1.5009097971277031637116367375355e-13 relative error = 9.3198093306766451328775856235225e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7943 Order of pole = 4.437 x[1] = -0.787 y[1] (analytic) = 1.6145464174022271053281646320691 y[1] (numeric) = 1.6145464174023788475886528468305 absolute error = 1.5174226048821476136932789685666e-13 relative error = 9.3984452136325088534559250148214e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7933 Order of pole = 4.437 x[1] = -0.786 y[1] (analytic) = 1.6186572914036348568135760024345 y[1] (numeric) = 1.6186572914037882672194763379253 absolute error = 1.5341040590033549080513787934514e-13 relative error = 9.4776335123603664877450961307910e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7923 Order of pole = 4.437 x[1] = -0.785 y[1] (analytic) = 1.6227838857560144427765832285285 y[1] (numeric) = 1.622783885756169538386549443602 absolute error = 1.5509560996621507343240150358887e-13 relative error = 9.5573792251430883625881616549051e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7913 Order of pole = 4.437 x[1] = -0.784 y[1] (analytic) = 1.6269262807163681799250312369846 y[1] (numeric) = 1.6269262807165249779942173950345 absolute error = 1.5679806918615804987183417377921e-13 relative error = 9.6376874013687162302022105918437e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7903 Order of pole = 4.437 x[1] = -0.783 y[1] (analytic) = 1.6310845570545222634886615157016 y[1] (numeric) = 1.6310845570546807814712402124023 absolute error = 1.5851798257869670070192262183089e-13 relative error = 9.7185631421190581536641038295681e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7893 Order of pole = 4.437 x[1] = -0.782 y[1] (analytic) = 1.6352587960570639909472073050281 y[1] (numeric) = 1.6352587960572242464989234408675 absolute error = 1.6025555171613583937119663303976e-13 relative error = 9.8000116007658253035631649823006e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7883 Order of pole = 4.437 x[1] = -0.781 y[1] (analytic) = 1.6394490795313142971435878687326 y[1] (numeric) = 1.6394490795314763081243485143657 absolute error = 1.6201098076064563313942444034044e-13 relative error = 9.8820379835744171035356471054497e-12 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7872 Order of pole = 4.437 x[1] = -0.78 y[1] (analytic) = 1.6436554898093359631821170282709 y[1] (numeric) = 1.6436554898094997476586179398883 absolute error = 1.6378447650091161740951842912782e-13 relative error = 9.9646475503154628031951012281366e-12 % h = 0.001 TOP MAIN SOLVE Loop memory used=45.7MB, alloc=4.5MB, time=2.58 Real estimate of pole used Radius of convergence = 0.7862 Order of pole = 4.437 x[1] = -0.779 y[1] (analytic) = 1.6478781097519778657012298114333 y[1] (numeric) = 1.6478781097521434419496191626674 absolute error = 1.6557624838935123409936033737197e-13 relative error = 1.0047845614884229225208992649115e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7852 Order of pole = 4.437 x[1] = -0.778 y[1] (analytic) = 1.6521170227529556373537050376352 y[1] (numeric) = 1.6521170227531230238622849440284 absolute error = 1.6738650857990639318798737062786e-13 relative error = 1.0131637545928006129439774764311e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7842 Order of pole = 4.437 x[1] = -0.777 y[1] (analytic) = 1.6563723127429691136254842818549 y[1] (numeric) = 1.6563723127431383290974507035833 absolute error = 1.6921547196642172831970017765301e-13 relative error = 1.0216028767481582361672426855427e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7832 Order of pole = 4.437 x[1] = -0.776 y[1] (analytic) = 1.6606440641938569454777340843873 y[1] (numeric) = 1.6606440641940280088339557027797 absolute error = 1.7106335622161839243019064758675e-13 relative error = 1.0301024759610927708004248340120e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7822 Order of pole = 4.437 x[1] = -0.775 y[1] (analytic) = 1.6649323621227887617065556711759 y[1] (numeric) = 1.6649323621229616920883923445937 absolute error = 1.7293038183667341783975864560520e-13 relative error = 1.0386631059065197159000503651662e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7812 Order of pole = 4.437 x[1] = -0.774 y[1] (analytic) = 1.6692372920964952693815141985324 y[1] (numeric) = 1.6692372920966700861536756133796 absolute error = 1.7481677216141484721062989485292e-13 relative error = 1.0472853259937176100755531488891e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7802 Order of pole = 4.437 x[1] = -0.773 y[1] (analytic) = 1.6735589402355366852487494330819 y[1] (numeric) = 1.6735589402357134080021945761092 absolute error = 1.7672275344514302726039671959763e-13 relative error = 1.0559697014332286793587759146445e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7792 Order of pole = 4.437 x[1] = -0.772 y[1] (analytic) = 1.6778973932186098955676662460737 y[1] (numeric) = 1.67789739321878854412254433472 absolute error = 1.7864855487808864623536687877940e-13 relative error = 1.0647168033046278373793889388246e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7782 Order of pole = 4.437 x[1] = -0.771 y[1] (analytic) = 1.6822527382868947464929236038564 y[1] (numeric) = 1.6822527382870753409015571221453 absolute error = 1.8059440863351828895144126380777e-13 relative error = 1.0735272086251724520258369629916e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7772 Order of pole = 4.437 x[1] = -0.77 y[1] (analytic) = 1.6866250632484398718164951931186 y[1] (numeric) = 1.6866250632486224323664056915984 absolute error = 1.8256054991049847978303551276792e-13 relative error = 1.0824015004193454866336175552010e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7762 Order of pole = 4.437 x[1] = -0.769 y[1] (analytic) = 1.6910144564825884696488270278223 y[1] (numeric) = 1.6910144564827730168658043572067 absolute error = 1.8454721697732938440120818363553e-13 relative error = 1.0913402677893048208888287268289e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7751 Order of pole = 4.437 x[1] = -0.768 y[1] (analytic) = 1.6954210069444444444444444444444 y[1] (numeric) = 1.6954210069446309990956601039899 absolute error = 1.8655465121565954541100165412192e-13 relative error = 1.1003441059862517571249863964081e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7741 Order of pole = 4.437 x[1] = -0.767 y[1] (analytic) = 1.6998448041693793356666536345232 y[1] (numeric) = 1.6998448041695679187638189277586 absolute error = 1.8858309716529323539727320893894e-13 relative error = 1.1094136164827319215862645881348e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7731 Order of pole = 4.437 x[1] = -0.766 y[1] (analytic) = 1.7042859382775804593391460845735 y[1] (numeric) = 1.7042859382777710921417157867968 absolute error = 1.9063280256970222334205607312138e-13 relative error = 1.1185494070458819775929145324041e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7721 Order of pole = 4.437 x[1] = -0.765 y[1] (analytic) = 1.7087444999786406937502669913281 y[1] (numeric) = 1.7087444999788333977686892452951 absolute error = 1.9270401842225396701068133553078e-13 relative error = 1.1277520918116357784382598458600e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7711 Order of pole = 4.437 x[1] = -0.764 y[1] (analytic) = 1.7132205805761903456593843370522 y[1] (numeric) = 1.713220580576385142658397505517 absolute error = 1.9479699901316846480636863183517e-13 relative error = 1.1370222913599038023361814492766e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7701 Order of pole = 4.437 x[1] = -0.763 y[1] (analytic) = 1.7177142719725715385051419776731 y[1] (numeric) = 1.717714271972768450507119193899 absolute error = 1.9691200197721622585357737251936e-13 relative error = 1.1463606327907399298895128538222e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7691 Order of pole = 4.437 x[1] = -0.762 y[1] (analytic) = 1.722225666673555569333360888944 y[1] (numeric) = 1.7222256666737546186217030589908 absolute error = 1.9904928834217004678093342663436e-13 relative error = 1.1557677498015098464306830857468e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7681 Order of pole = 4.437 x[1] = -0.761 y[1] (analytic) = 1.7267548577931036864489459024971 y[1] (numeric) = 1.726754857793304895571523926015 absolute error = 2.0120912257802351792889942405107e-13 relative error = 1.1652442827650755772650216335588e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7671 Order of pole = 4.437 memory used=49.5MB, alloc=4.5MB, time=2.80 x[1] = -0.76 y[1] (analytic) = 1.7313019390581717451523545706371 y[1] (numeric) = 1.7313019390583751369250015600577 absolute error = 2.0339177264698942060153876752422e-13 relative error = 1.1747908788090108933944879212199e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7661 Order of pole = 4.437 x[1] = -0.759 y[1] (analytic) = 1.735867004813559204347999673657 y[1] (numeric) = 1.7358670048137648018580539650776 absolute error = 2.0559751005429142061389039266393e-13 relative error = 1.1844081918958625587867059129623e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7651 Order of pole = 4.437 x[1] = -0.758 y[1] (analytic) = 1.7404501500268029323104127651576 y[1] (numeric) = 1.7404501500270107589203125278694 absolute error = 2.0782660989976271185698883530318e-13 relative error = 1.1940968829044726277539893316714e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7641 Order of pole = 4.437 x[1] = -0.757 y[1] (analytic) = 1.7450514702931162954651347441493 y[1] (numeric) = 1.7450514702933263748160650096663 absolute error = 2.1007935093026551701405975030923e-13 relative error = 1.2038576197123772425938992585495e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7631 Order of pole = 4.437 x[1] = -0.756 y[1] (analytic) = 1.7496710618403740096861789983483 y[1] (numeric) = 1.7496710618405863657017719439593 absolute error = 2.1235601559294561101883814167878e-13 relative error = 1.2136910772792976273926267614253e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.762 Order of pole = 4.437 x[1] = -0.755 y[1] (analytic) = 1.7543090215341432393316082627955 y[1] (numeric) = 1.7543090215343578962216975990919 absolute error = 2.1465689008933629645761007058201e-13 relative error = 1.2235979377317392238824918048351e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.761 Order of pole = 4.437 x[1] = -0.754 y[1] (analytic) = 1.7589654468827614350343701848321 y[1] (numeric) = 1.7589654468829784172988005113611 absolute error = 2.1698226443032652899021157098143e-13 relative error = 1.2335788904487151695539912148808e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.76 Order of pole = 4.437 x[1] = -0.753 y[1] (analytic) = 1.7636404360424614071381583008383 y[1] (numeric) = 1.7636404360426807395706503090034 absolute error = 2.1933243249200816511406044417673e-13 relative error = 1.2436346321486105769315829839220e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.759 Order of pole = 4.437 x[1] = -0.752 y[1] (analytic) = 1.7683340878225441376188320507017 y[1] (numeric) = 1.768334087822765845310904468286 absolute error = 2.2170769207241758433412323356112e-13 relative error = 1.2537658669772043361128402507175e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.758 Order of pole = 4.437 x[1] = -0.751 y[1] (analytic) = 1.7730465016905998393619869468317 y[1] (numeric) = 1.7730465016908239477069361340548 absolute error = 2.2410834494918722314791414111253e-13 relative error = 1.2639733065968654304264672350161e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.757 Order of pole = 4.437 x[1] = -0.75 y[1] (analytic) = 1.7777777777777777777777777777778 y[1] (numeric) = 1.7777777777780043124747159006271 absolute error = 2.2653469693812284932823831538832e-13 relative error = 1.2742576702769410274713405240593e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.756 Order of pole = 4.437 x[1] = -0.749 y[1] (analytic) = 1.7825280168841053759262461207734 y[1] (numeric) = 1.7825280168843343629841988434753 absolute error = 2.2898705795272270191021683217204e-13 relative error = 1.2846196849853538849433355306535e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.755 Order of pole = 4.437 x[1] = -0.748 y[1] (analytic) = 1.7872973204838571306013898023964 y[1] (numeric) = 1.7872973204840885963434544573216 absolute error = 2.3146574206465492518875349956499e-13 relative error = 1.2950600854814268926280833802061e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.754 Order of pole = 4.437 x[1] = -0.747 y[1] (analytic) = 1.7920857907309738731812569331319 y[1] (numeric) = 1.7920857907312078442488221431659 absolute error = 2.3397106756521003403648145580053e-13 relative error = 1.3055796144099528588266298066980e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.753 Order of pole = 4.437 x[1] = -0.746 y[1] (analytic) = 1.7968935304645329154956910493139 y[1] (numeric) = 1.796893530464769418852718794777 absolute error = 2.3650335702774546309175536810060e-13 relative error = 1.3161790223965279413797133043387e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.752 Order of pole = 4.437 x[1] = -0.745 y[1] (analytic) = 1.8017206432142696274942570154498 y[1] (numeric) = 1.8017206432145086904316281550237 absolute error = 2.3906293737113957397583697189942e-13 relative error = 1.3268590681441674204593891532848e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.751 Order of pole = 4.437 x[1] = -0.744 y[1] (analytic) = 1.8065672332061510001156203029252 y[1] (numeric) = 1.806567233206392650255544575748 absolute error = 2.4165013992427282281554397324714e-13 relative error = 1.3376205185312228125002494877533e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7499 Order of pole = 4.437 x[1] = -0.743 y[1] (analytic) = 1.8114334053680017534675363962257 y[1] (numeric) = 1.8114334053682460187680279503508 absolute error = 2.4426530049155412511293834837127e-13 relative error = 1.3484641487106196321447250228001e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7489 Order of pole = 4.437 x[1] = -0.742 y[1] (analytic) = 1.8163192653351835572249547736503 y[1] (numeric) = 1.8163192653354304659843742844469 absolute error = 2.4690875941951079656099716757087e-13 relative error = 1.3593907422104354219780884456649e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7479 Order of pole = 4.437 x[1] = -0.741 y[1] (analytic) = 1.8212249194563279370438969842337 y[1] (numeric) = 1.8212249194565775179055614450306 absolute error = 2.4958086166446079690082742289461e-13 relative error = 1.3704010910358379882310322219040e-11 % h = 0.001 TOP MAIN SOLVE Loop memory used=53.4MB, alloc=4.5MB, time=3.02 Real estimate of pole used Radius of convergence = 0.7469 Order of pole = 4.437 x[1] = -0.74 y[1] (analytic) = 1.8261504747991234477720964207451 y[1] (numeric) = 1.8261504747993757297289577071046 absolute error = 2.5228195686128635950243982541754e-13 relative error = 1.3814959957724041046353604839864e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7459 Order of pole = 4.437 x[1] = -0.739 y[1] (analytic) = 1.8310960391561577013152762849259 y[1] (numeric) = 1.831096039156412713714669613378 absolute error = 2.5501239939332845218144569351438e-13 relative error = 1.3926762656908392763378330358776e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7449 Order of pole = 4.437 x[1] = -0.738 y[1] (analytic) = 1.8360617210508148441918023516279 y[1] (numeric) = 1.8360617210510726167402657735128 absolute error = 2.5777254846342188499590817943457e-13 relative error = 1.4039427188531194913171141447996e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7439 Order of pole = 4.437 x[1] = -0.737 y[1] (analytic) = 1.841047629743229087079711839225 y[1] (numeric) = 1.8410476297434896498478779304836 absolute error = 2.6056276816609125856223555267763e-13 relative error = 1.4152961822200762282199092291235e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7429 Order of pole = 4.437 x[1] = -0.736 y[1] (analytic) = 1.8460538752362948960302457466919 y[1] (numeric) = 1.8460538752365582794578066750238 absolute error = 2.6338342756092833195146009398260e-13 relative error = 1.4267374917604463370477812707000e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7419 Order of pole = 4.437 x[1] = -0.735 y[1] (analytic) = 1.8510805682817344624924799851914 y[1] (numeric) = 1.851080568282000697393227156974 absolute error = 2.6623490074717178264634190978327e-13 relative error = 1.4382674925614087628012005821267e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7409 Order of pole = 4.437 x[1] = -0.734 y[1] (analytic) = 1.8561278203862230768659652978343 y[1] (numeric) = 1.8561278203864921944329048085668 absolute error = 2.6911756693951073252823802945338e-13 relative error = 1.4498870389406304421398340779619e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7399 Order of pole = 4.437 x[1] = -0.733 y[1] (analytic) = 1.8611957438175730379739767611099 y[1] (numeric) = 1.8611957438178450697845218949335 absolute error = 2.7203181054513382359737042556649e-13 relative error = 1.4615969945598440694680755858219e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7389 Order of pole = 4.437 x[1] = -0.732 y[1] (analytic) = 1.8662844516109767386305951207859 y[1] (numeric) = 1.8662844516112517166518371668312 absolute error = 2.7497802124204604529191983725193e-13 relative error = 1.4733982325399808017249765487568e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7379 Order of pole = 4.437 x[1] = -0.731 y[1] (analytic) = 1.8713940575753095753619743955865 y[1] (numeric) = 1.8713940575755875319560330715285 absolute error = 2.7795659405867594204539586615947e-13 relative error = 1.4852916355778813506731978043684e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7368 Order of pole = 4.437 x[1] = -0.73 y[1] (analytic) = 1.8765246762994933383373991367986 y[1] (numeric) = 1.8765246762997743062668539330639 absolute error = 2.8096792945479626529744529629533e-13 relative error = 1.4972780960646092977700859839578e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7358 Order of pole = 4.437 x[1] = -0.729 y[1] (analytic) = 1.8816764231589207456707329694171 y[1] (numeric) = 1.8816764231592047581041367509959 absolute error = 2.8401243340378157874455189873273e-13 relative error = 1.5093585162053908598958340561442e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7348 Order of pole = 4.437 x[1] = -0.728 y[1] (analytic) = 1.8868494143219417944692669967395 y[1] (numeric) = 1.8868494143222288849867432235189 absolute error = 2.8709051747622677938238849545046e-13 relative error = 1.5215338081412057344419578437282e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7338 Order of pole = 4.437 x[1] = -0.727 y[1] (analytic) = 1.8920437667564126093364791714362 y[1] (numeric) = 1.8920437667567028119354041223962 absolute error = 2.9020259892495096005399952231252e-13 relative error = 1.5338048940720540596638031352832e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7328 Order of pole = 4.437 x[1] = -0.726 y[1] (analytic) = 1.897259598236307477479528568935 y[1] (numeric) = 1.897259598236600826580299980447 absolute error = 2.9334910077141151198538677208793e-13 relative error = 1.5461727063819249409120971828502e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7318 Order of pole = 4.437 x[1] = -0.725 y[1] (analytic) = 1.9024970273483947681331747919144 y[1] (numeric) = 1.9024970273486912985850683457628 absolute error = 2.9653045189355384837520165945997e-13 relative error = 1.5586381877654924155221537225365e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7308 Order of pole = 4.437 x[1] = -0.724 y[1] (analytic) = 1.9077561734989774426910045480907 y[1] (numeric) = 1.9077561734992771897781196707134 absolute error = 2.9974708711512262272588778062732e-13 relative error = 1.5712022913565651588996495329811e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7298 Order of pole = 4.437 x[1] = -0.723 y[1] (analytic) = 1.9130371569206988707341662697115 y[1] (numeric) = 1.9130371569210018701814627305299 absolute error = 3.0299944729646081848268089636107e-13 relative error = 1.5838659808583166718463330227393e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7288 Order of pole = 4.437 x[1] = -0.722 y[1] (analytic) = 1.918340098679414676069090936994 y[1] (numeric) = 1.918340098679720964048517760594 absolute error = 3.0628797942682359991254112369913e-13 relative error = 1.5966302306753231345680908712638e-11 % h = 0.001 TOP MAIN SOLVE Loop memory used=57.2MB, alloc=4.6MB, time=3.24 Real estimate of pole used Radius of convergence = 0.7278 Order of pole = 4.437 x[1] = -0.721 y[1] (analytic) = 1.9236651206811313459307749869672 y[1] (numeric) = 1.9236651206814409590674932213054 absolute error = 3.0961313671823433824094568446618e-13 relative error = 1.6094960260474365662551144555859e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7268 Order of pole = 4.437 x[1] = -0.72 y[1] (analytic) = 1.929012345679012345679012345679 y[1] (numeric) = 1.9290123456793253210577132564411 absolute error = 3.1297537870091076210962737777606e-13 relative error = 1.6224643631855213907763083263911e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7258 Order of pole = 4.437 x[1] = -0.719 y[1] (analytic) = 1.9343818972804524906134118434466 y[1] (numeric) = 1.9343818972807688657847321331743 absolute error = 3.1637517132028972766759621532051e-13 relative error = 1.6355362494090829790476820706830e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7247 Order of pole = 4.437 x[1] = -0.718 y[1] (analytic) = 1.9397738999542213359610803764713 y[1] (numeric) = 1.9397738999545411489481160561326 absolute error = 3.1981298703567966131173922637152e-13 relative error = 1.6487127032858172171807305293595e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7237 Order of pole = 4.437 x[1] = -0.717 y[1] (analytic) = 1.9451884790376763556504807533326 y[1] (numeric) = 1.9451884790379996449554013236301 absolute error = 3.2328930492057029750853039283633e-13 relative error = 1.6619947547731106367586288112284e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7227 Order of pole = 4.437 x[1] = -0.716 y[1] (analytic) = 1.9506257607440466901782091695016 y[1] (numeric) = 1.9506257607443734947889737994171 absolute error = 3.2680461076462991551758784995127e-13 relative error = 1.6753834453615211396958451680462e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7217 Order of pole = 4.437 x[1] = -0.715 y[1] (analytic) = 1.9560858721697882537043376204215 y[1] (numeric) = 1.956085872170118613101515041294 absolute error = 3.3035939717742087246994698670346e-13 relative error = 1.6888798282202698552844864827748e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7207 Order of pole = 4.437 x[1] = -0.714 y[1] (analytic) = 1.9615689413020110004786228216777 y[1] (numeric) = 1.9615689413023449546423166865141 absolute error = 3.3395416369386483640436191256021e-13 relative error = 1.7024849683447751813959808557555e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7197 Order of pole = 4.437 x[1] = -0.713 y[1] (analytic) = 1.9670750970259791608064221067768 y[1] (numeric) = 1.9670750970263167502233035965186 absolute error = 3.3758941688148974181568073155010e-13 relative error = 1.7161999427062605855709579781739e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7187 Order of pole = 4.437 x[1] = -0.712 y[1] (analytic) = 1.9726044691326852670117409418003 y[1] (numeric) = 1.9726044691330265326821904329226 absolute error = 3.4126567044949112230909703750919e-13 relative error = 1.7300258404034682750786288858306e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7177 Order of pole = 4.437 x[1] = -0.711 y[1] (analytic) = 1.9781571883264988002476652799785 y[1] (numeric) = 1.9781571883268437836930249210989 absolute error = 3.4498344535964112037852565750989e-13 relative error = 1.7439637628165113881487266891006e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7167 Order of pole = 4.437 x[1] = -0.71 y[1] (analytic) = 1.9837333862328902995437413211664 y[1] (numeric) = 1.9837333862332390428136804002999 absolute error = 3.4874326993907913343925570270386e-13 relative error = 1.7580148237628979116672879973302e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7157 Order of pole = 4.437 x[1] = -0.709 y[1] (analytic) = 1.9893331954062317851679295616902 y[1] (numeric) = 1.9893331954065843308479245804186 absolute error = 3.5254567999501872835445644654719e-13 relative error = 1.7721801496557600938794652100679e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7147 Order of pole = 4.437 x[1] = -0.708 y[1] (analytic) = 1.994956749337674359219892112739 y[1] (numeric) = 1.9949567493380307504388235188831 absolute error = 3.5639121893140614411958265291643e-13 relative error = 1.7864608796643236942595847893150e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7137 Order of pole = 4.437 x[1] = -0.707 y[1] (analytic) = 2.0006041824631038573649242071105 y[1] (numeric) = 2.000604182463464137802791773515 absolute error = 3.6028043786756640443344112773113e-13 relative error = 1.8008581658766519968965111425528e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7127 Order of pole = 4.437 x[1] = -0.706 y[1] (analytic) = 2.0062756301711754367662046882649 y[1] (numeric) = 2.0062756301715396506619635620438 absolute error = 3.6421389575887377892269521686049e-13 relative error = 1.8153731734647001087111251311107e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7116 Order of pole = 4.437 x[1] = -0.705 y[1] (analytic) = 2.0119712288114279965796489110206 y[1] (numeric) = 2.0119712288117961887391683950847 absolute error = 3.6819215951948406413901626824019e-13 relative error = 1.8300070808517156697869456072208e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7106 Order of pole = 4.437 x[1] = -0.704 y[1] (analytic) = 2.0176911157024793388429752066116 y[1] (numeric) = 2.017691115702851554647122373515 absolute error = 3.7221580414716690346432697713751e-13 relative error = 1.8447610798820227202737587910098e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7096 Order of pole = 4.437 x[1] = -0.703 y[1] (analytic) = 2.0234354291403029892211594689696 y[1] (numeric) = 2.0234354291406792746340097460987 absolute error = 3.7628541285027712909748853937126e-13 relative error = 1.8596363759932260969414071355413e-11 % h = 0.001 TOP MAIN SOLVE Loop memory used=61.0MB, alloc=4.6MB, time=3.47 Real estimate of pole used Radius of convergence = 0.7086 Order of pole = 4.437 x[1] = -0.702 y[1] (analytic) = 2.0292043084065876088668111460134 y[1] (numeric) = 2.0292043084069680104439880509031 absolute error = 3.8040157717690488972192868749577e-13 relative error = 1.8746341883908743727452534491266e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7076 Order of pole = 4.437 x[1] = -0.701 y[1] (analytic) = 2.0349978937771799406187614595819 y[1] (numeric) = 2.0349978937775645055159077047065 absolute error = 3.8456489714624512464358180040786e-13 relative error = 1.8897557502256200049498074030222e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7066 Order of pole = 4.437 x[1] = -0.7 y[1] (analytic) = 2.0408163265306122448979591836735 y[1] (numeric) = 2.040816326531001020879341411433 absolute error = 3.8877598138222775952676031076927e-13 relative error = 1.9050023087729160216811255227694e-11 % h = 0.001 TOP MAIN SOLVE Loop Real estimate of pole used Radius of convergence = 0.7056 Order of pole = 4.437 x[1] = -0.699 y[1] (analytic) = 2.0466597489567151929693144303839 y[1] (numeric) = 2.0466597489571082284165638812146 absolute error = 3.9303544724945083073623430891812e-13 relative error = 1.9203751256152892534855481957170e-11 % h = 0.001 Finished! diff ( y , x , 1 ) = m1 * 2.0 / x / x / x ; Iterations = 301 Total Elapsed Time = 3 Seconds Elapsed Time(since restart) = 3 Seconds Time to Timeout = 14 Minutes 56 Seconds Percent Done = 100.7 % > quit memory used=61.7MB, alloc=4.6MB, time=3.50