(%i1) batch("diffeq.max") read and interpret file: /home/dennis/mastersource/mine/omnisode/diffeq.max (%i2) load("stringproc") (%o2) /usr/share/maxima/5.31.3/share/stringproc/stringproc.mac (%i3) alias(convfloat,float) (%o3) [convfloat] (%i4) alias(int_trunc,truncate) (%o4) [truncate] (%i5) alias(elapsed_time_seconds,elapsed_real_time) (%o5) [elapsed_time_seconds] (%i6) alias(ln,log) (%o6) [log] (%i7) alias(arcsin,asin) (%o7) [asin] (%i8) alias(arccos,acos) (%o8) [acos] (%i9) alias(arctan,atan) (%o9) [atan] (%i10) alias(float_abs,abs) (%o10) [mabs] (%i11) keepfloat:true (%o11) true (%i12) mode_declare(display_poles(),fixnum) (%o12) [display_poles()] (%i13) mode_declare(est_size_answer(),convfloat) (%o13) [est_size_answer()] (%i14) mode_declare(test_suggested_h(),convfloat) (%o14) [test_suggested_h()] (%i15) mode_declare(reached_interval(),boolean) (%o15) [reached_interval()] (%i16) mode_declare(display_alot([iter],fixnum),fixnum) (%o16) [display_alot([iter], fixnum)] (%i17) mode_declare(adjust_for_pole([h_param],convfloat),convfloat) (%o17) [adjust_for_pole([h_param], convfloat)] (%i18) mode_declare(prog_report([x_start],convfloat,[x_end],convfloat),fixnum) (%o18) [prog_report([x_start], convfloat, [x_end], convfloat)] (%i19) mode_declare(check_for_pole(),fixnum) (%o19) [check_for_pole()] (%i20) mode_declare(atomall(),fixnum) (%o20) [atomall()] (%i21) mode_declare(log10([x],convfloat),convfloat) (%o21) [log10([x], convfloat)] (%i22) mode_declare(logitem_timestr([fd],fixnum,[secs_in],number),fixnum) (%o22) [logitem_timestr([fd], fixnum, [secs_in], number)] (%i23) mode_declare(omniout_timestr(secs_in,number),fixnum) (%o23) [omniout_timestr(secs_in, number)] (%i24) mode_declare(zero_ats_ar(ar,array([MAX_TERMS],convfloat)),fixnum) (%o24) [zero_ats_ar(ar, array([MAX_TERMS], convfloat))] (%i25) mode_declare(ats([mmm_ats],fixnum,[arr_a], completearray([MAX_TERMS],convfloat),[arr_b], completearray([MAX_TERMS],convfloat),[jjj_ats], fixnum),convfloat) (%o25) [ats([mmm_ats], fixnum, [arr_a], completearray([MAX_TERMS], convfloat), [arr_b], completearray([MAX_TERMS], convfloat), [jjj_ats], fixnum)] (%i26) mode_declare(att([mmm_att],fixnum,[arr_a], completearray([MAX_TERMS],convfloat),[arr_b], completearray([MAX_TERMS],convfloat),[jjj_att], fixnum),convfloat) (%o26) [att([mmm_att], fixnum, [arr_a], completearray([MAX_TERMS], convfloat), [arr_b], completearray([MAX_TERMS], convfloat), [jjj_att], fixnum)] (%i27) mode_declare(logitem_ditto([file],fixnum),fixnum) (%o27) [logitem_ditto([file], fixnum)] (%i28) mode_declare(logitem_integer([file],fixnum,[n],fixnum),fixnum) (%o28) [logitem_integer([file], fixnum, [n], fixnum)] (%i29) mode_declare(logitem_good_digits([file],fixnum,[relerror],convfloat),fixnum) (%o29) [logitem_good_digits([file], fixnum, [relerror], convfloat)] (%i30) mode_declare(logitem_number([file],fixnum,[x],number),fixnum) (%o30) [logitem_number([file], fixnum, [x], number)] (%i31) mode_declare(logitem_pole([file],fixnum,[pole],fixnum),fixnum) (%o31) [logitem_pole([file], fixnum, [pole], fixnum)] (%i32) mode_declare(logstart([file],fixnum),fixnum) (%o32) [logstart([file], fixnum)] (%i33) mode_declare(logend([file],fixnum),fixnum) (%o33) [logend([file], fixnum)] (%i34) mode_declare(chk_data(),fixnum) (%o34) [chk_data()] (%i35) mode_declare(comp_expect_sec([t_end2],convfloat,[t_start2],convfloat, [t2],convfloat,[clock_sec2],convfloat), convfloat) (%o35) [comp_expect_sec([t_end2], convfloat, [t_start2], convfloat, [t2], convfloat, [clock_sec2], convfloat)] (%i36) mode_declare(comp_percent([t_end2],convfloat,[start2],convfloat,[t2], convfloat),convfloat) (%o36) [comp_percent([t_end2], convfloat, [start2], convfloat, [t2], convfloat)] (%i37) mode_declare(comp_rad_from_ratio([term1],convfloat,[term2],convfloat, [last_no],fixnum),convfloat) (%o37) [comp_rad_from_ratio([term1], convfloat, [term2], convfloat, [last_no], fixnum)] (%i38) mode_declare(comp_ord_from_ratio([term1],convfloat,[term2],convfloat, [last_no],fixnum),convfloat) (%o38) [comp_ord_from_ratio([term1], convfloat, [term2], convfloat, [last_no], fixnum)] (%i39) mode_declare(comp_rad_from_three_terms([term1],convfloat,[term2], convfloat,[term3],convfloat, [last_no],fixnum),convfloat) (%o39) [comp_rad_from_three_terms([term1], convfloat, [term2], convfloat, [term3], convfloat, [last_no], fixnum)] (%i40) mode_declare(comp_ord_from_three_terms([term1],convfloat,[term2], convfloat,[term3],convfloat, [last_no],fixnum),convfloat) (%o40) [comp_ord_from_three_terms([term1], convfloat, [term2], convfloat, [term3], convfloat, [last_no], fixnum)] (%i41) mode_declare(comp_rad_from_six_terms([term1],convfloat,[term2], convfloat,[term3],convfloat, [term4],convfloat,[term5], convfloat,[term6],convfloat, [last_no],fixnum),convfloat) (%o41) [comp_rad_from_six_terms([term1], convfloat, [term2], convfloat, [term3], convfloat, [term4], convfloat, [term5], convfloat, [term6], convfloat, [last_no], fixnum)] (%i42) mode_declare(comp_ord_from_six_terms([term1],convfloat,[term2], convfloat,[term3],convfloat, [term4],convfloat,[term5], convfloat,[term6],convfloat, [last_no],fixnum),convfloat) (%o42) [comp_ord_from_six_terms([term1], convfloat, [term2], convfloat, [term3], convfloat, [term4], convfloat, [term5], convfloat, [term6], convfloat, [last_no], fixnum)] (%i43) mode_declare(factorial_2([nnn],fixnum),fixnum) (%o43) [factorial_2([nnn], fixnum)] (%i44) mode_declare(factorial_1([nnn],fixnum),fixnum) (%o44) [factorial_1([nnn], fixnum)] (%i45) mode_declare(factorial_3([mmm],fixnum,[nnn],fixnum),fixnum) (%o45) [factorial_3([mmm], fixnum, [nnn], fixnum)] (%i46) mode_declare(convfloat([mmm],fixnum),convfloat) (%o46) [convfloat([mmm], fixnum)] (%i47) mode_declare(elaped_time_seconds(),convfloat) (%o47) [elaped_time_seconds()] (%i48) mode_declare(Si([x],convfloat),convfloat) (%o48) [Si([x], convfloat)] (%i49) mode_declare(Ci([x],convfloat),convfloat) (%o49) [Ci([x], convfloat)] (%i50) mode_declare(estimated_needed_step_error([x_start],convfloat,[x_end], convfloat,[estimated_h], convfloat,[estimated_answer], convfloat),convfloat) (%o50) [estimated_needed_step_error([x_start], convfloat, [x_end], convfloat, [estimated_h], convfloat, [estimated_answer], convfloat)] (%i51) mode_declare(my_check_sign([x0],convfloat,[xf],convfloat),convfloat) (%o51) [my_check_sign([x0], convfloat, [xf], convfloat)] (%i52) mode_declare(main_prog(),fixnum) (%o52) [main_prog()] (%i53) define_variable(MAX_TERMS,20,fixnum) (%o53) 20 (%i54) define_variable(glob_iolevel,5,fixnum) (%o54) 5 (%i55) define_variable(glob_yes_pole,4,fixnum) (%o55) 4 (%i56) define_variable(glob_no_pole,3,fixnum) (%o56) 3 (%i57) define_variable(glob_not_given,0,fixnum) (%o57) 0 (%i58) define_variable(glob_no_sing_tests,4,fixnum) (%o58) 4 (%i59) define_variable(glob_ratio_test,1,fixnum) (%o59) 1 (%i60) define_variable(glob_three_term_test,2,fixnum) (%o60) 2 (%i61) define_variable(glob_six_term_test,3,fixnum) (%o61) 3 (%i62) define_variable(glob_log_10,log(10.0),convfloat) (%o62) 2.302585092994046 (%i63) define_variable(ALWAYS,1,fixnum) (%o63) 1 (%i64) define_variable(INFO,2,fixnum) (%o64) 2 (%i65) define_variable(DEBUGL,3,fixnum) (%o65) 3 (%i66) define_variable(DEBUGMASSIVE,4,fixnum) (%o66) 4 (%i67) define_variable(MAX_UNCHANGED,10,fixnum) (%o67) 10 (%i68) define_variable(glob_check_sign,1.0,convfloat) (%o68) 1.0 (%i69) define_variable(glob_desired_digits_correct,8.0,convfloat) (%o69) 8.0 (%i70) define_variable(glob_max_estimated_step_error,0.0,convfloat) (%o70) 0.0 (%i71) define_variable(glob_ratio_of_radius,0.1,convfloat) (%o71) 0.1 (%i72) define_variable(glob_percent_done,0.0,convfloat) (%o72) 0.0 (%i73) define_variable(glob_subiter_method,3,fixnum) (%o73) 3 (%i74) define_variable(glob_total_exp_sec,0.1,convfloat) (%o74) 0.1 (%i75) define_variable(glob_optimal_expect_sec,0.1,convfloat) (%o75) 0.1 (%i76) define_variable(glob_estimated_size_answer,100.0,convfloat) (%o76) 100.0 (%i77) define_variable(glob_html_log,true,boolean) (%o77) true (%i78) define_variable(glob_good_digits,0,fixnum) (%o78) 0 (%i79) define_variable(glob_max_opt_iter,10,fixnum) (%o79) 10 (%i80) define_variable(glob_dump,false,boolean) (%o80) false (%i81) define_variable(glob_djd_debug,true,boolean) (%o81) true (%i82) define_variable(glob_display_flag,true,boolean) (%o82) true (%i83) define_variable(glob_djd_debug2,true,boolean) (%o83) true (%i84) define_variable(glob_sec_in_minute,60,fixnum) (%o84) 60 (%i85) define_variable(glob_min_in_hour,60.0,convfloat) (%o85) 60.0 (%i86) define_variable(glob_hours_in_day,24.0,convfloat) (%o86) 24.0 (%i87) define_variable(glob_days_in_year,365,fixnum) (%o87) 365 (%i88) define_variable(glob_sec_in_hour,3600,fixnum) (%o88) 3600 (%i89) define_variable(glob_sec_in_day,86400,fixnum) (%o89) 86400 (%i90) define_variable(glob_sec_in_year,31536000,fixnum) (%o90) 31536000 (%i91) define_variable(glob_almost_1,0.999,convfloat) (%o91) 0.999 (%i92) define_variable(glob_clock_sec,0.0,convfloat) (%o92) 0.0 (%i93) define_variable(glob_clock_start_sec,0.0,convfloat) (%o93) 0.0 (%i94) define_variable(glob_not_yet_finished,true,boolean) (%o94) true (%i95) define_variable(glob_initial_pass,true,boolean) (%o95) true (%i96) define_variable(glob_not_yet_start_msg,true,boolean) (%o96) true (%i97) define_variable(glob_reached_optimal_h,false,boolean) (%o97) false (%i98) define_variable(glob_optimal_done,false,boolean) (%o98) false (%i99) define_variable(glob_disp_incr,0.1,convfloat) (%o99) 0.1 (%i100) define_variable(glob_h,0.1,convfloat) (%o100) 0.1 (%i101) define_variable(glob_diff_rc_fm,0.1,convfloat) (%o101) 0.1 (%i102) define_variable(glob_diff_rc_fmm1,0.1,convfloat) (%o102) 0.1 (%i103) define_variable(glob_diff_rc_fmm2,0.1,convfloat) (%o103) 0.1 (%i104) define_variable(glob_diff_ord_fm,0.1,convfloat) (%o104) 0.1 (%i105) define_variable(glob_diff_ord_fmm1,0.1,convfloat) (%o105) 0.1 (%i106) define_variable(glob_diff_ord_fmm2,0.1,convfloat) (%o106) 0.1 (%i107) define_variable(glob_six_term_ord_save,0.1,convfloat) (%o107) 0.1 (%i108) define_variable(glob_guess_error_rc,0.1,convfloat) (%o108) 0.1 (%i109) define_variable(glob_guess_error_ord,0.1,convfloat) (%o109) 0.1 (%i110) define_variable(glob_max_h,0.1,convfloat) (%o110) 0.1 (%i111) define_variable(glob_min_h,1.0E-6,convfloat) (%o111) 1.0E-6 (%i112) define_variable(glob_type_given_pole,0,fixnum) (%o112) 0 (%i113) define_variable(glob_large_float,1.0E+100,convfloat) (%o113) 1.0E+100 (%i114) define_variable(glob_larger_float,1.1E+100,convfloat) (%o114) 1.1E+100 (%i115) define_variable(glob_least_given_sing,9.9E+100,convfloat) (%o115) 9.9E+100 (%i116) define_variable(glob_least_ratio_sing,9.9E+100,convfloat) (%o116) 9.9E+100 (%i117) define_variable(glob_least_3_sing,9.9E+100,convfloat) (%o117) 9.9E+100 (%i118) define_variable(glob_least_6_sing,9.9E+100,convfloat) (%o118) 9.9E+100 (%i119) define_variable(glob_last_good_h,0.1,convfloat) (%o119) 0.1 (%i120) define_variable(glob_look_poles,false,boolean) (%o120) false (%i121) define_variable(glob_neg_h,false,boolean) (%o121) false (%i122) define_variable(glob_display_interval,0.0,convfloat) (%o122) 0.0 (%i123) define_variable(glob_next_display,0.0,convfloat) (%o123) 0.0 (%i124) define_variable(glob_dump_analytic,false,boolean) (%o124) false (%i125) define_variable(glob_abserr,1.0E-11,convfloat) (%o125) 1.0E-11 (%i126) define_variable(glob_relerr,1.0E-11,convfloat) (%o126) 1.0E-11 (%i127) define_variable(glob_min_pole_est,1.0E+9,convfloat) (%o127) 1.0E+9 (%i128) define_variable(glob_max_hours,0.0,convfloat) (%o128) 0.0 (%i129) define_variable(glob_max_iter,1000,fixnum) (%o129) 1000 (%i130) define_variable(glob_max_rel_trunc_err,1.0E-11,convfloat) (%o130) 1.0E-11 (%i131) define_variable(glob_max_trunc_err,1.0E-11,convfloat) (%o131) 1.0E-11 (%i132) define_variable(glob_no_eqs,0,fixnum) (%o132) 0 (%i133) define_variable(glob_optimal_clock_start_sec,0.0,convfloat) (%o133) 0.0 (%i134) define_variable(glob_optimal_start,0.0,convfloat) (%o134) 0.0 (%i135) define_variable(glob_upper_ratio_limit,1.0001,convfloat) (%o135) 1.0001 (%i136) define_variable(glob_lower_ratio_limit,0.9999,convfloat) (%o136) 0.9999 (%i137) define_variable(glob_small_float,0.0,convfloat) (%o137) 0.0 (%i138) define_variable(glob_smallish_float,0.0,convfloat) (%o138) 0.0 (%i139) define_variable(glob_unchanged_h_cnt,0,fixnum) (%o139) 0 (%i140) define_variable(glob_warned,false,boolean) (%o140) false (%i141) define_variable(glob_warned2,false,boolean) (%o141) false (%i142) define_variable(glob_max_sec,10000.0,convfloat) (%o142) 10000.0 (%i143) define_variable(glob_orig_start_sec,0.0,convfloat) (%o143) 0.0 (%i144) define_variable(glob_start,0,fixnum) (%o144) 0 (%i145) define_variable(glob_curr_iter_when_opt,0,fixnum) (%o145) 0 (%i146) define_variable(glob_current_iter,0,fixnum) (%o146) 0 (%i147) define_variable(glob_iter,0,fixnum) (%o147) 0 (%i148) define_variable(glob_normmax,0.0,convfloat) (%o148) 0.0 (%i149) define_variable(glob_max_minutes,0.0,convfloat) (%o149) 0.0 (%i150) array(array_y_init,MAX_TERMS) (%o150) array_y_init (%i151) array(array_norms,MAX_TERMS) (%o151) array_norms (%i152) array(array_fact_1,MAX_TERMS) (%o152) array_fact_1 (%i153) array(array_1st_rel_error,2) (%o153) array_1st_rel_error (%i154) array(array_last_rel_error,2) (%o154) array_last_rel_error (%i155) array(array_type_pole,2) (%o155) array_type_pole (%i156) array(array_type_real_pole,2) (%o156) array_type_real_pole (%i157) array(array_type_complex_pole,2) (%o157) array_type_complex_pole (%i158) array(array_y,MAX_TERMS) (%o158) array_y (%i159) array(array_x,MAX_TERMS) (%o159) array_x (%i160) array(array_tmp0,MAX_TERMS) (%o160) array_tmp0 (%i161) array(array_tmp1,MAX_TERMS) (%o161) array_tmp1 (%i162) array(array_tmp2,MAX_TERMS) (%o162) array_tmp2 (%i163) array(array_tmp3,MAX_TERMS) (%o163) array_tmp3 (%i164) array(array_tmp4,MAX_TERMS) (%o164) array_tmp4 (%i165) array(array_tmp5,MAX_TERMS) (%o165) array_tmp5 (%i166) array(array_tmp6,MAX_TERMS) (%o166) array_tmp6 (%i167) array(array_tmp7,MAX_TERMS) (%o167) array_tmp7 (%i168) array(array_tmp8,MAX_TERMS) (%o168) array_tmp8 (%i169) array(array_m1,MAX_TERMS) (%o169) array_m1 (%i170) array(array_y_higher,2,MAX_TERMS) (%o170) array_y_higher (%i171) array(array_y_higher_work,2,MAX_TERMS) (%o171) array_y_higher_work (%i172) array(array_y_higher_work2,2,MAX_TERMS) (%o172) array_y_higher_work2 (%i173) array(array_y_set_initial,2,MAX_TERMS) (%o173) array_y_set_initial (%i174) array(array_given_rad_poles,2,3) (%o174) array_given_rad_poles (%i175) array(array_given_ord_poles,2,3) (%o175) array_given_ord_poles (%i176) array(array_rad_test_poles,2,3) (%o176) array_rad_test_poles (%i177) array(array_ord_test_poles,2,3) (%o177) array_ord_test_poles (%i178) array(array_fact_2,MAX_TERMS,MAX_TERMS) (%o178) array_fact_2 (%i179) omniout_str(iolevel,str):=if glob_iolevel >= iolevel then printf(true,"~a~%",string(str)) (%o179) omniout_str(iolevel, str) := if glob_iolevel >= iolevel then printf(true, "~a~%", string(str)) (%i180) omniout_str_noeol(iolevel,str):=if glob_iolevel >= iolevel then printf(true,"~a",string(str)) (%o180) omniout_str_noeol(iolevel, str) := if glob_iolevel >= iolevel then printf(true, "~a", string(str)) (%i181) omniout_labstr(iolevel,label,str):=if glob_iolevel >= iolevel then printf(true,"~a = ~a~%",string(label), string(str)) (%o181) omniout_labstr(iolevel, label, str) := if glob_iolevel >= iolevel then printf(true, "~a = ~a~%", string(label), string(str)) (%i182) omniout_float(iolevel,prelabel,prelen,value,vallen,postlabel):=if glob_iolevel >= iolevel then (if vallen = 4 then printf(true,"~a = ~g ~s ~%",prelabel, value,postlabel) else printf(true,"~a = ~g ~s ~%",prelabel, value,postlabel)) (%o182) omniout_float(iolevel, prelabel, prelen, value, vallen, postlabel) := if glob_iolevel >= iolevel then (if vallen = 4 then printf(true, "~a = ~g ~s ~%", prelabel, value, postlabel) else printf(true, "~a = ~g ~s ~%", prelabel, value, postlabel)) (%i183) omniout_int(iolevel,prelabel,prelen,value,vallen,postlabel):=if glob_iolevel >= iolevel then (printf(true,"~a = ~d ~a~%",prelabel,value, postlabel),newline()) (%o183) omniout_int(iolevel, prelabel, prelen, value, vallen, postlabel) := if glob_iolevel >= iolevel then (printf(true, "~a = ~d ~a~%", prelabel, value, postlabel), newline()) (%i184) omniout_float_arr(iolevel,prelabel,elemnt,prelen,value,vallen, postlabel):=if glob_iolevel >= iolevel then (sprint(prelabel,"[",elemnt,"]=",value, postlabel),newline()) (%o184) omniout_float_arr(iolevel, prelabel, elemnt, prelen, value, vallen, postlabel) := if glob_iolevel >= iolevel then (sprint(prelabel, "[", elemnt, "]=", value, postlabel), newline()) (%i185) logitem_time(fd,secs_in):=( block(mode_declare( [[days_int,hours_int,minutes_int,sec_int, years_int],fixnum,[secs,secs_temp],convfloat]), secs:secs_in,printf(fd,"~%"), if secs >= 0 then (years_int :truncate(secs/glob_sec_in_year), sec_temp :mod(truncate(secs), truncate(glob_sec_in_year)), days_int :truncate(sec_temp/glob_sec_in_day), sec_temp :mod(sec_temp, truncate(glob_sec_in_day)), hours_int :truncate(sec_temp/glob_sec_in_hour), sec_temp :mod(sec_temp, truncate(glob_sec_in_hour)), minutes_int :truncate(sec_temp/glob_sec_in_minute), sec_int :mod(sec_temp, truncate(glob_sec_in_minute)), if truncate(years_int) > 0.1 then printf(fd, "~d Years ~f Days ~f Hours ~f Minutes ~f Seconds~%", years_int,days_int, hours_int,minutes_int, sec_int) elseif days_int > 0.1 then printf(fd, "~d Days ~d Hours ~d Minutes ~d Seconds~%", days_int,hours_int, minutes_int,sec_int) elseif hours_int > 0.1 then printf(fd, "~d Hours ~d Minutes ~d Seconds~%", hours_int,minutes_int, sec_int) elseif minutes_int > 0.1 then printf(fd, "~d Minutes ~d Seconds~%", minutes_int,sec_int) else printf(fd,"~d Seconds~%", sec_int)) else printf(fd," 0.0 Seconds~%"), printf(fd,"~%")),0) (%o185) logitem_time(fd, secs_in) := (block(mode_declare([[days_int, hours_int, minutes_int, sec_int, years_int], fixnum, [secs, secs_temp], convfloat]), secs : secs_in, printf(fd, "~%"), secs if secs >= 0 then (years_int : truncate(----------------), glob_sec_in_year sec_temp : mod(truncate(secs), truncate(glob_sec_in_year)), sec_temp days_int : truncate(---------------), sec_temp : glob_sec_in_day mod(sec_temp, truncate(glob_sec_in_day)), sec_temp hours_int : truncate(----------------), glob_sec_in_hour sec_temp : mod(sec_temp, truncate(glob_sec_in_hour)), sec_temp minutes_int : truncate(------------------), glob_sec_in_minute sec_int : mod(sec_temp, truncate(glob_sec_in_minute)), if truncate(years_int) > 0.1 then printf(fd, "~d Years ~f Days ~f Hours ~f Minutes ~f Seconds~%", years_int, days_int, hours_int, minutes_int, sec_int) elseif days_int > 0.1 then printf(fd, "~d Days ~d Hours ~d Minutes ~d Seconds~%", days_int, hours_int, minutes_int, sec_int) elseif hours_int > 0.1 then printf(fd, "~d Hours ~d Minutes ~d Seconds~%", hours_int, minutes_int, sec_int) elseif minutes_int > 0.1 then printf(fd, "~d Minutes ~d Seconds~%", minutes_int, sec_int) else printf(fd, "~d Seconds~%", sec_int)) else printf(fd, " 0.0 Seconds~%"), printf(fd, "~%")), 0) (%i186) omniout_timestr(secs_in):=( block(mode_declare( [[days_int,hours_int,minutes_int,sec_int, years_int],fixnum,[secs,secs_temp], convfloat]),secs:secs_in, if secs >= 0 then ( years_int:truncate(secs/glob_sec_in_year), sec_temp :mod(truncate(secs), truncate(glob_sec_in_year)), days_int:truncate(sec_temp/glob_sec_in_day), sec_temp :mod(sec_temp,truncate(glob_sec_in_day)), hours_int :truncate(sec_temp/glob_sec_in_hour), sec_temp :mod(sec_temp,truncate(glob_sec_in_hour)), minutes_int :truncate(sec_temp/glob_sec_in_minute), sec_int :mod(sec_temp, truncate(glob_sec_in_minute)), if years_int > 0 then printf(true, "= ~f Years ~f Days ~f Hours ~f Minutes ~f Seconds~%", years_int,days_int, hours_int,minutes_int, sec_int) elseif days_int > 0.1 then printf(true, "= ~d Days ~d Hours ~d Minutes ~d Seconds~%", days_int,hours_int, minutes_int,sec_int) elseif hours_int > 0.1 then printf(true, "= ~d Hours ~d Minutes ~d Seconds~%", hours_int,minutes_int, sec_int) elseif minutes_int > 0.1 then printf(true, "= ~d Minutes ~d Seconds~%", minutes_int,sec_int) else printf(true,"= ~d Seconds~%", sec_int)) else printf(true,"= 0.0 Seconds~%")),0) (%o186) omniout_timestr(secs_in) := (block(mode_declare([[days_int, hours_int, minutes_int, sec_int, years_int], fixnum, [secs, secs_temp], convfloat]), secs secs : secs_in, if secs >= 0 then (years_int : truncate(----------------), glob_sec_in_year sec_temp : mod(truncate(secs), truncate(glob_sec_in_year)), sec_temp days_int : truncate(---------------), sec_temp : glob_sec_in_day mod(sec_temp, truncate(glob_sec_in_day)), sec_temp hours_int : truncate(----------------), glob_sec_in_hour sec_temp : mod(sec_temp, truncate(glob_sec_in_hour)), sec_temp minutes_int : truncate(------------------), glob_sec_in_minute sec_int : mod(sec_temp, truncate(glob_sec_in_minute)), if years_int > 0 then printf(true, "= ~f Years ~f Days ~f Hours ~f Minutes ~f Seconds~%", years_int, days_int, hours_int, minutes_int, sec_int) elseif days_int > 0.1 then printf(true, "= ~d Days ~d Hours ~d Minutes ~d Seconds~%", days_int, hours_int, minutes_int, sec_int) elseif hours_int > 0.1 then printf(true, "= ~d Hours ~d Minutes ~d Seconds~%", hours_int, minutes_int, sec_int) elseif minutes_int > 0.1 then printf(true, "= ~d Minutes ~d Seconds~%", minutes_int, sec_int) else printf(true, "= ~d Seconds~%", sec_int)) else printf(true, "= 0.0 Seconds~%")), 0) (%i187) zero_ats_ar(arr_a):=( block(modedcclare([iii],fixnum),iii:1, while iii <= MAX_TERMS do (arr_a[iii]:0.0,iii:1+iii)),0) (%o187) zero_ats_ar(arr_a) := (block(modedcclare([iii], fixnum), iii : 1, while iii <= MAX_TERMS do (arr_a : 0.0, iii : 1 + iii)), 0) iii (%i188) ats(mmm_ats,arr_a,arr_b,jjj_ats):=block( mode_declare([[iii_ats,lll_ats,ma_ats],fixnum,[ret_ats], convfloat]),ret_ats:0.0, if jjj_ats <= mmm_ats then (ma_ats:1+mmm_ats,iii_ats:jjj_ats, while iii_ats <= mmm_ats do (lll_ats:ma_ats-iii_ats, if lll_ats <= MAX_TERMS and iii_ats <= MAX_TERMS then ret_ats :arr_a[iii_ats]*arr_b[lll_ats]+ret_ats, iii_ats:1+iii_ats)),ret_ats) (%o188) ats(mmm_ats, arr_a, arr_b, jjj_ats) := block(mode_declare([[iii_ats, lll_ats, ma_ats], fixnum, [ret_ats], convfloat]), ret_ats : 0.0, if jjj_ats <= mmm_ats then (ma_ats : 1 + mmm_ats, iii_ats : jjj_ats, while iii_ats <= mmm_ats do (lll_ats : ma_ats - iii_ats, if (lll_ats <= MAX_TERMS) and (iii_ats <= MAX_TERMS) then ret_ats : arr_a arr_b + ret_ats, iii_ats : 1 + iii_ats)), iii_ats lll_ats ret_ats) (%i189) att(mmm_att,arr_aa,arr_bb,jjj_att):=block( mode_declare([[al_att,iii_att,lll_att,ma_att],convfloat,[ret_att], fixnum]),ret_att:0.0, if jjj_att < mmm_att then (ma_att:2+mmm_att,iii_att:jjj_att, while iii_att < mmm_att and iii_att <= MAX_TERMS do (lll_att:ma_att-iii_att,al_att:lll_att-1, if lll_att <= MAX_TERMS and iii_att <= MAX_TERMS then ret_att :arr_aa[iii_att]*arr_bb[lll_att]*al_att +ret_att,iii_att:1+iii_att), ret_att:ret_att/mmm_att),ret_att) (%o189) att(mmm_att, arr_aa, arr_bb, jjj_att) := block(mode_declare([[al_att, iii_att, lll_att, ma_att], convfloat, [ret_att], fixnum]), ret_att : 0.0, if jjj_att < mmm_att then (ma_att : 2 + mmm_att, iii_att : jjj_att, while (iii_att < mmm_att) and (iii_att <= MAX_TERMS) do (lll_att : ma_att - iii_att, al_att : lll_att - 1, if (lll_att <= MAX_TERMS) and (iii_att <= MAX_TERMS) then ret_att : arr_aa arr_bb al_att + ret_att, iii_att lll_att ret_att iii_att : 1 + iii_att), ret_att : -------), ret_att) mmm_att (%i190) logditto(file):=(printf(file,""),printf(file,"ditto"), printf(file,""),0) (%o190) logditto(file) := (printf(file, ""), printf(file, "ditto"), printf(file, ""), 0) (%i191) logitem_integer(file,n):=(printf(file,""),printf(file,"~d",n), printf(file,""),0) (%o191) logitem_integer(file, n) := (printf(file, ""), printf(file, "~d", n), printf(file, ""), 0) (%i192) logitem_str(file,str):=(printf(file,""),printf(file,str), printf(file,""),0) (%o192) logitem_str(file, str) := (printf(file, ""), printf(file, str), printf(file, ""), 0) (%i193) logitem_good_digits(file,rel_error):=( block(mode_declare([[good_digits],fixnum]), printf(file,""), if rel_error # -1.0 then (if rel_error > +1.0E-34 then ( good_digits :3-floor(log10(rel_error)), printf(file,"~d",good_digits)) else (good_digits:16, printf(file,"~d", good_digits))) else printf(file,"Unknown"), printf(file,"")),0) (%o193) logitem_good_digits(file, rel_error) := (block(mode_declare([[good_digits], fixnum]), printf(file, ""), if rel_error # - 1.0 then (if rel_error > + 1.0E-34 then (good_digits : 3 - floor(log10(rel_error)), printf(file, "~d", good_digits)) else (good_digits : 16, printf(file, "~d", good_digits))) else printf(file, "Unknown"), printf(file, "")), 0) (%i194) log_revs(file,revs):=printf(file,revs) (%o194) log_revs(file, revs) := printf(file, revs) (%i195) logitem_float(file,x):=(printf(file,""),printf(file,"~g",x), printf(file,""),0) (%o195) logitem_float(file, x) := (printf(file, ""), printf(file, "~g", x), printf(file, ""), 0) (%i196) logitem_pole(file,pole):=(printf(file,""), if pole = 0 then printf(file,"NA") elseif pole = 1 then printf(file,"Real") elseif pole = 2 then printf(file,"Complex") elseif pole = 4 then printf(file,"Yes") else printf(file,"No"), printf(file,""),0) (%o196) logitem_pole(file, pole) := (printf(file, ""), if pole = 0 then printf(file, "NA") elseif pole = 1 then printf(file, "Real") elseif pole = 2 then printf(file, "Complex") elseif pole = 4 then printf(file, "Yes") else printf(file, "No"), printf(file, ""), 0) (%i197) logstart(file):=(printf(file,""),0) (%o197) logstart(file) := (printf(file, ""), 0) (%i198) logend(file):=(printf(file,"~%"),0) (%o198) logend(file) := (printf(file, "~%"), 0) (%i199) chk_data():=( block(mode_declare([[errflag],boolean]),errflag:false, if glob_max_iter < 2 then (omniout_str(ALWAYS,"Illegal max_iter"), errflag:true),if errflag then quit()),0) (%o199) chk_data() := (block(mode_declare([[errflag], boolean]), errflag : false, if glob_max_iter < 2 then (omniout_str(ALWAYS, "Illegal max_iter"), errflag : true), if errflag then quit()), 0) (%i200) comp_expect_sec(t_end2,t_start2,t2,clock_sec2):=block( mode_declare([[ms2,rrr,sec_left,sub1,sub2], convfloat]),ms2:clock_sec2, sub1:t_end2-t_start2,sub2:t2-t_start2, if sub1 = 0.0 then sec_left:0.0 else (if sub2 > 0.0 then (rrr:sub1/sub2, sec_left:rrr*ms2-ms2) else sec_left:0.0),sec_left) (%o200) comp_expect_sec(t_end2, t_start2, t2, clock_sec2) := block(mode_declare([[ms2, rrr, sec_left, sub1, sub2], convfloat]), ms2 : clock_sec2, sub1 : t_end2 - t_start2, sub2 : t2 - t_start2, if sub1 = 0.0 then sec_left : 0.0 else (if sub2 > 0.0 sub1 then (rrr : ----, sec_left : rrr ms2 - ms2) else sec_left : 0.0), sec_left) sub2 (%i201) comp_percent(t_end2,t_start2,t2):=block( mode_declare([[rrr,sub1,sub2],convfloat]), sub1:t_end2-t_start2,sub2:t2-t_start2, if sub2 > glob_small_float then rrr:100.0*sub2/sub1 else rrr:0.0,rrr) (%o201) comp_percent(t_end2, t_start2, t2) := block(mode_declare([[rrr, sub1, sub2], convfloat]), sub1 : t_end2 - t_start2, 100.0 sub2 sub2 : t2 - t_start2, if sub2 > glob_small_float then rrr : ---------- sub1 else rrr : 0.0, rrr) (%i202) comp_rad_from_ratio(term1,term2,last_no):=( if term2 > 0.0 then ret:abs(term1*glob_h/term2) else ret:glob_larger_float,ret) (%o202) comp_rad_from_ratio(term1, term2, last_no) := !term1 glob_h! (if term2 > 0.0 then ret : !------------! else ret : glob_larger_float, ret) ! term2 ! (%i203) comp_ord_from_ratio(term1,term2,last_no):=( if term2 > 0.0 then ret :abs(term2)*convfloat(last_no) *log(abs(term1*glob_h/term2)) /log(convfloat(last_no)) +1.0 else ret:glob_larger_float,ret) (%o203) comp_ord_from_ratio(term1, term2, last_no) := !term1 glob_h! mabs(term2) convfloat(last_no) log(!------------!) ! term2 ! (if term2 > 0.0 then ret : -------------------------------------------------- log(convfloat(last_no)) + 1.0 else ret : glob_larger_float, ret) (%i204) comp_rad_from_three_terms(term1,term2,term3,last_no):=( temp:abs( term1*term3 -term1*term3*convfloat(last_no) -2.0*term2*term2 +term2*term2*convfloat(last_no)), if temp > 0.0 then ret:abs(term2*glob_h*term1/temp) else ret:glob_larger_float,ret) (%o204) comp_rad_from_three_terms(term1, term2, term3, last_no) := (temp : mabs(term1 term3 - term1 term3 convfloat(last_no) - 2.0 term2 term2 + term2 term2 convfloat(last_no)), if temp > 0.0 !term2 glob_h term1! then ret : !------------------! else ret : glob_larger_float, ret) ! temp ! (%i205) comp_ord_from_three_terms(term1,term2,term3,last_no):=( ret:abs( (-term1*term3*convfloat(last_no*last_no) +term2*term2*convfloat(last_no*last_no) +4.0*term2*term2 -4.0*term2*term2*convfloat(last_no) -3.0*term1*term3 +4.0*term1*term3*convfloat(last_no)) /(term1*term3 -term1*term3*convfloat(last_no) -2.0*term2*term2 +term2*term2*convfloat(last_no))),ret) (%o205) comp_ord_from_three_terms(term1, term2, term3, last_no) := (ret : mabs((- term1 term3 convfloat(last_no last_no) + term2 term2 convfloat(last_no last_no) + 4.0 term2 term2 - 4.0 term2 term2 convfloat(last_no) - 3.0 term1 term3 + 4.0 term1 term3 convfloat(last_no))/(term1 term3 - term1 term3 convfloat(last_no) - 2.0 term2 term2 + term2 term2 convfloat(last_no))), ret) (%i206) comp_rad_from_six_terms(term1,term2,term3,term4,term5,term6,last_no):= ( if term5 # 0.0 and term4 # 0.0 and term3 # 0.0 and term2 # 0.0 and term1 # 0.0 then (rm0:term6/term5,rm1:term5/term4, rm2:term4/term3,rm3:term3/term2, rm4:term2/term1, nr1 :convfloat(last_no-3)*rm2 -2.0*convfloat(last_no-2)*rm1 +convfloat(last_no-1)*rm0, nr2 :convfloat(last_no-4)*rm3 -2.0*convfloat(last_no-3)*rm2 +convfloat(last_no-2)*rm1, dr1:(-1.0)/rm3+2.0/rm2+(-1.0)/rm1, dr2:(-1.0)/rm4+2.0/rm3+(-1.0)/rm2, ds1:5.0/rm3-8.0/rm2+3.0/rm1, ds2:5.0/rm4-8.0/rm3+3.0/rm2, if abs(nr1*dr2-nr2*dr1) = 0.0 or abs(dr1) = 0.0 then (rad_c:glob_larger_float, ord_no:glob_larger_float) else (if abs(nr1*dr2-nr2*dr1) # 0.0 then ( rcs :(dr1*dr2-ds2*dr1+ds1*dr2) /(nr1*dr2-nr2*dr1), ord_no :(rcs*nr1-ds1)/(2.0*dr1) -convfloat(last_no)/2.0, if abs(rcs) # 0.0 then (if rcs > 0.0 then rad_c :sqrt(rcs) *abs(glob_h) else ( rad_c :glob_larger_float, ord_no :glob_larger_float)) else ( rad_c:glob_larger_float, ord_no:glob_larger_float)) else (rad_c:glob_larger_float, ord_no:glob_larger_float))) else (rad_c:glob_larger_float, ord_no:glob_larger_float), glob_six_term_ord_save:ord_no,rad_c) (%o206) comp_rad_from_six_terms(term1, term2, term3, term4, term5, term6, last_no) := (if (term5 # 0.0) and (term4 # 0.0) and (term3 # 0.0) term6 term5 and (term2 # 0.0) and (term1 # 0.0) then (rm0 : -----, rm1 : -----, term5 term4 term4 term3 term2 rm2 : -----, rm3 : -----, rm4 : -----, term3 term2 term1 nr1 : convfloat(last_no - 3) rm2 - 2.0 convfloat(last_no - 2) rm1 + convfloat(last_no - 1) rm0, nr2 : convfloat(last_no - 4) rm3 - 2.0 convfloat(last_no - 3) rm2 + convfloat(last_no - 2) rm1, - 1.0 2.0 - 1.0 - 1.0 2.0 - 1.0 5.0 8.0 3.0 dr1 : ----- + --- + -----, dr2 : ----- + --- + -----, ds1 : --- - --- + ---, rm3 rm2 rm1 rm4 rm3 rm2 rm3 rm2 rm1 5.0 8.0 3.0 ds2 : --- - --- + ---, if (mabs(nr1 dr2 - nr2 dr1) = 0.0) or (mabs(dr1) = 0.0) rm4 rm3 rm2 then (rad_c : glob_larger_float, ord_no : glob_larger_float) else (if mabs(nr1 dr2 - nr2 dr1) # 0.0 dr1 dr2 - ds2 dr1 + ds1 dr2 then (rcs : ---------------------------, nr1 dr2 - nr2 dr1 rcs nr1 - ds1 convfloat(last_no) ord_no : ------------- - ------------------, 2.0 dr1 2.0 if mabs(rcs) # 0.0 then (if rcs > 0.0 then rad_c : sqrt(rcs) mabs(glob_h) else (rad_c : glob_larger_float, ord_no : glob_larger_float)) else (rad_c : glob_larger_float, ord_no : glob_larger_float)) else (rad_c : glob_larger_float, ord_no : glob_larger_float))) else (rad_c : glob_larger_float, ord_no : glob_larger_float), glob_six_term_ord_save : ord_no, rad_c) (%i207) comp_ord_from_six_terms(term1,term2,term3,term4,term5,term6,last_no):=glob_six_term_ord_save (%o207) comp_ord_from_six_terms(term1, term2, term3, term4, term5, term6, last_no) := glob_six_term_ord_save (%i208) factorial_2(nnn):=nnn! (%o208) factorial_2(nnn) := nnn! (%i209) factorial_1(nnn):=block(mode_declare([[ret],convfloat]), if nnn <= MAX_TERMS then (if array_fact_1[nnn] = 0 then (ret:factorial_2(nnn), array_fact_1[nnn]:ret) else ret:array_fact_1[nnn]) else ret:factorial_2(nnn),ret) (%o209) factorial_1(nnn) := block(mode_declare([[ret], convfloat]), if nnn <= MAX_TERMS then (if array_fact_1 = 0 nnn then (ret : factorial_2(nnn), array_fact_1 : ret) nnn else ret : array_fact_1 ) else ret : factorial_2(nnn), ret) nnn (%i210) factorial_3(mmm,nnn):=block(mode_declare([[ret],convfloat]), if nnn <= MAX_TERMS and mmm <= MAX_TERMS then (if array_fact_2[mmm,nnn] = 0 then (ret:factorial_1(mmm)/factorial_1(nnn), array_fact_2[mmm,nnn]:ret) else ret:array_fact_2[mmm,nnn]) else ret:factorial_2(mmm)/factorial_2(nnn),ret) (%o210) factorial_3(mmm, nnn) := block(mode_declare([[ret], convfloat]), if (nnn <= MAX_TERMS) and (mmm <= MAX_TERMS) factorial_1(mmm) then (if array_fact_2 = 0 then (ret : ----------------, mmm, nnn factorial_1(nnn) array_fact_2 : ret) else ret : array_fact_2 ) mmm, nnn mmm, nnn factorial_2(mmm) else ret : ----------------, ret) factorial_2(nnn) (%i211) log10(x):=log(x)/glob_log_10 log(x) (%o211) log10(x) := ----------- glob_log_10 (%i212) expt(x,y):=(if x <= 0.0 and y < 0.0 then print("expt error x = ",x,"y = ",y),x^y) (%o212) expt(x, y) := (if (x <= 0.0) and (y < 0.0) y then print("expt error x = ", x, "y = ", y), x ) (%i213) estimated_needed_step_error(x_start,x_end,estimated_h, estimated_answer):=block( [desired_abs_gbl_error,range, estimated_steps,step_error], omniout_float(ALWAYS, "glob_desired_digits_correct", 32, glob_desired_digits_correct, 32,""), desired_abs_gbl_error :expt(10.0,-glob_desired_digits_correct) *abs(estimated_answer), omniout_float(ALWAYS,"estimated_h",32, estimated_h,32,""), omniout_float(ALWAYS,"estimated_answer", 32,estimated_answer,32,""), omniout_float(ALWAYS, "desired_abs_gbl_error",32, desired_abs_gbl_error,32, ""),range:x_end-x_start, omniout_float(ALWAYS,"range",32,range,32, ""), estimated_steps:range/estimated_h, omniout_float(ALWAYS,"estimated_steps",32, estimated_steps,32,""), step_error :abs( desired_abs_gbl_error/estimated_steps), omniout_float(ALWAYS,"step_error",32, step_error,32,""), step_error) (%o213) estimated_needed_step_error(x_start, x_end, estimated_h, estimated_answer) := block([desired_abs_gbl_error, range, estimated_steps, step_error], omniout_float(ALWAYS, "glob_desired_digits_correct", 32, glob_desired_digits_correct, 32, ""), desired_abs_gbl_error : expt(10.0, - glob_desired_digits_correct) mabs(estimated_answer), omniout_float(ALWAYS, "estimated_h", 32, estimated_h, 32, ""), omniout_float(ALWAYS, "estimated_answer", 32, estimated_answer, 32, ""), omniout_float(ALWAYS, "desired_abs_gbl_error", 32, desired_abs_gbl_error, 32, ""), range : x_end - x_start, omniout_float(ALWAYS, "range", 32, range, 32, range ""), estimated_steps : -----------, omniout_float(ALWAYS, "estimated_steps", estimated_h !desired_abs_gbl_error! 32, estimated_steps, 32, ""), step_error : !---------------------!, ! estimated_steps ! omniout_float(ALWAYS, "step_error", 32, step_error, 32, ""), step_error) (%i214) exact_soln_y(x):=block(1.0/(x-6.0)/(x-6.0)) 1.0 ------- x - 6.0 (%o214) exact_soln_y(x) := block(-------) x - 6.0 (%i215) display_poles():=( block(mode_declare([[rad_given],convfloat]), if glob_type_given_pole = 4 then (rad_given :sqrt( array_given_rad_poles[1,2] *array_given_rad_poles[1,2] +(array_x[1] -array_given_rad_poles[1,1]) *(array_x[1] -array_given_rad_poles[1,1])), if rad_given < glob_least_given_sing then glob_least_given_sing :rad_given, omniout_float(ALWAYS, "Radius of convergence (given) for eq 1 ", 4,rad_given,4," "), omniout_float(ALWAYS, "Order of pole (given) ", 4, array_given_ord_poles[ 1,1],4," ")) elseif glob_type_given_pole = 3 then omniout_str(ALWAYS, "NO POLE (given) for Equation 1") else omniout_str(ALWAYS, "NO INFO (given) for Equation 1"), if array_rad_test_poles[1,1] < glob_large_float then (omniout_float(ALWAYS, "Radius of convergence (ratio test) for eq 1 ", 4, array_rad_test_poles[1,1], 4," "), if array_rad_test_poles[1,1] < glob_least_ratio_sing then glob_least_ratio_sing :array_rad_test_poles[1,1], omniout_float(ALWAYS, "Order of pole (ratio test) ", 4, array_ord_test_poles[1,1], 4," ")) else omniout_str(ALWAYS, "NO POLE (ratio test) for Equation 1"), if array_rad_test_poles[1,2] > 0.0 and array_rad_test_poles[1,2] < glob_large_float then (omniout_float(ALWAYS, "Radius of convergence (three term test) for eq 1 ", 4, array_rad_test_poles[1,2], 4," "), if array_rad_test_poles[1,2] < glob_least_3_sing then glob_least_3_sing :array_rad_test_poles[1,2], omniout_float(ALWAYS, "Order of pole (three term test) ", 4, array_ord_test_poles[1,2], 4," ")) else omniout_str(ALWAYS, "NO REAL POLE (three term test) for Equation 1"), if array_rad_test_poles[1,3] > 0.0 and array_rad_test_poles[1,3] < glob_large_float then (omniout_float(ALWAYS, "Radius of convergence (six term test) for eq 1 ", 4, array_rad_test_poles[1,3], 4," "), if array_rad_test_poles[1,3] < glob_least_6_sing then glob_least_6_sing :array_rad_test_poles[1,3], omniout_float(ALWAYS, "Order of pole (six term test) ", 4, array_ord_test_poles[1,3], 4," ")) else omniout_str(ALWAYS, "NO COMPLEX POLE (six term test) for Equation 1")), 0) (%o215) display_poles() := (block(mode_declare([[rad_given], convfloat]), if glob_type_given_pole = 4 then (rad_given : sqrt(array_given_rad_poles array_given_rad_poles 1, 2 1, 2 + (array_x - array_given_rad_poles ) 1 1, 1 (array_x - array_given_rad_poles )), 1 1, 1 if rad_given < glob_least_given_sing then glob_least_given_sing : rad_given, omniout_float(ALWAYS, "Radius of convergence (given) for eq 1 ", 4, rad_given, 4, " "), omniout_float(ALWAYS, "Order of pole (given) ", 4, array_given_ord_poles , 4, " ")) elseif glob_type_given_pole = 3 1, 1 then omniout_str(ALWAYS, "NO POLE (given) for Equation 1") else omniout_str(ALWAYS, "NO INFO (given) for Equation 1"), if array_rad_test_poles < glob_large_float then (omniout_float(ALWAYS, "Ra\ 1, 1 dius of convergence (ratio test) for eq 1 ", 4, array_rad_test_poles , 4, " "), if array_rad_test_poles < 1, 1 1, 1 glob_least_ratio_sing then glob_least_ratio_sing : array_rad_test_poles , 1, 1 omniout_float(ALWAYS, "Order of pole (ratio test) ", 4, array_ord_test_poles , 4, " ")) else omniout_str(ALWAYS, 1, 1 "NO POLE (ratio test) for Equation 1"), if (array_rad_test_poles > 0.0) and (array_rad_test_poles < glob_large_float) 1, 2 1, 2 then (omniout_float(ALWAYS, "Radius of convergence (three term test) for eq 1 ", 4, array_rad_test_poles , 4, " "), if array_rad_test_poles < 1, 2 1, 2 glob_least_3_sing then glob_least_3_sing : array_rad_test_poles , 1, 2 omniout_float(ALWAYS, "Order of pole (three term test) ", 4, array_ord_test_poles , 4, " ")) else omniout_str(ALWAYS, 1, 2 "NO REAL POLE (three term test) for Equation 1"), if (array_rad_test_poles > 0.0) and (array_rad_test_poles < 1, 3 1, 3 glob_large_float) then (omniout_float(ALWAYS, "Radius of convergence (six term test) for eq 1 ", 4, array_rad_test_poles , 4, " "), if array_rad_test_poles < 1, 3 1, 3 glob_least_6_sing then glob_least_6_sing : array_rad_test_poles , 1, 3 omniout_float(ALWAYS, "Order of pole (six term test) ", 4, array_ord_test_poles , 4, " ")) else omniout_str(ALWAYS, 1, 3 "NO COMPLEX POLE (six term test) for Equation 1")), 0) (%i216) my_check_sign(x0,xf):=block([ret],if xf > x0 then ret:1.0 else ret:-1.0,ret) (%o216) my_check_sign(x0, xf) := block([ret], if xf > x0 then ret : 1.0 else ret : - 1.0, ret) (%i217) est_size_answer():=block([min_size], min_size:glob_estimated_size_answer, if abs(array_y[1]) < min_size then (min_size:abs(array_y[1]), omniout_float(ALWAYS,"min_size",32,min_size, 32,"")), if min_size < 1.0 then (min_size:1.0, omniout_float(ALWAYS,"min_size",32,min_size, 32,"")),min_size) (%o217) est_size_answer() := block([min_size], min_size : glob_estimated_size_answer, if !array_y ! < min_size then (min_size : !array_y !, ! 1! ! 1! omniout_float(ALWAYS, "min_size", 32, min_size, 32, "")), if min_size < 1.0 then (min_size : 1.0, omniout_float(ALWAYS, "min_size", 32, min_size, 32, "")), min_size) (%i218) test_suggested_h():=block( [max_estimated_step_error,hn_div_ho,hn_div_ho_2, hn_div_ho_3,no_terms,est_tmp], max_estimated_step_error:0.0,no_terms:MAX_TERMS, hn_div_ho:0.5,hn_div_ho_2:0.25,hn_div_ho_3:0.125, omniout_float(ALWAYS,"hn_div_ho",32,hn_div_ho,32,""), omniout_float(ALWAYS,"hn_div_ho_2",32,hn_div_ho_2,32, ""), omniout_float(ALWAYS,"hn_div_ho_3",32,hn_div_ho_3,32, ""), est_tmp:abs(array_y[no_terms]*hn_div_ho_3 +array_y[no_terms-1]*hn_div_ho_2 +array_y[no_terms-2]*hn_div_ho +array_y[no_terms-3]), if est_tmp >= max_estimated_step_error then max_estimated_step_error:est_tmp, omniout_float(ALWAYS,"max_estimated_step_error",32, max_estimated_step_error,32,""), max_estimated_step_error) (%o218) test_suggested_h() := block([max_estimated_step_error, hn_div_ho, hn_div_ho_2, hn_div_ho_3, no_terms, est_tmp], max_estimated_step_error : 0.0, no_terms : MAX_TERMS, hn_div_ho : 0.5, hn_div_ho_2 : 0.25, hn_div_ho_3 : 0.125, omniout_float(ALWAYS, "hn_div_ho", 32, hn_div_ho, 32, ""), omniout_float(ALWAYS, "hn_div_ho_2", 32, hn_div_ho_2, 32, ""), omniout_float(ALWAYS, "hn_div_ho_3", 32, hn_div_ho_3, 32, ""), est_tmp : mabs(array_y hn_div_ho_3 + array_y hn_div_ho_2 no_terms no_terms - 1 + array_y hn_div_ho + array_y ), no_terms - 2 no_terms - 3 if est_tmp >= max_estimated_step_error then max_estimated_step_error : est_tmp, omniout_float(ALWAYS, "max_estimated_step_error", 32, max_estimated_step_error, 32, ""), max_estimated_step_error) (%i219) reached_interval():=block(mode_declare([[ret],boolean]), if glob_check_sign*array_x[1] >= glob_check_sign*glob_next_display then ret:true else ret:false,return(ret)) (%o219) reached_interval() := block(mode_declare([[ret], boolean]), if glob_check_sign array_x >= glob_check_sign glob_next_display 1 then ret : true else ret : false, return(ret)) (%i220) display_alot(iter):=( block(mode_declare( [[abserr],convfloat,[analytic_val_y],convfloat, [ind_var],convfloat,[numeric_val],convfloat, [relerr],convfloat,[term_no],fixnum]), if reached_interval() then (if iter >= 0 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.0 then ( relerr :abserr*100.0 /abs(analytic_val_y), if relerr > 1.0E-34 then glob_good_digits :3-floor(log10(relerr)) else glob_good_digits :16) else (relerr:-1.0, glob_good_digits:-1), if glob_iter = 1 then array_1st_rel_error[1] :relerr else array_last_rel_error[ 1] :relerr, omniout_float(ALWAYS, "absolute error ", 4,abserr,20," "), omniout_float(ALWAYS, "relative error ", 4,relerr,20,"%"), omniout_int(INFO, "Correct digits ", 32, glob_good_digits,4, " "), omniout_float(ALWAYS, "h ", 4,glob_h,20, " ")))),0) (%o220) display_alot(iter) := (block(mode_declare([[abserr], convfloat, [analytic_val_y], convfloat, [ind_var], convfloat, [numeric_val], convfloat, [relerr], convfloat, [term_no], fixnum]), if reached_interval() then (if iter >= 0 then (ind_var : array_x , omniout_float(ALWAYS, 1 "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 : mabs(numeric_val - analytic_val_y), omniout_float(ALWAYS, "y[1] (numeric) ", 33, numeric_val, 20, " "), if mabs(analytic_val_y) # 0.0 abserr 100.0 then (relerr : --------------------, if relerr > 1.0E-34 mabs(analytic_val_y) then glob_good_digits : 3 - floor(log10(relerr)) else glob_good_digits : 16) else (relerr : - 1.0, glob_good_digits : - 1), if glob_iter = 1 then array_1st_rel_error : relerr 1 else array_last_rel_error : relerr, omniout_float(ALWAYS, 1 "absolute error ", 4, abserr, 20, " "), omniout_float(ALWAYS, "relative error ", 4, relerr, 20, "%"), omniout_int(INFO, "Correct digits ", 32, glob_good_digits, 4, " "), omniout_float(ALWAYS, "h ", 4, glob_h, 20, " ")))), 0) (%i221) adjust_for_pole(h_param):=( block(mode_declare( [[hnew],convfloat,[sz2],convfloat,[tmp], convfloat]),hnew:h_param, glob_normmax:glob_small_float, if abs(array_y_higher[1,1]) > glob_small_float then (tmp:abs(array_y_higher[1,1]), if tmp < glob_normmax then glob_normmax:tmp), if glob_look_poles and glob_min_pole_est > glob_small_float and glob_min_pole_est < glob_large_float then (sz2:glob_min_pole_est/10.0, if sz2 < hnew then ( omniout_float(INFO, "glob_h adjusted to ", 20,h_param,12, "due to singularity."), omniout_str(INFO, "Reached Optimal"), return(hnew))), 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]), hnew:sz2),hnew) (%o221) adjust_for_pole(h_param) := (block(mode_declare([[hnew], convfloat, [sz2], convfloat, [tmp], convfloat]), hnew : h_param, glob_normmax : glob_small_float, if !array_y_higher ! > glob_small_float ! 1, 1! then (tmp : !array_y_higher !, if tmp < glob_normmax ! 1, 1! then glob_normmax : tmp), if glob_look_poles and (glob_min_pole_est > glob_small_float) and (glob_min_pole_est < glob_large_float) glob_min_pole_est then (sz2 : -----------------, if sz2 < hnew 10.0 then (omniout_float(INFO, "glob_h adjusted to ", 20, h_param, 12, "due to singularity."), omniout_str(INFO, "Reached Optimal"), return(hnew))), 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 ), hnew : sz2), hnew) 1 (%i222) prog_report(x_start,x_end):=( block(mode_declare([[clock_sec],convfloat,[opt_clock_sec], convfloat,[clock_sec1],convfloat, [expect_sec],convfloat,[left_sec], convfloat,[percent_done],convfloat, [total_clock_sec],convfloat]), clock_sec1:elapsed_time_seconds(), total_clock_sec:clock_sec1-glob_orig_start_sec, glob_clock_sec:clock_sec1-glob_clock_start_sec, left_sec:-clock_sec1+glob_orig_start_sec +glob_max_sec, expect_sec:comp_expect_sec(x_end,x_start, glob_h+array_x[1], clock_sec1 -glob_orig_start_sec), opt_clock_sec:clock_sec1 -glob_optimal_clock_start_sec, glob_optimal_expect_sec :comp_expect_sec(x_end,x_start,glob_h+array_x[1], opt_clock_sec), glob_total_exp_sec :total_clock_sec+glob_optimal_expect_sec, percent_done:comp_percent(x_end,x_start, glob_h+array_x[1]), glob_percent_done:percent_done, omniout_str_noeol(INFO, "Total Elapsed Time "), omniout_timestr(total_clock_sec), omniout_str_noeol(INFO, "Elapsed Time(since restart) "), omniout_timestr(glob_clock_sec), if percent_done < 100.0 then (omniout_str_noeol(INFO, "Expected Time Remaining "), omniout_timestr(expect_sec), omniout_str_noeol(INFO, "Optimized Time Remaining "), omniout_timestr(glob_optimal_expect_sec), omniout_str_noeol(INFO, "Expected Total Time "), omniout_timestr(glob_total_exp_sec)), omniout_str_noeol(INFO, "Time to Timeout "), omniout_timestr(left_sec), omniout_float(INFO, "Percent Done ",33, percent_done,4,"%")),0) (%o222) prog_report(x_start, x_end) := (block(mode_declare([[clock_sec], convfloat, [opt_clock_sec], convfloat, [clock_sec1], convfloat, [expect_sec], convfloat, [left_sec], convfloat, [percent_done], convfloat, [total_clock_sec], convfloat]), clock_sec1 : elapsed_time_seconds(), total_clock_sec : clock_sec1 - glob_orig_start_sec, glob_clock_sec : clock_sec1 - glob_clock_start_sec, left_sec : - clock_sec1 + glob_orig_start_sec + glob_max_sec, expect_sec : comp_expect_sec(x_end, x_start, glob_h + array_x , 1 clock_sec1 - glob_orig_start_sec), opt_clock_sec : clock_sec1 - glob_optimal_clock_start_sec, glob_optimal_expect_sec : comp_expect_sec(x_end, x_start, glob_h + array_x , 1 opt_clock_sec), glob_total_exp_sec : total_clock_sec + glob_optimal_expect_sec, percent_done : comp_percent(x_end, x_start, glob_h + array_x ), 1 glob_percent_done : percent_done, omniout_str_noeol(INFO, "Total Elapsed Time "), omniout_timestr(total_clock_sec), omniout_str_noeol(INFO, "Elapsed Time(since restart) "), omniout_timestr(glob_clock_sec), if percent_done < 100.0 then (omniout_str_noeol(INFO, "Expected Time Remaining "), omniout_timestr(expect_sec), omniout_str_noeol(INFO, "Optimized Time Remaining "), omniout_timestr(glob_optimal_expect_sec), omniout_str_noeol(INFO, "Expected Total Time "), omniout_timestr(glob_total_exp_sec)), omniout_str_noeol(INFO, "Time to Timeout "), omniout_timestr(left_sec), omniout_float(INFO, "Percent Done ", 33, percent_done, 4, "%")), 0) (%i223) check_for_pole():=( block(mode_declare([cnt],fixnum,[dr1,dr2,ds1,ds2,hdrc], convfloat,[m,n],fixnum,[nr1,nr2], convfloat,[ord_no],fixnum, [term1,term2,term3,part1,part2, part3,part4,part5,part6,part7, part8,part9,part10,part11,part12, part13,part14,rad_c,rcs,rm0,rm1, rm2,rm3,rm4],convfloat, [found_sing],fixnum, [h_new,ratio,term,local_test, tmp_rad,tmp_ord,tmp_ratio, prev_tmp_rad],convfloat,[last_no], fixnum), glob_min_pole_est:glob_larger_float, tmp_rad:glob_larger_float, prev_tmp_rad:glob_larger_float, tmp_ratio:glob_larger_float, rad_c:glob_larger_float, array_rad_test_poles[1,1]:glob_larger_float, array_ord_test_poles[1,1]:glob_larger_float, found_sing:1,last_no:-10-1+MAX_TERMS,cnt:0, while last_no < MAX_TERMS-3 and found_sing = 1 do (tmp_rad :comp_rad_from_ratio( array_y_higher[1,last_no-1], array_y_higher[1,last_no],last_no), tmp_ratio:tmp_rad/prev_tmp_rad, if cnt > 0 and tmp_ratio < glob_upper_ratio_limit and tmp_ratio > glob_lower_ratio_limit then rad_c:tmp_rad elseif cnt = 0 then rad_c:tmp_rad elseif cnt > 0 then found_sing:0, prev_tmp_rad:tmp_rad,cnt:1+cnt, last_no:1+last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles[1,1] then ( array_rad_test_poles[1,1]:rad_c, last_no:last_no-1, tmp_ord :comp_ord_from_ratio( array_y_higher[1,last_no-1], array_y_higher[1,last_no], last_no), array_rad_test_poles[1,1]:rad_c, array_ord_test_poles[1,1] :tmp_ord)), glob_min_pole_est:glob_larger_float, tmp_rad:glob_larger_float, prev_tmp_rad:glob_larger_float, tmp_ratio:glob_larger_float, rad_c:glob_larger_float, array_rad_test_poles[1,2]:glob_larger_float, array_ord_test_poles[1,2]:glob_larger_float, found_sing:1,last_no:-10-1+MAX_TERMS,cnt:0, while last_no < MAX_TERMS-4 and found_sing = 1 do (tmp_rad :comp_rad_from_three_terms( array_y_higher[1,last_no-2], array_y_higher[1,last_no-1], array_y_higher[1,last_no],last_no), tmp_ratio:tmp_rad/prev_tmp_rad, if cnt > 0 and tmp_ratio < glob_upper_ratio_limit and tmp_ratio > glob_lower_ratio_limit then rad_c:tmp_rad elseif cnt = 0 then rad_c:tmp_rad elseif cnt > 0 then found_sing:0, prev_tmp_rad:tmp_rad,cnt:1+cnt, last_no:1+last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles[1,2] then ( array_rad_test_poles[1,2]:rad_c, last_no:last_no-1, tmp_ord :comp_ord_from_three_terms( array_y_higher[1,last_no-2], array_y_higher[1,last_no-1], array_y_higher[1,last_no], last_no), array_rad_test_poles[1,2]:rad_c, if rad_c < glob_min_pole_est then glob_min_pole_est:rad_c, array_ord_test_poles[1,2] :tmp_ord)), glob_min_pole_est:glob_larger_float, tmp_rad:glob_larger_float, prev_tmp_rad:glob_larger_float, tmp_ratio:glob_larger_float, rad_c:glob_larger_float, array_rad_test_poles[1,3]:glob_larger_float, array_ord_test_poles[1,3]:glob_larger_float, found_sing:1,last_no:-10-1+MAX_TERMS,cnt:0, while last_no < MAX_TERMS-7 and found_sing = 1 do (tmp_rad :comp_rad_from_six_terms( array_y_higher[1,last_no-5], array_y_higher[1,last_no-4], array_y_higher[1,last_no-3], array_y_higher[1,last_no-2], array_y_higher[1,last_no-1], array_y_higher[1,last_no],last_no), tmp_ratio:tmp_rad/prev_tmp_rad, if cnt > 0 and tmp_ratio < glob_upper_ratio_limit and tmp_ratio > glob_lower_ratio_limit then rad_c:tmp_rad elseif cnt = 0 then rad_c:tmp_rad elseif cnt > 0 then found_sing:0, prev_tmp_rad:tmp_rad,cnt:1+cnt, last_no:1+last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles[1,3] then ( array_rad_test_poles[1,3]:rad_c, last_no:last_no-1, tmp_ord :comp_ord_from_six_terms( array_y_higher[1,last_no-5], array_y_higher[1,last_no-4], array_y_higher[1,last_no-3], array_y_higher[1,last_no-2], array_y_higher[1,last_no-1], array_y_higher[1,last_no], last_no), array_rad_test_poles[1,3]:rad_c, if rad_c < glob_min_pole_est then glob_min_pole_est:rad_c, array_ord_test_poles[1,3] :tmp_ord)), if abs(glob_min_pole_est)*glob_ratio_of_radius < abs(glob_h) then (h_new :glob_check_sign*glob_min_pole_est *glob_ratio_of_radius, term:1,ratio:1.0, while term <= MAX_TERMS do ( array_y[term] :array_y[term]*ratio, array_y_higher[1,term] :array_y_higher[1,term]*ratio, array_x[term] :array_x[term]*ratio, ratio:ratio*h_new/abs(glob_h), term:1+term),glob_h:h_new), if reached_interval() then display_poles()),0) (%o223) check_for_pole() := (block(mode_declare([cnt], fixnum, [dr1, dr2, ds1, ds2, hdrc], convfloat, [m, n], fixnum, [nr1, nr2], convfloat, [ord_no], fixnum, [term1, term2, term3, part1, part2, part3, part4, part5, part6, part7, part8, part9, part10, part11, part12, part13, part14, rad_c, rcs, rm0, rm1, rm2, rm3, rm4], convfloat, [found_sing], fixnum, [h_new, ratio, term, local_test, tmp_rad, tmp_ord, tmp_ratio, prev_tmp_rad], convfloat, [last_no], fixnum), glob_min_pole_est : glob_larger_float, tmp_rad : glob_larger_float, prev_tmp_rad : glob_larger_float, tmp_ratio : glob_larger_float, rad_c : glob_larger_float, array_rad_test_poles : glob_larger_float, 1, 1 array_ord_test_poles : glob_larger_float, found_sing : 1, 1, 1 last_no : - 10 - 1 + MAX_TERMS, cnt : 0, while (last_no < MAX_TERMS - 3) and (found_sing = 1) do (tmp_rad : comp_rad_from_ratio(array_y_higher , array_y_higher , 1, last_no - 1 1, last_no tmp_rad last_no), tmp_ratio : ------------, if (cnt > 0) prev_tmp_rad and (tmp_ratio < glob_upper_ratio_limit) and (tmp_ratio > glob_lower_ratio_limit) then rad_c : tmp_rad elseif cnt = 0 then rad_c : tmp_rad elseif cnt > 0 then found_sing : 0, prev_tmp_rad : tmp_rad, cnt : 1 + cnt, last_no : 1 + last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles 1, 1 then (array_rad_test_poles : rad_c, last_no : last_no - 1, 1, 1 tmp_ord : comp_ord_from_ratio(array_y_higher , 1, last_no - 1 array_y_higher , last_no), array_rad_test_poles : rad_c, 1, last_no 1, 1 array_ord_test_poles : tmp_ord)), glob_min_pole_est : glob_larger_float, 1, 1 tmp_rad : glob_larger_float, prev_tmp_rad : glob_larger_float, tmp_ratio : glob_larger_float, rad_c : glob_larger_float, array_rad_test_poles : glob_larger_float, 1, 2 array_ord_test_poles : glob_larger_float, found_sing : 1, 1, 2 last_no : - 10 - 1 + MAX_TERMS, cnt : 0, while (last_no < MAX_TERMS - 4) and (found_sing = 1) do (tmp_rad : comp_rad_from_three_terms(array_y_higher , 1, last_no - 2 array_y_higher , array_y_higher , last_no), 1, last_no - 1 1, last_no tmp_rad tmp_ratio : ------------, if (cnt > 0) and (tmp_ratio < glob_upper_ratio_limit) prev_tmp_rad and (tmp_ratio > glob_lower_ratio_limit) then rad_c : tmp_rad elseif cnt = 0 then rad_c : tmp_rad elseif cnt > 0 then found_sing : 0, prev_tmp_rad : tmp_rad, cnt : 1 + cnt, last_no : 1 + last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles 1, 2 then (array_rad_test_poles : rad_c, last_no : last_no - 1, 1, 2 tmp_ord : comp_ord_from_three_terms(array_y_higher , 1, last_no - 2 array_y_higher , array_y_higher , last_no), 1, last_no - 1 1, last_no array_rad_test_poles : rad_c, if rad_c < glob_min_pole_est 1, 2 then glob_min_pole_est : rad_c, array_ord_test_poles : tmp_ord)), 1, 2 glob_min_pole_est : glob_larger_float, tmp_rad : glob_larger_float, prev_tmp_rad : glob_larger_float, tmp_ratio : glob_larger_float, rad_c : glob_larger_float, array_rad_test_poles : glob_larger_float, 1, 3 array_ord_test_poles : glob_larger_float, found_sing : 1, 1, 3 last_no : - 10 - 1 + MAX_TERMS, cnt : 0, while (last_no < MAX_TERMS - 7) and (found_sing = 1) do (tmp_rad : comp_rad_from_six_terms(array_y_higher , 1, last_no - 5 array_y_higher , array_y_higher , 1, last_no - 4 1, last_no - 3 array_y_higher , array_y_higher , 1, last_no - 2 1, last_no - 1 tmp_rad array_y_higher , last_no), tmp_ratio : ------------, 1, last_no prev_tmp_rad if (cnt > 0) and (tmp_ratio < glob_upper_ratio_limit) and (tmp_ratio > glob_lower_ratio_limit) then rad_c : tmp_rad elseif cnt = 0 then rad_c : tmp_rad elseif cnt > 0 then found_sing : 0, prev_tmp_rad : tmp_rad, cnt : 1 + cnt, last_no : 1 + last_no), if found_sing = 1 then (if rad_c < array_rad_test_poles 1, 3 then (array_rad_test_poles : rad_c, last_no : last_no - 1, 1, 3 tmp_ord : comp_ord_from_six_terms(array_y_higher , 1, last_no - 5 array_y_higher , array_y_higher , 1, last_no - 4 1, last_no - 3 array_y_higher , array_y_higher , 1, last_no - 2 1, last_no - 1 array_y_higher , last_no), array_rad_test_poles : rad_c, 1, last_no 1, 3 if rad_c < glob_min_pole_est then glob_min_pole_est : rad_c, array_ord_test_poles : tmp_ord)), if mabs(glob_min_pole_est) 1, 3 glob_ratio_of_radius < mabs(glob_h) then (h_new : glob_check_sign glob_min_pole_est glob_ratio_of_radius, term : 1, ratio : 1.0, while term <= MAX_TERMS do (array_y : array_y ratio, term term array_y_higher : array_y_higher ratio, 1, term 1, term ratio h_new array_x : array_x ratio, ratio : ------------, term : 1 + term), term term mabs(glob_h) glob_h : h_new), if reached_interval() then display_poles()), 0) (%i224) atomall():=( block(mode_declare([[kkk,order_d],fixnum, [adj2,adj3,temporary,term,temp,temp2], convfloat]), array_tmp1[1]:array_m1[1]*array_const_2D0[1], array_tmp2[1]:array_x[1]-array_const_6D0[1], array_tmp3[1]:array_tmp1[1]/array_tmp2[1], array_tmp4[1]:array_x[1]-array_const_6D0[1], array_tmp5[1]:array_tmp3[1]/array_tmp4[1], array_tmp6[1]:array_x[1]-array_const_6D0[1], array_tmp7[1]:array_tmp5[1]/array_tmp6[1], array_tmp8[1]:array_tmp7[1]+array_const_0D0[1], if not array_y_set_initial[1,2] then (if 1 <= MAX_TERMS then ( temporary :array_tmp8[1]*expt(glob_h,1) *factorial_3(0,1), if 2 <= MAX_TERMS then (array_y[2]:temporary, array_y_higher[1,2]:temporary), temporary:temporary*1.0/glob_h, array_y_higher[2,1]:temporary,0)),kkk:2, array_tmp1[2]:array_m1[2]*array_const_2D0[1], array_tmp2[2]:array_x[2], array_tmp3[2]:(array_tmp1[2] -array_tmp3[1]*array_tmp2[2]) /array_tmp2[1],array_tmp4[2]:array_x[2], array_tmp5[2]:(array_tmp3[2] -array_tmp5[1]*array_tmp4[2]) /array_tmp4[1],array_tmp6[2]:array_x[2], array_tmp7[2]:(array_tmp5[2] -array_tmp7[1]*array_tmp6[2]) /array_tmp6[1], array_tmp8[2]:array_tmp7[2], if not array_y_set_initial[1,3] then (if 2 <= MAX_TERMS then ( temporary :array_tmp8[2]*expt(glob_h,1) *factorial_3(1,2), if 3 <= MAX_TERMS then (array_y[3]:temporary, array_y_higher[1,3]:temporary), temporary:temporary*2.0/glob_h, array_y_higher[2,2]:temporary,0)),kkk:3, array_tmp1[3]:array_m1[3]*array_const_2D0[1], array_tmp3[3]:(array_tmp1[3] -array_tmp3[2]*array_tmp2[2]) /array_tmp2[1], array_tmp5[3]:(array_tmp3[3] -array_tmp5[2]*array_tmp4[2]) /array_tmp4[1], array_tmp7[3]:(array_tmp5[3] -array_tmp7[2]*array_tmp6[2]) /array_tmp6[1], array_tmp8[3]:array_tmp7[3], if not array_y_set_initial[1,4] then (if 3 <= MAX_TERMS then ( temporary :array_tmp8[3]*expt(glob_h,1) *factorial_3(2,3), if 4 <= MAX_TERMS then (array_y[4]:temporary, array_y_higher[1,4]:temporary), temporary:temporary*3.0/glob_h, array_y_higher[2,3]:temporary,0)),kkk:4, array_tmp1[4]:array_m1[4]*array_const_2D0[1], array_tmp3[4]:(array_tmp1[4] -array_tmp3[3]*array_tmp2[2]) /array_tmp2[1], array_tmp5[4]:(array_tmp3[4] -array_tmp5[3]*array_tmp4[2]) /array_tmp4[1], array_tmp7[4]:(array_tmp5[4] -array_tmp7[3]*array_tmp6[2]) /array_tmp6[1], array_tmp8[4]:array_tmp7[4], if not array_y_set_initial[1,5] then (if 4 <= MAX_TERMS then ( temporary :array_tmp8[4]*expt(glob_h,1) *factorial_3(3,4), if 5 <= MAX_TERMS then (array_y[5]:temporary, array_y_higher[1,5]:temporary), temporary:temporary*4.0/glob_h, array_y_higher[2,4]:temporary,0)),kkk:5, array_tmp1[5]:array_m1[5]*array_const_2D0[1], array_tmp3[5]:(array_tmp1[5] -array_tmp3[4]*array_tmp2[2]) /array_tmp2[1], array_tmp5[5]:(array_tmp3[5] -array_tmp5[4]*array_tmp4[2]) /array_tmp4[1], array_tmp7[5]:(array_tmp5[5] -array_tmp7[4]*array_tmp6[2]) /array_tmp6[1], array_tmp8[5]:array_tmp7[5], if not array_y_set_initial[1,6] then (if 5 <= MAX_TERMS then ( temporary :array_tmp8[5]*expt(glob_h,1) *factorial_3(4,5), if 6 <= MAX_TERMS then (array_y[6]:temporary, array_y_higher[1,6]:temporary), temporary:temporary*5.0/glob_h, array_y_higher[2,5]:temporary,0)),kkk:6, while kkk <= MAX_TERMS do (array_tmp1[kkk]:array_m1[kkk]*array_const_2D0[1], array_tmp3[kkk] :(-ats(kkk,array_tmp2,array_tmp3,2)) /array_tmp2[1], array_tmp5[kkk] :(-ats(kkk,array_tmp4,array_tmp5,2)) /array_tmp4[1], array_tmp7[kkk] :(-ats(kkk,array_tmp6,array_tmp7,2)) /array_tmp6[1],array_tmp8[kkk]:array_tmp7[kkk], order_d:1, if order_d+kkk <= MAX_TERMS then (if not array_y_set_initial[1,order_d+kkk] then ( temporary :array_tmp8[kkk]*expt(glob_h,order_d) *factorial_3(kkk-1, -1+order_d +kkk), array_y[order_d+kkk]:temporary, array_y_higher[1,order_d+kkk]:temporary, term:-1+order_d+kkk,adj2:-1+order_d+kkk, adj3:2, while term >= 1 and term <= MAX_TERMS and adj3 < 1+order_d do ( if adj3 <= 1+order_d then ( if adj2 > 0 then temporary :temporary*adj2/glob_h else temporary:temporary, array_y_higher[adj3,term] :temporary),term:term-1, adj2:adj2-1,adj3:1+adj3))), kkk:1+kkk)),0) (%o224) atomall() := (block(mode_declare([[kkk, order_d], fixnum, [adj2, adj3, temporary, term, temp, temp2], convfloat]), array_tmp1 : array_m1 array_const_2D0 , 1 1 1 array_tmp1 1 array_tmp2 : array_x - array_const_6D0 , array_tmp3 : -----------, 1 1 1 1 array_tmp2 1 array_tmp3 1 array_tmp4 : array_x - array_const_6D0 , array_tmp5 : -----------, 1 1 1 1 array_tmp4 1 array_tmp5 1 array_tmp6 : array_x - array_const_6D0 , array_tmp7 : -----------, 1 1 1 1 array_tmp6 1 array_tmp8 : array_tmp7 + array_const_0D0 , 1 1 1 if not array_y_set_initial then (if 1 <= MAX_TERMS 1, 2 then (temporary : array_tmp8 expt(glob_h, 1) factorial_3(0, 1), 1 if 2 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary), 2 1, 2 temporary 1.0 temporary : -------------, array_y_higher : temporary, 0)), kkk : 2, glob_h 2, 1 array_tmp1 : array_m1 array_const_2D0 , array_tmp2 : array_x , 2 2 1 2 2 array_tmp1 - array_tmp3 array_tmp2 2 1 2 array_tmp3 : -------------------------------------, array_tmp4 : array_x , 2 array_tmp2 2 2 1 array_tmp3 - array_tmp5 array_tmp4 2 1 2 array_tmp5 : -------------------------------------, array_tmp6 : array_x , 2 array_tmp4 2 2 1 array_tmp5 - array_tmp7 array_tmp6 2 1 2 array_tmp7 : -------------------------------------, 2 array_tmp6 1 array_tmp8 : array_tmp7 , if not array_y_set_initial 2 2 1, 3 then (if 2 <= MAX_TERMS then (temporary : array_tmp8 expt(glob_h, 1) factorial_3(1, 2), 2 if 3 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary), 3 1, 3 temporary 2.0 temporary : -------------, array_y_higher : temporary, 0)), kkk : 3, glob_h 2, 2 array_tmp1 : array_m1 array_const_2D0 , 3 3 1 array_tmp1 - array_tmp3 array_tmp2 3 2 2 array_tmp3 : -------------------------------------, 3 array_tmp2 1 array_tmp3 - array_tmp5 array_tmp4 3 2 2 array_tmp5 : -------------------------------------, 3 array_tmp4 1 array_tmp5 - array_tmp7 array_tmp6 3 2 2 array_tmp7 : -------------------------------------, 3 array_tmp6 1 array_tmp8 : array_tmp7 , if not array_y_set_initial 3 3 1, 4 then (if 3 <= MAX_TERMS then (temporary : array_tmp8 expt(glob_h, 1) factorial_3(2, 3), 3 if 4 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary), 4 1, 4 temporary 3.0 temporary : -------------, array_y_higher : temporary, 0)), kkk : 4, glob_h 2, 3 array_tmp1 : array_m1 array_const_2D0 , 4 4 1 array_tmp1 - array_tmp3 array_tmp2 4 3 2 array_tmp3 : -------------------------------------, 4 array_tmp2 1 array_tmp3 - array_tmp5 array_tmp4 4 3 2 array_tmp5 : -------------------------------------, 4 array_tmp4 1 array_tmp5 - array_tmp7 array_tmp6 4 3 2 array_tmp7 : -------------------------------------, 4 array_tmp6 1 array_tmp8 : array_tmp7 , if not array_y_set_initial 4 4 1, 5 then (if 4 <= MAX_TERMS then (temporary : array_tmp8 expt(glob_h, 1) factorial_3(3, 4), 4 if 5 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary), 5 1, 5 temporary 4.0 temporary : -------------, array_y_higher : temporary, 0)), kkk : 5, glob_h 2, 4 array_tmp1 : array_m1 array_const_2D0 , 5 5 1 array_tmp1 - array_tmp3 array_tmp2 5 4 2 array_tmp3 : -------------------------------------, 5 array_tmp2 1 array_tmp3 - array_tmp5 array_tmp4 5 4 2 array_tmp5 : -------------------------------------, 5 array_tmp4 1 array_tmp5 - array_tmp7 array_tmp6 5 4 2 array_tmp7 : -------------------------------------, 5 array_tmp6 1 array_tmp8 : array_tmp7 , if not array_y_set_initial 5 5 1, 6 then (if 5 <= MAX_TERMS then (temporary : array_tmp8 expt(glob_h, 1) factorial_3(4, 5), 5 if 6 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary), 6 1, 6 temporary 5.0 temporary : -------------, array_y_higher : temporary, 0)), kkk : 6, glob_h 2, 5 while kkk <= MAX_TERMS do (array_tmp1 : array_m1 array_const_2D0 , kkk kkk 1 - ats(kkk, array_tmp2, array_tmp3, 2) array_tmp3 : -------------------------------------, kkk array_tmp2 1 - ats(kkk, array_tmp4, array_tmp5, 2) array_tmp5 : -------------------------------------, kkk array_tmp4 1 - ats(kkk, array_tmp6, array_tmp7, 2) array_tmp7 : -------------------------------------, kkk array_tmp6 1 array_tmp8 : array_tmp7 , order_d : 1, kkk kkk if order_d + kkk <= MAX_TERMS then (if not array_y_set_initial 1, order_d + kkk then (temporary : array_tmp8 expt(glob_h, order_d) kkk factorial_3(kkk - 1, - 1 + order_d + kkk), array_y : temporary, order_d + kkk array_y_higher : temporary, term : - 1 + order_d + kkk, 1, order_d + kkk adj2 : - 1 + order_d + kkk, adj3 : 2, while (term >= 1) and (term <= MAX_TERMS) and (adj3 < 1 + order_d) do (if adj3 <= 1 + order_d temporary adj2 then (if adj2 > 0 then temporary : -------------- else temporary : temporary, glob_h array_y_higher : temporary), term : term - 1, adj2 : adj2 - 1, adj3, term adj3 : 1 + adj3))), kkk : 1 + kkk)), 0) (%i225) exact_soln_y(x):=block(1.0/(x-6.0)/(x-6.0)) 1.0 ------- x - 6.0 (%o225) exact_soln_y(x) := block(-------) x - 6.0 (%i226) main_prog():=block( mode_declare([[d1,d2,d3,d4,est_err_2],convfloat, [niii,done_once,term,ord,order_diff,term_no, html_log_file,iiif,jjjf,rows,r_order, sub_iter,calc_term,iii],fixnum,[temp_sum], convfloat,[current_iter],fixnum, [x_start,x_end],convfloat,[it,opt_iter], fixnum,[tmp],convfloat,[subiter],fixnum, [est_needed_step_err,estimated_step_error, min_value,est_answer,best_h,found_h], convfloat,[repeat_it],fixnum]),Digits:30, max_terms:20,glob_html_log:true,term:1, while term <= MAX_TERMS do (array_y_init[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_norms[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_fact_1[term]:0.0,term:1+term),term:1, while term <= 2 do (array_1st_rel_error[term]:0.0,term:1+term),term:1, while term <= 2 do (array_last_rel_error[term]:0.0,term:1+term),term:1, while term <= 2 do (array_type_pole[term]:0,term:1+term), term:1, while term <= 2 do (array_type_real_pole[term]:0,term:1+term),term:1, while term <= 2 do (array_type_complex_pole[term]:0,term:1+term),term:1, while term <= MAX_TERMS do (array_y[term]:0.0,term:1+term), term:1, while term <= MAX_TERMS do (array_x[term]:0.0,term:1+term), term:1, while term <= MAX_TERMS do (array_tmp0[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp1[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp2[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp3[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp4[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp5[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp6[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp7[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_tmp8[term]:0.0,term:1+term),term:1, while term <= MAX_TERMS do (array_m1[term]:0.0,term:1+term), ord:1, while ord <= 2 do (term:1, while term <= MAX_TERMS do (array_y_higher[ord,term]:0.0,term:1+term), ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= MAX_TERMS do (array_y_higher_work[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= MAX_TERMS do (array_y_higher_work2[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= MAX_TERMS do (array_y_set_initial[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= 3 do (array_given_rad_poles[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= 3 do (array_given_ord_poles[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= 3 do (array_rad_test_poles[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= 2 do (term:1, while term <= 3 do (array_ord_test_poles[ord,term]:0.0, term:1+term),ord:1+ord),ord:1, while ord <= MAX_TERMS do (term:1, while term <= MAX_TERMS do (array_fact_2[ord,term]:0.0,term:1+term), ord:1+ord),zero_ats_ar(array_y),zero_ats_ar(array_x), zero_ats_ar(array_m1),zero_ats_ar(array_tmp0), zero_ats_ar(array_tmp1),zero_ats_ar(array_tmp2), zero_ats_ar(array_tmp3),zero_ats_ar(array_tmp4), zero_ats_ar(array_tmp5),zero_ats_ar(array_tmp6), zero_ats_ar(array_tmp7),zero_ats_ar(array_tmp8), zero_ats_ar(array_const_1),array_const_1[1]:1, zero_ats_ar(array_const_0D0),array_const_0D0[1]:0.0, zero_ats_ar(array_const_2D0),array_const_2D0[1]:2.0, zero_ats_ar(array_const_6D0),array_const_6D0[1]:6.0, zero_ats_ar(array_m1),array_m1[1]:-1.0,iiif:0, while iiif <= MAX_TERMS do (jjjf:0, while jjjf <= MAX_TERMS do (array_fact_1[iiif]:0, array_fact_2[iiif,jjjf]:0,jjjf:1+jjjf), iiif:1+iiif),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,ALWAYS:1,INFO:2,DEBUGL:3, DEBUGMASSIVE:4,MAX_TERMS:20,glob_iolevel:INFO, glob_orig_start_sec:elapsed_time_seconds(), 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/sing6postode.ode#################"), omniout_str(ALWAYS, "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; "), omniout_str(ALWAYS,"!"), omniout_str(ALWAYS,"/* BEGIN FIRST INPUT BLOCK */"), omniout_str(ALWAYS,"Digits:30,"), omniout_str(ALWAYS,"max_terms:20,"),omniout_str(ALWAYS,"!"), omniout_str(ALWAYS,"/* END FIRST INPUT BLOCK */"), omniout_str(ALWAYS,"/* BEGIN SECOND INPUT BLOCK */"), omniout_str(ALWAYS,"x_start:2.0,"), omniout_str(ALWAYS,"x_end:3.0,"), omniout_str(ALWAYS,"glob_max_h:0.5,"), omniout_str(ALWAYS,""), omniout_str(ALWAYS, "array_y_init[0 + 1] : exact_soln_y(x_start),"), omniout_str(ALWAYS,"glob_look_poles:true,"), omniout_str(ALWAYS,"glob_max_iter:100,"), omniout_str(ALWAYS,""),omniout_str(ALWAYS,""), omniout_str(ALWAYS,""), omniout_str(ALWAYS,"glob_type_given_pole:4,"), omniout_str(ALWAYS,""), omniout_str(ALWAYS,"array_given_rad_poles[1,1]:6.0,"), omniout_str(ALWAYS,""), omniout_str(ALWAYS,"array_given_rad_poles[1,2]:0.0,"), omniout_str(ALWAYS,""), omniout_str(ALWAYS,"array_given_ord_poles[1,1]:3.0,"), omniout_str(ALWAYS,""), omniout_str(ALWAYS,"array_given_ord_poles[1,2]:0.0,"), omniout_str(ALWAYS,"/* END SECOND INPUT BLOCK */"), omniout_str(ALWAYS,"/* BEGIN OVERRIDE BLOCK */"), omniout_str(ALWAYS,"glob_desired_digits_correct:10,"), omniout_str(ALWAYS,"glob_display_interval:0.01,"), omniout_str(ALWAYS,"glob_look_poles:true,"), omniout_str(ALWAYS,"glob_max_iter:1000000000,"), omniout_str(ALWAYS,"glob_max_minutes:10.0,"), omniout_str(ALWAYS,"glob_subiter_method:3,"), omniout_str(ALWAYS,"/* END OVERRIDE BLOCK */"), omniout_str(ALWAYS,"!"), omniout_str(ALWAYS,"/* BEGIN USER DEF BLOCK */"), omniout_str(ALWAYS,"exact_soln_y (x) := (block("), omniout_str(ALWAYS," (1.0/ ( x - 6.0 ) / ( x - 6.0 )) "), omniout_str(ALWAYS,"));"),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.0,glob_smallish_float:0.0, glob_large_float:1.0E+100,glob_larger_float:1.1E+100, glob_almost_1:0.99,x_start:2.0,x_end:3.0,glob_max_h:0.5, array_y_init[1+0]:exact_soln_y(x_start), glob_look_poles:true,glob_max_iter:100, glob_type_given_pole:4,array_given_rad_poles[1,1]:6.0, array_given_rad_poles[1,2]:0.0, array_given_ord_poles[1,1]:3.0, array_given_ord_poles[1,2]:0.0, glob_desired_digits_correct:10,glob_display_interval:0.01, glob_look_poles:true,glob_max_iter:1000000000, glob_max_minutes:10.0,glob_subiter_method:3, glob_last_good_h:glob_h, glob_max_sec:3600.0*glob_max_hours+60.0*glob_max_minutes, omniout_str(ALWAYS,"START of Optimize"), glob_check_sign:my_check_sign(x_start,x_end),found_h:false, glob_h:glob_min_h*glob_check_sign, if abs(glob_max_h) < abs(glob_h) then glob_h:abs(glob_max_h)*glob_check_sign, if abs(glob_display_interval) < abs(glob_h) then glob_h:abs(glob_display_interval), if glob_h > 0.0 then (glob_neg_h:false, glob_display_interval:abs(glob_display_interval)) else (glob_neg_h:true, glob_display_interval :-abs(glob_display_interval)),chk_data(), best_h:glob_h,min_value:glob_larger_float, est_answer:est_size_answer(),opt_iter:1, est_needed_step_err:estimated_needed_step_error( x_start,x_end,glob_h,est_answer), omniout_float(ALWAYS,"est_needed_step_err",32, est_needed_step_err,16,""), estimated_step_error:0.0, while opt_iter <= 100 and not found_h do (omniout_int(ALWAYS,"opt_iter",32,opt_iter,4,""), array_x[1]:x_start,array_x[2]:glob_h, glob_next_display:x_start,order_diff:1,term_no:1, while term_no <= order_diff do (array_y[term_no] :array_y_init[term_no]*expt(glob_h,term_no-1) /factorial_1(term_no-1),term_no:1+term_no), rows:order_diff,r_order:1, while r_order <= rows do (term_no:1, while term_no <= 1-r_order+rows do (it:-1+r_order+term_no, if term_no < MAX_TERMS then array_y_higher[ r_order,term_no] :array_y_init[it] *expt(glob_h,term_no-1) /factorial_1(term_no-1), term_no:1+term_no),r_order:1+r_order), atomall(),estimated_step_error:test_suggested_h(), omniout_float(ALWAYS,"estimated_step_error",32, estimated_step_error,32,""), if estimated_step_error > est_needed_step_err and opt_iter = 1 or glob_check_sign*glob_h >= glob_check_sign*glob_max_h then (found_h:true, glob_h:glob_check_sign*glob_max_h, best_h:glob_h) elseif estimated_step_error > est_needed_step_err and not found_h then (glob_h:glob_h/2.0,best_h:glob_h, found_h:true) else (glob_h:glob_h*2.0,best_h:glob_h), omniout_float(ALWAYS,"best_h",32,best_h,32,""), opt_iter:1+opt_iter), if not found_h and opt_iter = 1 then (omniout_str(ALWAYS,"Beginning glob_h too large."), found_h:false), if opt_iter > 100 then (glob_h:glob_check_sign*glob_max_h,found_h:false), if glob_check_sign*glob_display_interval < glob_check_sign*glob_h then glob_h:glob_check_sign*glob_display_interval, if glob_html_log then html_log_file:openw("entry.html"), if found_h then (omniout_str(ALWAYS,"START of Soultion"), array_x[1]:x_start,array_x[2]:glob_h, glob_next_display:x_start,order_diff:1,term_no:1, while term_no <= order_diff do (array_y[term_no] :array_y_init[term_no] *expt(glob_h,term_no-1) /factorial_1(term_no-1), term_no:1+term_no),rows:order_diff, r_order:1, while r_order <= rows do (term_no:1, while term_no <= 1-r_order+rows do (it:-1+r_order+term_no, if term_no < MAX_TERMS then array_y_higher[ r_order,term_no] :array_y_init[it] *expt(glob_h,term_no-1) /factorial_1(term_no-1), term_no:1+term_no), r_order:1+r_order),current_iter:1, glob_clock_start_sec:elapsed_time_seconds(), glob_clock_sec:elapsed_time_seconds(), glob_current_iter:0,glob_iter:0, omniout_str(DEBUGL," "), glob_reached_optimal_h:true, glob_optimal_clock_start_sec :elapsed_time_seconds(), while glob_current_iter < glob_max_iter and glob_check_sign*array_x[1] < glob_check_sign*x_end and glob_clock_sec-glob_orig_start_sec < glob_max_sec do (if reached_interval() then (omniout_str(INFO," "), omniout_str(INFO, "TOP MAIN SOLVE Loop")), glob_iter:1+glob_iter, glob_clock_sec:elapsed_time_seconds(), glob_current_iter:1+glob_current_iter, atomall(),display_alot(current_iter), if glob_look_poles then check_for_pole(), if reached_interval() then glob_next_display :glob_display_interval +glob_next_display, array_x[1]:glob_h+array_x[1], array_x[2]:glob_h,order_diff:2,ord:2, calc_term:1,iii:MAX_TERMS, while iii >= calc_term do ( array_y_higher_work[2,iii] :array_y_higher[2,iii] /expt(glob_h,calc_term-1) /factorial_3(iii-calc_term,iii-1), iii:iii-1),temp_sum:0.0,ord:2, calc_term:1,iii:MAX_TERMS, while iii >= calc_term do ( temp_sum :array_y_higher_work[ord,iii] +temp_sum,iii:iii-1), array_y_higher_work2[ord,calc_term] :temp_sum*expt(glob_h,calc_term-1) /factorial_1(calc_term-1),ord:1, calc_term:2,iii:MAX_TERMS, while iii >= calc_term do ( array_y_higher_work[1,iii] :array_y_higher[1,iii] /expt(glob_h,calc_term-1) /factorial_3(iii-calc_term,iii-1), iii:iii-1),temp_sum:0.0,ord:1, calc_term:2,iii:MAX_TERMS, while iii >= calc_term do ( temp_sum :array_y_higher_work[ord,iii] +temp_sum,iii:iii-1), array_y_higher_work2[ord,calc_term] :temp_sum*expt(glob_h,calc_term-1) /factorial_1(calc_term-1),ord:1, calc_term:1,iii:MAX_TERMS, while iii >= calc_term do ( array_y_higher_work[1,iii] :array_y_higher[1,iii] /expt(glob_h,calc_term-1) /factorial_3(iii-calc_term,iii-1), iii:iii-1),temp_sum:0.0,ord:1, calc_term:1,iii:MAX_TERMS, while iii >= calc_term do ( temp_sum :array_y_higher_work[ord,iii] +temp_sum,iii:iii-1), array_y_higher_work2[ord,calc_term] :temp_sum*expt(glob_h,calc_term-1) /factorial_1(calc_term-1), term_no:MAX_TERMS, while term_no >= 1 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:1+ord), term_no:term_no-1)), omniout_str(ALWAYS,"Finished!"), if glob_iter >= glob_max_iter then omniout_str(ALWAYS, "Maximum Iterations Reached before Solution Completed!"), if elapsed_time_seconds()-glob_orig_start_sec >= glob_max_sec then omniout_str(ALWAYS, "Maximum Time Reached before Solution Completed!"), glob_clock_sec:elapsed_time_seconds(), omniout_str(INFO, "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; "), 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, "2014-01-09T00:28:25-06:00"), logitem_str(html_log_file,"Maxima"), logitem_str(html_log_file, "sing6"), logitem_str(html_log_file, "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; "), 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_str(html_log_file,"16"), logitem_good_digits(html_log_file, array_last_rel_error[ 1]), logitem_integer(html_log_file, MAX_TERMS), if glob_least_given_sing < glob_large_float then ( logitem_float(html_log_file, glob_least_given_sing), 0) else ( logitem_str(html_log_file, "NOT GIVEN"),0), if glob_least_ratio_sing < glob_large_float then ( logitem_float(html_log_file, glob_least_ratio_sing), 0) else ( logitem_str(html_log_file,"NONE"),0), if glob_least_3_sing < glob_large_float then ( logitem_float(html_log_file, glob_least_3_sing),0) else ( logitem_str(html_log_file,"NONE"), 0), if glob_least_6_sing < glob_large_float then ( logitem_float(html_log_file, glob_least_6_sing),0) else ( logitem_str(html_log_file,"NONE"), 0), logitem_integer(html_log_file, glob_iter), logitem_time(html_log_file, glob_clock_sec), if glob_percent_done < 100.0 then ( logitem_time(html_log_file, glob_total_exp_sec),0) else ( logitem_str(html_log_file,"Done"), 0), log_revs(html_log_file, " 225 "), logitem_str(html_log_file, "sing6 diffeq.max"), logitem_str(html_log_file, "sing6 maxima results"), logitem_str(html_log_file, "All Tests - Maxima only - to save time"), logend(html_log_file)), if glob_html_log then close(html_log_file))) (%o226) main_prog() := block(mode_declare([[d1, d2, d3, d4, est_err_2], convfloat, [niii, done_once, term, ord, order_diff, term_no, html_log_file, iiif, jjjf, rows, r_order, sub_iter, calc_term, iii], fixnum, [temp_sum], convfloat, [current_iter], fixnum, [x_start, x_end], convfloat, [it, opt_iter], fixnum, [tmp], convfloat, [subiter], fixnum, [est_needed_step_err, estimated_step_error, min_value, est_answer, best_h, found_h], convfloat, [repeat_it], fixnum]), Digits : 30, max_terms : 20, glob_html_log : true, term : 1, while term <= MAX_TERMS do (array_y_init : 0.0, term : 1 + term), term : 1, term while term <= MAX_TERMS do (array_norms : 0.0, term : 1 + term), term term : 1, while term <= MAX_TERMS do (array_fact_1 : 0.0, term term : 1 + term), term : 1, while term <= 2 do (array_1st_rel_error : 0.0, term : 1 + term), term : 1, term while term <= 2 do (array_last_rel_error : 0.0, term : 1 + term), term term : 1, while term <= 2 do (array_type_pole : 0, term : 1 + term), term term : 1, while term <= 2 do (array_type_real_pole : 0, term : 1 + term), term term : 1, while term <= 2 do (array_type_complex_pole : 0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_y : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_x : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp0 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp1 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp2 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp3 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp4 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp5 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp6 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp7 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_tmp8 : 0.0, term term : 1 + term), term : 1, while term <= MAX_TERMS do (array_m1 : 0.0, term term : 1 + term), ord : 1, while ord <= 2 do (term : 1, while term <= MAX_TERMS do (array_y_higher : 0.0, term : 1 + term), ord, term ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= MAX_TERMS do (array_y_higher_work : 0.0, ord, term term : 1 + term), ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= MAX_TERMS do (array_y_higher_work2 : 0.0, term : 1 + term), ord, term ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= MAX_TERMS do (array_y_set_initial : 0.0, ord, term term : 1 + term), ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= 3 do (array_given_rad_poles : 0.0, term : 1 + term), ord : 1 + ord), ord, term ord : 1, while ord <= 2 do (term : 1, while term <= 3 do (array_given_ord_poles : 0.0, term : 1 + term), ord, term ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= 3 do (array_rad_test_poles : 0.0, term : 1 + term), ord, term ord : 1 + ord), ord : 1, while ord <= 2 do (term : 1, while term <= 3 do (array_ord_test_poles : 0.0, term : 1 + term), ord, term ord : 1 + ord), ord : 1, while ord <= MAX_TERMS do (term : 1, while term <= MAX_TERMS do (array_fact_2 : 0.0, term : 1 + term), ord, term ord : 1 + ord), zero_ats_ar(array_y), zero_ats_ar(array_x), zero_ats_ar(array_m1), zero_ats_ar(array_tmp0), zero_ats_ar(array_tmp1), zero_ats_ar(array_tmp2), zero_ats_ar(array_tmp3), zero_ats_ar(array_tmp4), zero_ats_ar(array_tmp5), zero_ats_ar(array_tmp6), zero_ats_ar(array_tmp7), zero_ats_ar(array_tmp8), zero_ats_ar(array_const_1), array_const_1 : 1, 1 zero_ats_ar(array_const_0D0), array_const_0D0 : 0.0, 1 zero_ats_ar(array_const_2D0), array_const_2D0 : 2.0, 1 zero_ats_ar(array_const_6D0), array_const_6D0 : 6.0, zero_ats_ar(array_m1), 1 array_m1 : - 1.0, iiif : 0, while iiif <= MAX_TERMS do (jjjf : 0, 1 while jjjf <= MAX_TERMS do (array_fact_1 : 0, array_fact_2 : 0, iiif iiif, jjjf jjjf : 1 + jjjf), iiif : 1 + iiif), array_y_set_initial : true, 1, 1 array_y_set_initial : false, array_y_set_initial : false, 1, 2 1, 3 array_y_set_initial : false, array_y_set_initial : false, 1, 4 1, 5 array_y_set_initial : false, array_y_set_initial : false, 1, 6 1, 7 array_y_set_initial : false, array_y_set_initial : false, 1, 8 1, 9 array_y_set_initial : false, array_y_set_initial : false, 1, 10 1, 11 array_y_set_initial : false, array_y_set_initial : false, 1, 12 1, 13 array_y_set_initial : false, array_y_set_initial : false, 1, 14 1, 15 array_y_set_initial : false, array_y_set_initial : false, 1, 16 1, 17 array_y_set_initial : false, array_y_set_initial : false, 1, 18 1, 19 array_y_set_initial : false, ALWAYS : 1, INFO : 2, DEBUGL : 3, 1, 20 DEBUGMASSIVE : 4, MAX_TERMS : 20, glob_iolevel : INFO, glob_orig_start_sec : elapsed_time_seconds(), 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/sing6postode.ode#################"), omniout_str(ALWAYS, "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6\ .0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; "), omniout_str(ALWAYS, "!"), omniout_str(ALWAYS, "/* BEGIN FIRST INPUT BLOCK */"), omniout_str(ALWAYS, "Digits:30,"), omniout_str(ALWAYS, "max_terms:20,"), omniout_str(ALWAYS, "!"), omniout_str(ALWAYS, "/* END FIRST INPUT BLOCK */"), omniout_str(ALWAYS, "/* BEGIN SECOND INPUT BLOCK */"), omniout_str(ALWAYS, "x_start:2.0,"), omniout_str(ALWAYS, "x_end:3.0,"), omniout_str(ALWAYS, "glob_max_h:0.5,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "array_y_init[0 + 1] : exact_soln_y(x_start),"), omniout_str(ALWAYS, "glob_look_poles:true,"), omniout_str(ALWAYS, "glob_max_iter:100,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "glob_type_given_pole:4,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "array_given_rad_poles[1,1]:6.0,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "array_given_rad_poles[1,2]:0.0,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "array_given_ord_poles[1,1]:3.0,"), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, "array_given_ord_poles[1,2]:0.0,"), omniout_str(ALWAYS, "/* END SECOND INPUT BLOCK */"), omniout_str(ALWAYS, "/* BEGIN OVERRIDE BLOCK */"), omniout_str(ALWAYS, "glob_desired_digits_correct:10,"), omniout_str(ALWAYS, "glob_display_interval:0.01,"), omniout_str(ALWAYS, "glob_look_poles:true,"), omniout_str(ALWAYS, "glob_max_iter:1000000000,"), omniout_str(ALWAYS, "glob_max_minutes:10.0,"), omniout_str(ALWAYS, "glob_subiter_method:3,"), omniout_str(ALWAYS, "/* END OVERRIDE BLOCK */"), omniout_str(ALWAYS, "!"), omniout_str(ALWAYS, "/* BEGIN USER DEF BLOCK */"), omniout_str(ALWAYS, "exact_soln_y (x) := (block("), omniout_str(ALWAYS, " (1.0/ ( x - 6.0 ) / ( x - 6.0 )) "), omniout_str(ALWAYS, "));"), 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.0, glob_smallish_float : 0.0, glob_large_float : 1.0E+100, glob_larger_float : 1.1E+100, glob_almost_1 : 0.99, x_start : 2.0, x_end : 3.0, glob_max_h : 0.5, array_y_init : exact_soln_y(x_start), glob_look_poles : true, 1 + 0 glob_max_iter : 100, glob_type_given_pole : 4, array_given_rad_poles : 6.0, array_given_rad_poles : 0.0, 1, 1 1, 2 array_given_ord_poles : 3.0, array_given_ord_poles : 0.0, 1, 1 1, 2 glob_desired_digits_correct : 10, glob_display_interval : 0.01, glob_look_poles : true, glob_max_iter : 1000000000, glob_max_minutes : 10.0, glob_subiter_method : 3, glob_last_good_h : glob_h, glob_max_sec : 3600.0 glob_max_hours + 60.0 glob_max_minutes, omniout_str(ALWAYS, "START of Optimize"), glob_check_sign : my_check_sign(x_start, x_end), found_h : false, glob_h : glob_min_h glob_check_sign, if mabs(glob_max_h) < mabs(glob_h) then glob_h : mabs(glob_max_h) glob_check_sign, if mabs(glob_display_interval) < mabs(glob_h) then glob_h : mabs(glob_display_interval), if glob_h > 0.0 then (glob_neg_h : false, glob_display_interval : mabs(glob_display_interval)) else (glob_neg_h : true, glob_display_interval : - mabs(glob_display_interval)), chk_data(), best_h : glob_h, min_value : glob_larger_float, est_answer : est_size_answer(), opt_iter : 1, est_needed_step_err : estimated_needed_step_error(x_start, x_end, glob_h, est_answer), omniout_float(ALWAYS, "est_needed_step_err", 32, est_needed_step_err, 16, ""), estimated_step_error : 0.0, while (opt_iter <= 100) and (not found_h) do (omniout_int(ALWAYS, "opt_iter", 32, opt_iter, 4, ""), array_x : x_start, array_x : glob_h, 1 2 glob_next_display : x_start, order_diff : 1, term_no : 1, while term_no <= order_diff do (array_y : term_no array_y_init expt(glob_h, term_no - 1) term_no ---------------------------------------------, term_no : 1 + term_no), factorial_1(term_no - 1) rows : order_diff, r_order : 1, while r_order <= rows do (term_no : 1, while term_no <= 1 - r_order + rows do (it : - 1 + r_order + term_no, if term_no < MAX_TERMS then array_y_higher : r_order, term_no array_y_init expt(glob_h, term_no - 1) it ----------------------------------------, term_no : 1 + term_no), factorial_1(term_no - 1) r_order : 1 + r_order), atomall(), estimated_step_error : test_suggested_h(), omniout_float(ALWAYS, "estimated_step_error", 32, estimated_step_error, 32, ""), if ((estimated_step_error > est_needed_step_err) and (opt_iter = 1)) or (glob_check_sign glob_h >= glob_check_sign glob_max_h) then (found_h : true, glob_h : glob_check_sign glob_max_h, best_h : glob_h) elseif (estimated_step_error > est_needed_step_err) and (not found_h) glob_h then (glob_h : ------, best_h : glob_h, found_h : true) 2.0 else (glob_h : glob_h 2.0, best_h : glob_h), omniout_float(ALWAYS, "best_h", 32, best_h, 32, ""), opt_iter : 1 + opt_iter), if (not found_h) and (opt_iter = 1) then (omniout_str(ALWAYS, "Beginning glob_h too large."), found_h : false), if opt_iter > 100 then (glob_h : glob_check_sign glob_max_h, found_h : false), if glob_check_sign glob_display_interval < glob_check_sign glob_h then glob_h : glob_check_sign glob_display_interval, if glob_html_log then html_log_file : openw("entry.html"), if found_h then (omniout_str(ALWAYS, "START of Soultion"), array_x : x_start, 1 array_x : glob_h, glob_next_display : x_start, order_diff : 1, term_no : 1, 2 while term_no <= order_diff do (array_y : term_no array_y_init expt(glob_h, term_no - 1) term_no ---------------------------------------------, term_no : 1 + term_no), factorial_1(term_no - 1) rows : order_diff, r_order : 1, while r_order <= rows do (term_no : 1, while term_no <= 1 - r_order + rows do (it : - 1 + r_order + term_no, if term_no < MAX_TERMS then array_y_higher : r_order, term_no array_y_init expt(glob_h, term_no - 1) it ----------------------------------------, term_no : 1 + term_no), factorial_1(term_no - 1) r_order : 1 + r_order), current_iter : 1, glob_clock_start_sec : elapsed_time_seconds(), glob_clock_sec : elapsed_time_seconds(), glob_current_iter : 0, glob_iter : 0, omniout_str(DEBUGL, " "), glob_reached_optimal_h : true, glob_optimal_clock_start_sec : elapsed_time_seconds(), while (glob_current_iter < glob_max_iter) and (glob_check_sign array_x < glob_check_sign x_end) 1 and (glob_clock_sec - glob_orig_start_sec < glob_max_sec) do (if reached_interval () then (omniout_str(INFO, " "), omniout_str(INFO, "TOP MAIN SOLVE Loop")), glob_iter : 1 + glob_iter, glob_clock_sec : elapsed_time_seconds(), glob_current_iter : 1 + glob_current_iter, atomall(), display_alot(current_iter), if glob_look_poles then check_for_pole(), if reached_interval() then glob_next_display : glob_display_interval + glob_next_display, array_x : glob_h + array_x , 1 1 array_x : glob_h, order_diff : 2, ord : 2, calc_term : 1, iii : MAX_TERMS, 2 while iii >= calc_term do (array_y_higher_work : 2, iii array_y_higher 2, iii --------------------------- expt(glob_h, calc_term - 1) -------------------------------------, iii : iii - 1), temp_sum : 0.0, factorial_3(iii - calc_term, iii - 1) ord : 2, calc_term : 1, iii : MAX_TERMS, while iii >= calc_term do (temp_sum : array_y_higher_work + temp_sum, ord, iii iii : iii - 1), array_y_higher_work2 : ord, calc_term temp_sum expt(glob_h, calc_term - 1) ------------------------------------, ord : 1, calc_term : 2, iii : MAX_TERMS, factorial_1(calc_term - 1) while iii >= calc_term do (array_y_higher_work : 1, iii array_y_higher 1, iii --------------------------- expt(glob_h, calc_term - 1) -------------------------------------, iii : iii - 1), temp_sum : 0.0, factorial_3(iii - calc_term, iii - 1) ord : 1, calc_term : 2, iii : MAX_TERMS, while iii >= calc_term do (temp_sum : array_y_higher_work + temp_sum, ord, iii iii : iii - 1), array_y_higher_work2 : ord, calc_term temp_sum expt(glob_h, calc_term - 1) ------------------------------------, ord : 1, calc_term : 1, iii : MAX_TERMS, factorial_1(calc_term - 1) while iii >= calc_term do (array_y_higher_work : 1, iii array_y_higher 1, iii --------------------------- expt(glob_h, calc_term - 1) -------------------------------------, iii : iii - 1), temp_sum : 0.0, factorial_3(iii - calc_term, iii - 1) ord : 1, calc_term : 1, iii : MAX_TERMS, while iii >= calc_term do (temp_sum : array_y_higher_work + temp_sum, ord, iii iii : iii - 1), array_y_higher_work2 : ord, calc_term temp_sum expt(glob_h, calc_term - 1) ------------------------------------, term_no : MAX_TERMS, factorial_1(calc_term - 1) while term_no >= 1 do (array_y : array_y_higher_work2 , term_no 1, term_no ord : 1, while ord <= order_diff do (array_y_higher : ord, term_no array_y_higher_work2 , ord : 1 + ord), term_no : term_no - 1)), ord, term_no omniout_str(ALWAYS, "Finished!"), if glob_iter >= glob_max_iter then omniout_str(ALWAYS, "Maximum Iterations Reached before Solution Completed!"), if elapsed_time_seconds() - glob_orig_start_sec >= glob_max_sec then omniout_str(ALWAYS, "Maximum Time Reached before Solution Completed!"), glob_clock_sec : elapsed_time_seconds(), omniout_str(INFO, "diff ( y , x \ , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x \ - 6.0 ) ; "), 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, "2014-01-09T00:28:25-06:00"), logitem_str(html_log_file, "Maxima"), logitem_str(html_log_file, "sing6"), logitem_str(html_log_file, "diff ( y \ , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / \ ( x - 6.0 ) ; "), 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_str(html_log_file, "16"), logitem_good_digits(html_log_file, array_last_rel_error ), 1 logitem_integer(html_log_file, MAX_TERMS), if glob_least_given_sing < glob_large_float then (logitem_float(html_log_file, glob_least_given_sing), 0) else (logitem_str(html_log_file, "NOT GIVEN"), 0), if glob_least_ratio_sing < glob_large_float then (logitem_float(html_log_file, glob_least_ratio_sing), 0) else (logitem_str(html_log_file, "NONE"), 0), if glob_least_3_sing < glob_large_float then (logitem_float(html_log_file, glob_least_3_sing), 0) else (logitem_str(html_log_file, "NONE"), 0), if glob_least_6_sing < glob_large_float then (logitem_float(html_log_file, glob_least_6_sing), 0) else (logitem_str(html_log_file, "NONE"), 0), logitem_integer(html_log_file, glob_iter), logitem_time(html_log_file, glob_clock_sec), if glob_percent_done < 100.0 then (logitem_time(html_log_file, glob_total_exp_sec), 0) else (logitem_str(html_log_file, "Done"), 0), log_revs(html_log_file, " 225 "), logitem_str(html_log_file, "sing6 diffeq.max"), logitem_str(html_log_file, "sing6 maxima results"), logitem_str(html_log_file, "All Tests - Maxima only - to save time"), logend(html_log_file)), if glob_html_log then close(html_log_file))) (%i227) main():=(alias(convfloat,convfloat),compile(all),main_prog()) (%o227) main() := (alias(convfloat, convfloat), compile(all), main_prog()) (%i228) main() warning: encountered undefined variable glob_iolevel in translation. warning: encountered undefined variable glob_iolevel in translation. warning: encountered undefined variable glob_iolevel in translation. warning: encountered undefined variable glob_iolevel in translation. warning: encountered undefined variable glob_iolevel in translation. warning: encountered undefined variable glob_iolevel in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable secs in translation. warning: encountered undefined variable glob_sec_in_year in translation. warning: encountered undefined variable sec_temp in translation. warning: encountered undefined variable glob_sec_in_day in translation. warning: encountered undefined variable glob_sec_in_hour in translation. warning: encountered undefined variable glob_sec_in_minute in translation. warning: encountered undefined variable years_int in translation. warning: encountered undefined variable days_int in translation. warning: encountered undefined variable hours_int in translation. warning: encountered undefined variable minutes_int in translation. warning: encountered undefined variable sec_int in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable glob_sec_in_year in translation. warning: encountered undefined variable glob_sec_in_day in translation. warning: encountered undefined variable glob_sec_in_hour in translation. warning: encountered undefined variable glob_sec_in_minute in translation. warning: encountered undefined variable iii in translation. warning: encountered undefined variable fixnum in translation. warning: encountered undefined variable MAX_TERMS in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable iii_ats in translation. warning: encountered undefined variable ma_ats in translation. warning: encountered undefined variable ret_ats in translation. warning: encountered undefined variable lll_ats in translation. warning: encountered undefined variable MAX_TERMS in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable iii_att in translation. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable ma_att in translation. warning: encountered undefined variable lll_att in translation. warning: encountered undefined variable ret_att in translation. warning: encountered undefined variable al_att in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable good_digits in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable glob_max_iter in translation. warning: encountered undefined variable errflag in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable sub1 in translation. warning: encountered undefined variable sub2 in translation. warning: encountered undefined variable rrr in translation. warning: encountered undefined variable ms2 in translation. warning: encountered undefined variable sec_left in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable glob_small_float in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable ret in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable temp in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable rm0 in translation. warning: encountered undefined variable rm1 in translation. warning: encountered undefined variable rm2 in translation. warning: encountered undefined variable rm3 in translation. warning: encountered undefined variable rm4 in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable nr1 in translation. warning: encountered undefined variable dr2 in translation. warning: encountered undefined variable nr2 in translation. warning: encountered undefined variable dr1 in translation. warning: encountered undefined variable ds1 in translation. warning: encountered undefined variable ds2 in translation. warning: encountered undefined variable rcs in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable ord_no in translation. warning: variable glob_six_term_ord_save (declared type convfloat) assigned type any. warning: encountered undefined variable rad_c in translation. warning: encountered undefined variable glob_six_term_ord_save in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable array_fact_1 in translation. warning: encountered undefined variable MAX_TERMS in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable array_fact_2 in translation. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable glob_log_10 in translation. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable glob_desired_digits_correct in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable array_x in translation. warning: encountered undefined variable array_given_rad_poles in translation. warning: encountered undefined variable rad_given in translation. warning: variable glob_least_given_sing (declared type convfloat) assigned type any. warning: encountered undefined variable glob_least_given_sing in translation. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable array_given_ord_poles in translation. warning: encountered undefined variable glob_type_given_pole in translation. warning: encountered undefined variable array_rad_test_poles in translation. warning: variable glob_least_ratio_sing (declared type convfloat) assigned type any. warning: encountered undefined variable glob_least_ratio_sing in translation. warning: encountered undefined variable array_ord_test_poles in translation. warning: encountered undefined variable glob_large_float in translation. warning: variable glob_least_3_sing (declared type convfloat) assigned type any. warning: encountered undefined variable glob_least_3_sing in translation. warning: variable glob_least_6_sing (declared type convfloat) assigned type any. warning: encountered undefined variable glob_least_6_sing in translation. warning: encountered undefined variable glob_estimated_size_answer in translation. warning: encountered undefined variable array_y in translation. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable ALWAYS in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable glob_check_sign in translation. warning: encountered undefined variable glob_next_display in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable ind_var in translation. warning: encountered undefined variable analytic_val_y in translation. warning: encountered undefined variable term_no in translation. warning: encountered undefined variable numeric_val in translation. warning: encountered undefined variable abserr in translation. warning: encountered undefined variable relerr in translation. warning: variable glob_good_digits (declared type fixnum) assigned type any. warning: encountered undefined variable array_1st_rel_error in translation. warning: encountered undefined variable glob_iter in translation. warning: encountered undefined variable array_last_rel_error in translation. warning: encountered undefined variable INFO in translation. warning: encountered undefined variable glob_good_digits in translation. warning: encountered undefined variable glob_h in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable glob_small_float in translation. warning: encountered undefined variable array_y_higher in translation. warning: encountered undefined variable tmp in translation. warning: variable glob_normmax (declared type convfloat) assigned type any. warning: encountered undefined variable glob_normmax in translation. warning: encountered undefined variable glob_min_pole_est in translation. warning: encountered undefined variable INFO in translation. warning: encountered undefined variable hnew in translation. warning: encountered undefined variable sz2 in translation. warning: encountered undefined variable glob_look_poles in translation. warning: encountered undefined variable glob_large_float in translation. warning: encountered undefined variable glob_current_iter in translation. warning: variable glob_optimal_clock_start_sec (declared type convfloat) assigned type any. warning: variable glob_optimal_start (declared type convfloat) assigned type any. warning: encountered undefined variable glob_reached_optimal_h in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable clock_sec1 in translation. warning: encountered undefined variable glob_orig_start_sec in translation. warning: encountered undefined variable glob_clock_start_sec in translation. warning: variable glob_clock_sec (declared type convfloat) assigned type any. warning: encountered undefined variable glob_max_sec in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable glob_optimal_clock_start_sec in translation. warning: encountered undefined variable opt_clock_sec in translation. warning: variable glob_optimal_expect_sec (declared type convfloat) assigned type any. warning: encountered undefined variable glob_optimal_expect_sec in translation. warning: encountered undefined variable total_clock_sec in translation. warning: variable glob_total_exp_sec (declared type convfloat) assigned type any. warning: encountered undefined variable percent_done in translation. warning: variable glob_percent_done (declared type convfloat) assigned type any. warning: encountered undefined variable INFO in translation. warning: encountered undefined variable glob_clock_sec in translation. warning: encountered undefined variable expect_sec in translation. warning: encountered undefined variable glob_total_exp_sec in translation. warning: encountered undefined variable left_sec in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable last_no in translation. warning: encountered undefined variable found_sing in translation. warning: variable tmp_rad (declared type convfloat) assigned type any. warning: encountered undefined variable tmp_rad in translation. warning: encountered undefined variable prev_tmp_rad in translation. warning: encountered undefined variable cnt in translation. warning: encountered undefined variable tmp_ratio in translation. warning: encountered undefined variable glob_upper_ratio_limit in translation. warning: encountered undefined variable glob_lower_ratio_limit in translation. warning: variable tmp_ord (declared type convfloat) assigned type any. warning: encountered undefined variable tmp_ord in translation. warning: encountered undefined variable glob_min_pole_est in translation. warning: encountered undefined variable glob_check_sign in translation. warning: encountered undefined variable glob_ratio_of_radius in translation. warning: encountered undefined variable term in translation. warning: encountered undefined variable ratio in translation. warning: encountered undefined variable h_new in translation. warning: encountered undefined variable glob_h in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable array_m1 in translation. warning: encountered undefined variable array_const_2D0 in translation. warning: encountered undefined variable array_tmp1 in translation. warning: encountered undefined variable array_const_6D0 in translation. warning: encountered undefined variable array_tmp2 in translation. warning: encountered undefined variable array_tmp3 in translation. warning: encountered undefined variable array_tmp4 in translation. warning: encountered undefined variable array_tmp5 in translation. warning: encountered undefined variable array_tmp6 in translation. warning: encountered undefined variable array_tmp7 in translation. warning: encountered undefined variable array_const_0D0 in translation. warning: encountered undefined variable array_tmp8 in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable temporary in translation. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable array_y_set_initial in translation. warning: encountered undefined variable kkk in translation. warning: encountered undefined variable order_d in translation. warning: encountered undefined variable adj3 in translation. warning: encountered undefined variable adj2 in translation. modedeclare: false is not a built-in type; assuming it is a Maxima extension type. warning: encountered undefined variable MAX_TERMS in translation. warning: encountered undefined variable array_y_init in translation. warning: encountered undefined variable array_norms in translation. warning: encountered undefined variable array_type_pole in translation. warning: encountered undefined variable array_type_real_pole in translation. warning: encountered undefined variable array_type_complex_pole in translation. warning: encountered undefined variable array_tmp0 in translation. warning: encountered undefined variable ord in translation. warning: encountered undefined variable array_y_higher_work in translation. warning: encountered undefined variable array_y_higher_work2 in translation. warning: encountered undefined variable array_const_1 in translation. warning: encountered undefined variable iiif in translation. warning: encountered undefined variable jjjf in translation. warning: encountered undefined variable INFO in translation. warning: variable glob_orig_start_sec (declared type convfloat) assigned type any. warning: encountered undefined variable ALWAYS in translation. warning: encountered undefined variable x_start in translation. warning: encountered undefined variable glob_h in translation. warning: encountered undefined variable glob_max_minutes in translation. warning: encountered undefined variable glob_max_hours in translation. warning: encountered undefined variable x_end in translation. warning: variable glob_check_sign (declared type convfloat) assigned type any. warning: encountered undefined variable glob_min_h in translation. warning: encountered undefined variable glob_check_sign in translation. warning: encountered undefined variable glob_max_h in translation. warning: encountered undefined variable glob_display_interval in translation. warning: encountered undefined variable glob_larger_float in translation. warning: encountered undefined variable est_answer in translation. warning: encountered undefined variable est_needed_step_err in translation. warning: encountered undefined variable opt_iter in translation. warning: encountered undefined variable found_h in translation. warning: variable glob_next_display (declared type convfloat) assigned type any. warning: encountered undefined variable order_diff in translation. warning: encountered undefined variable r_order in translation. warning: encountered undefined variable rows in translation. warning: encountered undefined variable it in translation. warning: encountered undefined variable estimated_step_error in translation. warning: encountered undefined variable best_h in translation. warning: encountered undefined variable glob_html_log in translation. warning: variable glob_clock_start_sec (declared type convfloat) assigned type any. warning: variable glob_clock_sec (declared type convfloat) assigned type any. warning: encountered undefined variable DEBUGL in translation. warning: variable glob_optimal_clock_start_sec (declared type convfloat) assigned type any. warning: encountered undefined variable glob_current_iter in translation. warning: encountered undefined variable glob_max_iter in translation. warning: encountered undefined variable glob_clock_sec in translation. warning: encountered undefined variable glob_orig_start_sec in translation. warning: encountered undefined variable glob_max_sec in translation. warning: encountered undefined variable glob_iter in translation. warning: encountered undefined variable current_iter in translation. warning: encountered undefined variable glob_look_poles in translation. warning: encountered undefined variable glob_next_display in translation. warning: encountered undefined variable calc_term in translation. warning: encountered undefined variable temp_sum in translation. warning: encountered undefined variable html_log_file in translation. warning: encountered undefined variable glob_least_given_sing in translation. warning: encountered undefined variable glob_large_float in translation. warning: encountered undefined variable glob_least_ratio_sing in translation. warning: encountered undefined variable glob_least_3_sing in translation. warning: encountered undefined variable glob_least_6_sing in translation. warning: encountered undefined variable glob_total_exp_sec in translation. warning: encountered undefined variable glob_percent_done in translation. WARNING: in $ADJUST_FOR_POLE : $GLOB_CURR_ITER_WHEN_OPT is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $ADJUST_FOR_POLE : $GLOB_OPTIMAL_START is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : |$Digits| is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $MAX_TERMS is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : |$debugmassive| is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_CURR_ITER_WHEN_OPT is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_DISPLAY_FLAG is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_NO_EQS is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_UNCHANGED_H_CNT is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_WARNED is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_WARNED2 is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_SMALLISH_FLOAT is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_ALMOST_1 is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_SUBITER_METHOD is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_LAST_GOOD_H is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_NEG_H is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $GLOB_NEG_H is neither declared nor bound, it will be treated as if it were declared SPECIAL. WARNING: in $MAIN_PROG : $MIN_VALUE is neither declared nor bound, it will be treated as if it were declared SPECIAL. Warning: modedcclare has a function or macro call which has not been translated properly. The function was totaly undefined. Maybe you want to quote it."##############ECHO OF PROBLEM#################" "##############temp/sing6postode.ode#################" "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; " "!" "/* BEGIN FIRST INPUT BLOCK */" "Digits:30," "max_terms:20," "!" "/* END FIRST INPUT BLOCK */" "/* BEGIN SECOND INPUT BLOCK */" "x_start:2.0," "x_end:3.0," "glob_max_h:0.5," "" "array_y_init[0 + 1] : exact_soln_y(x_start)," "glob_look_poles:true," "glob_max_iter:100," "" "" "" "glob_type_given_pole:4," "" "array_given_rad_poles[1,1]:6.0," "" "array_given_rad_poles[1,2]:0.0," "" "array_given_ord_poles[1,1]:3.0," "" "array_given_ord_poles[1,2]:0.0," "/* END SECOND INPUT BLOCK */" "/* BEGIN OVERRIDE BLOCK */" "glob_desired_digits_correct:10," "glob_display_interval:0.01," "glob_look_poles:true," "glob_max_iter:1000000000," "glob_max_minutes:10.0," "glob_subiter_method:3," "/* END OVERRIDE BLOCK */" "!" "/* BEGIN USER DEF BLOCK */" "exact_soln_y (x) := (block(" " (1.0/ ( x - 6.0 ) / ( x - 6.0 )) " "));" "" "" "/* END USER DEF BLOCK */" "#######END OF ECHO OF PROBLEM#################" "START of Optimize" min_size = 0.0 "" min_size = 1. "" glob_desired_digits_correct = 10. "" estimated_h = 1.000000E-6 "" estimated_answer = 1. "" desired_abs_gbl_error = 1.0000000000E-10 "" range = 1. "" estimated_steps = 1000000. "" step_error = 1.0000000000000000E-16 "" est_needed_step_err = 1.0000000000000000E-16 "" opt_iter = 1 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 2.72848442631695100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-107 "" estimated_step_error = 2.72848442631695100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-107 "" best_h = 2.000000E-6 "" opt_iter = 2 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.7881397640004856000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-102 "" estimated_step_error = 1.7881397640004856000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-102 "" best_h = 4.000000E-6 "" opt_iter = 3 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.17187555147084760000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-97 "" estimated_step_error = 1.17187555147084760000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-97 "" best_h = 8.000000E-6 "" opt_iter = 4 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 7.680007228242115000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-93 "" estimated_step_error = 7.680007228242115000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-93 "" best_h = 1.600000E-5 "" opt_iter = 5 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 5.0331742742104560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-88 "" estimated_step_error = 5.0331742742104560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-88 "" best_h = 3.200000E-5 "" opt_iter = 6 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 3.298547301388588500000000000000000000000000000000000000000000000000000000000000000000000000000000000E-83 "" estimated_step_error = 3.298547301388588500000000000000000000000000000000000000000000000000000000000000000000000000000000000E-83 "" best_h = 6.400000E-5 "" opt_iter = 7 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 2.161744097799703800000000000000000000000000000000000000000000000000000000000000000000000000000E-78 "" estimated_step_error = 2.161744097799703800000000000000000000000000000000000000000000000000000000000000000000000000000E-78 "" best_h = 1.280000E-4 "" opt_iter = 8 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.41673127916832950000000000000000000000000000000000000000000000000000000000000000000000000E-73 "" estimated_step_error = 1.41673127916832950000000000000000000000000000000000000000000000000000000000000000000000000E-73 "" best_h = 2.560000E-4 "" opt_iter = 9 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 9.284829931900478000000000000000000000000000000000000000000000000000000000000000000000E-69 "" estimated_step_error = 9.284829931900478000000000000000000000000000000000000000000000000000000000000000000000E-69 "" best_h = 5.120000E-4 "" opt_iter = 10 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 6.0850894183230060000000000000000000000000000000000000000000000000000000000000000E-64 "" estimated_step_error = 6.0850894183230060000000000000000000000000000000000000000000000000000000000000000E-64 "" best_h = 1.024000E-3 "" opt_iter = 11 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 3.98816444407229600000000000000000000000000000000000000000000000000000000000E-59 "" estimated_step_error = 3.98816444407229600000000000000000000000000000000000000000000000000000000000E-59 "" best_h = 2.048000E-3 "" opt_iter = 12 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 2.6139983983292040000000000000000000000000000000000000000000000000000000E-54 "" estimated_step_error = 2.6139983983292040000000000000000000000000000000000000000000000000000000E-54 "" best_h = 4.096000E-3 "" opt_iter = 13 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.71352294909977860000000000000000000000000000000000000000000000000E-49 "" estimated_step_error = 1.71352294909977860000000000000000000000000000000000000000000000000E-49 "" best_h = 8.192000E-3 "" opt_iter = 14 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.123516066226921500000000000000000000000000000000000000000000E-44 "" estimated_step_error = 1.123516066226921500000000000000000000000000000000000000000000E-44 "" best_h = 1.638400E-2 "" opt_iter = 15 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 7.370184939539041000000000000000000000000000000000000000E-40 "" estimated_step_error = 7.370184939539041000000000000000000000000000000000000000E-40 "" best_h = 3.276800E-2 "" opt_iter = 16 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 4.83947082700308900000000000000000000000000000000000E-35 "" estimated_step_error = 4.83947082700308900000000000000000000000000000000000E-35 "" best_h = 6.553600E-2 "" opt_iter = 17 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 3.183917781133918000000000000000000000000000000E-30 "" estimated_step_error = 3.183917781133918000000000000000000000000000000E-30 "" best_h = 0.131072 "" opt_iter = 18 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 2.1029535844967660000000000000000000000000E-25 "" estimated_step_error = 2.1029535844967660000000000000000000000000E-25 "" best_h = 0.262144 "" opt_iter = 19 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 1.400122486312282400000000000000000000E-20 "" estimated_step_error = 1.400122486312282400000000000000000000E-20 "" best_h = 0.524288 "" opt_iter = 20 hn_div_ho = 0.5 "" hn_div_ho_2 = 0.25 "" hn_div_ho_3 = 0.125 "" max_estimated_step_error = 9.4774092104267650000000000000000E-16 "" estimated_step_error = 9.4774092104267650000000000000000E-16 "" best_h = 0.5 "" "START of Soultion" " " "TOP MAIN SOLVE Loop" x[1] = 2. " " y[1] (analytic) = 6.2500E-2 " " y[1] (numeric) = 6.2500E-2 " " absolute error = 0.0 " " relative error = 0.0 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 4. " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 4.000000000000017 " " Order of pole (three term test) = 6.58359363706014900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.01 " " y[1] (analytic) = 6.28136757934937500E-2 " " y[1] (numeric) = 6.28136757934937300E-2 " " absolute error = 2.775557561562891400000000000000000E-17 " " relative error = 4.41871539358373900000000000000E-14 "%" Correct digits = 17 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.99 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9900000000000206 " " Order of pole (three term test) = 6.107312569873500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.0199999999999996 " " y[1] (analytic) = 6.31297189464912300E-2 " " y[1] (numeric) = 6.31297189464912000E-2 " " absolute error = 4.16333634234433700000000000000000E-17 " " relative error = 6.59489129972712600000000000000E-14 "%" Correct digits = 17 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.9800000000000004 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9800000000000066 " " Order of pole (three term test) = 2.832209945658366000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.0299999999999994 " " y[1] (analytic) = 6.34481533414969600E-2 " " y[1] (numeric) = 6.34481533414969000E-2 " " absolute error = 5.55111512312578300000000000000000E-17 " " relative error = 8.7490570344073190000000000000E-14 "%" Correct digits = 17 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.9700000000000006 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9700000000000073 " " Order of pole (three term test) = 2.626325099593789000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.039999999999999 " " y[1] (analytic) = 6.37690031629425400E-2 " " y[1] (numeric) = 6.37690031629424400E-2 " " absolute error = 9.7144514654701200000000000000000E-17 " " relative error = 1.52338142100916260000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.960000000000001 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.96 " " Order of pole (three term test) = 2.434943335785049500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.049999999999999 " " y[1] (analytic) = 6.40922929017785100E-2 " " y[1] (numeric) = 6.40922929017784100E-2 " " absolute error = 9.7144514654701200000000000000000E-17 " " relative error = 1.51569728989997680000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.950000000000001 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9500000000000144 " " Order of pole (three term test) = 9.02830331973947800000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.0599999999999987 " " y[1] (analytic) = 6.44180473601483900E-2 " " y[1] (numeric) = 6.44180473601482300E-2 " " absolute error = 1.52655665885959020000000000000000E-16 " " relative error = 2.36976549494727430000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.9400000000000013 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9400000000000057 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.0699999999999985 " " y[1] (analytic) = 6.47462916561453300E-2 " " y[1] (numeric) = 6.47462916561451800E-2 " " absolute error = 1.52655665885959020000000000000000E-16 " " relative error = 2.3577514940420510000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.9300000000000015 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9300000000000264 " " Order of pole (three term test) = 7.7529999989569500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.0799999999999983 " " y[1] (analytic) = 6.50770512286546800E-2 " " y[1] (numeric) = 6.50770512286544800E-2 " " absolute error = 1.9428902930940240000000000000000E-16 " " relative error = 2.98552293998000300000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.9200000000000017 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9200000000000323 " " Order of pole (three term test) = 1.07737412826070700000000000000E-13 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.089999999999998 " " y[1] (analytic) = 6.54103518422824900E-2 " " y[1] (numeric) = 6.54103518422822800E-2 " " absolute error = 2.08166817117216850000000000000000E-16 " " relative error = 3.18247511676972700000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.910000000000002 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.9100000000000104 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.099999999999998 " " y[1] (analytic) = 6.57462195923733700E-2 " " y[1] (numeric) = 6.57462195923731200E-2 " " absolute error = 2.4980018054066022000000000000000E-16 " " relative error = 3.7994607460234460000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.900000000000002 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.900000000000004 " " Order of pole (three term test) = 6.16072017806450700000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1099999999999977 " " y[1] (analytic) = 6.60846809101181200E-2 " " y[1] (numeric) = 6.60846809101178700E-2 " " absolute error = 2.6367796834847470000000000000000E-16 " " relative error = 3.99000138484595900000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8900000000000023 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8900000000000183 " " Order of pole (three term test) = 2.852011791520977500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1199999999999974 " " y[1] (analytic) = 6.64257625677541800E-2 " " y[1] (numeric) = 6.64257625677538800E-2 " " absolute error = 3.05311331771918050000000000000000E-16 " " relative error = 4.596278913027170300000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8800000000000026 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.880000000000027 " " Order of pole (three term test) = 7.92020275463082600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1299999999999972 " " y[1] (analytic) = 6.67694916838597200E-2 " " y[1] (numeric) = 6.67694916838593600E-2 " " absolute error = 3.6082248300317590000000000000000E-16 " " relative error = 5.4040022456902730000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8700000000000028 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.870000000000019 " " Order of pole (three term test) = 4.88677364736747400000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.139999999999997 " " y[1] (analytic) = 6.7115895728744300E-2 " " y[1] (numeric) = 6.71158957287439000E-2 " " absolute error = 3.8857805861880480000000000000000E-16 " " relative error = 5.7896576421967530000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.860000000000003 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8600000000000065 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.149999999999997 " " y[1] (analytic) = 6.74650025299374900E-2 " " y[1] (numeric) = 6.74650025299370600E-2 " " absolute error = 4.30211422042248160000000000000000E-16 " " relative error = 6.3768088032212330000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.850000000000003 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8500000000000103 " " Order of pole (three term test) = 4.1832628897234897000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1599999999999966 " " y[1] (analytic) = 6.78168402777776700E-2 " " y[1] (numeric) = 6.78168402777772100E-2 " " absolute error = 4.5796699765787710000000000000000E-16 " " relative error = 6.7529981606640030000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8400000000000034 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.840000000000009 " " Order of pole (three term test) = 3.86927862035041540000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1699999999999964 " " y[1] (analytic) = 6.8171437531103100E-2 " " y[1] (numeric) = 6.81714375311026100E-2 " " absolute error = 4.857225732735060000000000000000E-16 " " relative error = 7.1250158550917450000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8300000000000036 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8300000000000094 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.179999999999996 " " y[1] (analytic) = 6.85288232230474700E-2 " " y[1] (numeric) = 6.85288232230469600E-2 " " absolute error = 5.1347814888913490000000000000000E-16 " " relative error = 7.4928785398498280000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.820000000000004 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8200000000000105 " " Order of pole (three term test) = 3.308218302322199500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.189999999999996 " " y[1] (analytic) = 6.88890266669420800E-2 " " y[1] (numeric) = 6.88890266669415200E-2 " " absolute error = 5.5511151231257830000000000000000E-16 " " relative error = 8.0580542238806340000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.810000000000004 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.810000000000018 " " Order of pole (three term test) = 3.05803564217206200000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.1999999999999957 " " y[1] (analytic) = 6.92520775623267200E-2 " " y[1] (numeric) = 6.92520775623261200E-2 " " absolute error = 5.9674487573602160000000000000000E-16 " " relative error = 8.6169960056281710000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.8000000000000043 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.8000000000000242 " " Order of pole (three term test) = 2.82618880112245600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2099999999999955 " " y[1] (analytic) = 6.96180060010719400E-2 " " y[1] (numeric) = 6.96180060010713200E-2 " " absolute error = 6.2450045135165060000000000000000E-16 " " relative error = 8.9703869332602670000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7900000000000045 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.7900000000000045 " " Order of pole (three term test) = 2.61137698193039900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2199999999999953 " " y[1] (analytic) = 6.99868424736147700E-2 " " y[1] (numeric) = 6.99868424736141100E-2 " " absolute error = 6.6613381477509390000000000000000E-16 " " relative error = 9.5179863990324780000000000000E-13 "%" Correct digits = 16 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7800000000000047 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.780000000000015 " " Order of pole (three term test) = 4.8247772029578495000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.229999999999995 " " y[1] (analytic) = 7.03586178753102700E-2 " " y[1] (numeric) = 7.03586178753095600E-2 " " absolute error = 7.0776717819853730000000000000000E-16 " " relative error = 1.0059424127018018000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.770000000000005 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.7700000000000236 " " Order of pole (three term test) = 8.91238153444943700000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.239999999999995 " " y[1] (analytic) = 7.07333635129015900E-2 " " y[1] (numeric) = 7.07333635129008200E-2 " " absolute error = 7.7715611723760960000000000000000E-16 " " relative error = 1.0987122323058456000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.760000000000005 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.760000000000021 " " Order of pole (three term test) = 4.114893658055481000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2499999999999947 " " y[1] (analytic) = 7.1111111111110900E-2 " " y[1] (numeric) = 7.11111111111101100E-2 " " absolute error = 7.910339050454240000000000000000E-16 " " relative error = 1.1123914289701307000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7500000000000053 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.750000000000005 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2599999999999945 " " y[1] (analytic) = 7.14918928193540900E-2 " " y[1] (numeric) = 7.14918928193532400E-2 " " absolute error = 8.4654505627668190000000000000000E-16 " " relative error = 1.184113362917575000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7400000000000055 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.7400000000000073 " " Order of pole (three term test) = 3.506479743097596400000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2699999999999942 " " y[1] (analytic) = 7.18757412185810900E-2 " " y[1] (numeric) = 7.18757412185802100E-2 " " absolute error = 8.7430063189231080000000000000000E-16 " " relative error = 1.2164057261454568000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7300000000000058 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.730000000000017 " " Order of pole (three term test) = 3.23584881664946300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.279999999999994 " " y[1] (analytic) = 7.22626893282458200E-2 " " y[1] (numeric) = 7.22626893282448800E-2 " " absolute error = 9.436895709313831000000000000000E-16 " " relative error = 1.305915375837689000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.720000000000006 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.720000000000027 " " Order of pole (three term test) = 5.97092285979933200000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.289999999999994 " " y[1] (analytic) = 7.2652770613407090E-2 " " y[1] (numeric) = 7.26527706134061300E-2 " " absolute error = 9.714451465470120000000000000000E-16 " " relative error = 1.3371068141587775000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.710000000000006 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.7100000000000217 " " Order of pole (three term test) = 5.50770349857640700000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.2999999999999936 " " y[1] (analytic) = 7.30460189919646800E-2 " " y[1] (numeric) = 7.30460189919636600E-2 " " absolute error = 1.0269562977782698000000000000000E-15 " " relative error = 1.4059031716584560000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.7000000000000064 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.700000000000007 " " Order of pole (three term test) = 2.53965655858429500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3099999999999934 " " y[1] (analytic) = 7.34424688420323400E-2 " " y[1] (numeric) = 7.34424688420312500E-2 " " absolute error = 1.096345236817342100000000000000E-15 " " relative error = 1.4927946379028662000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6900000000000066 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6900000000000244 " " Order of pole (three term test) = 7.02482496902657600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.319999999999993 " " y[1] (analytic) = 7.38421550094515200E-2 " " y[1] (numeric) = 7.38421550094503900E-2 " " absolute error = 1.124100812432971000000000000000E-15 " " relative error = 1.5223022842292325000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.680000000000007 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.680000000000011 " " Order of pole (three term test) = 4.31705741060615900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.329999999999993 " " y[1] (analytic) = 7.42451128154486400E-2 " " y[1] (numeric) = 7.42451128154474600E-2 " " absolute error = 1.1796119636642288000000000000000E-15 " " relative error = 1.5888075577397193000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.670000000000007 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6700000000000252 " " Order of pole (three term test) = 3.978645010795974000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3399999999999928 " " y[1] (analytic) = 7.46513780644387800E-2 " " y[1] (numeric) = 7.46513780644375500E-2 " " absolute error = 1.2351231148954867000000000000000E-15 " " relative error = 1.6545215197894045000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6600000000000072 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6600000000000206 " " Order of pole (three term test) = 7.33188798818954400000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3499999999999925 " " y[1] (analytic) = 7.50609870519794100E-2 " " y[1] (numeric) = 7.50609870519781500E-2 " " absolute error = 1.27675647831893000000000000000E-15 " " relative error = 1.7009588182404017000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6500000000000075 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6500000000000075 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3599999999999923 " " y[1] (analytic) = 7.54739765728773500E-2 " " y[1] (numeric) = 7.54739765728760100E-2 " " absolute error = 1.3461454173580023000000000000000E-15 " " relative error = 1.7835888321826662000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6400000000000077 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.640000000000022 " " Order of pole (three term test) = 3.110246237950075600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.369999999999992 " " y[1] (analytic) = 7.58903839294519700E-2 " " y[1] (numeric) = 7.58903839294505700E-2 " " absolute error = 1.4016565685892600000000000000000E-15 " " relative error = 1.8469488438643902000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.630000000000008 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6300000000000185 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.379999999999992 " " y[1] (analytic) = 7.63102469399587800E-2 " " y[1] (numeric) = 7.63102469399572900E-2 " " absolute error = 1.4849232954361470000000000000000E-15 " " relative error = 1.9459028832713526000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.620000000000008 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.620000000000011 " " Order of pole (three term test) = 2.636394396920637000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3899999999999917 " " y[1] (analytic) = 7.67336039471762200E-2 " " y[1] (numeric) = 7.67336039471747100E-2 " " absolute error = 1.5126788710517758000000000000000E-15 " " relative error = 1.9713382315433942000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6100000000000083 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.610000000000037 " " Order of pole (three term test) = 9.70575473507713300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.3999999999999915 " " y[1] (analytic) = 7.71604938271601300E-2 " " y[1] (numeric) = 7.71604938271585500E-2 " " absolute error = 1.582067810090848000000000000000E-15 " " relative error = 2.0503598818777488000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.6000000000000085 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.6000000000000267 " " Order of pole (three term test) = 4.4653785582134900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4099999999999913 " " y[1] (analytic) = 7.7590955998168500E-2 " " y[1] (numeric) = 7.75909559981668300E-2 " " absolute error = 1.6653345369377348000000000000000E-15 " " relative error = 2.146299804550732000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5900000000000087 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5900000000000225 " " Order of pole (three term test) = 8.21574048765961600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.419999999999991 " " y[1] (analytic) = 7.80250304297614900E-2 " " y[1] (numeric) = 7.80250304297597700E-2 " " absolute error = 1.7208456881689926000000000000000E-15 " " relative error = 2.2055046677849185000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.580000000000009 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.58000000000002 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.429999999999991 " " y[1] (analytic) = 7.84627576520800400E-2 " " y[1] (numeric) = 7.84627576520782600E-2 " " absolute error = 1.7763568394002505000000000000000E-15 " " relative error = 2.263949028247237000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.570000000000009 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5700000000000287 " " Order of pole (three term test) = 3.47399943121803330000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4399999999999906 " " y[1] (analytic) = 7.89041787653069900E-2 " " y[1] (numeric) = 7.89041787653051600E-2 " " absolute error = 1.8318679906315083000000000000000E-15 " " relative error = 2.3216362166067608000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5600000000000094 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.560000000000027 " " Order of pole (three term test) = 3.19361970179516340000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4499999999999904 " " y[1] (analytic) = 7.93493354493151700E-2 " " y[1] (numeric) = 7.93493354493132700E-2 " " absolute error = 1.9012569296705806000000000000000E-15 " " relative error = 2.3960590456173625000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5500000000000096 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.550000000000013 " " Order of pole (three term test) = 2.93517399690801500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.45999999999999 " " y[1] (analytic) = 7.97982699735065400E-2 " " y[1] (numeric) = 7.97982699735045700E-2 " " absolute error = 1.9845236565174673000000000000000E-15 " " relative error = 2.4869256654014427000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.54000000000001 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5400000000000245 " " Order of pole (three term test) = 5.39400216062103500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.46999999999999 " " y[1] (analytic) = 8.02510252068465500E-2 " " y[1] (numeric) = 8.02510252068445200E-2 " " absolute error = 2.0261570199409107000000000000000E-15 " " relative error = 2.524774000978184400000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.53000000000001 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5300000000000105 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4799999999999898 " " y[1] (analytic) = 8.07076446280987200E-2 " " y[1] (numeric) = 8.07076446280965900E-2 " " absolute error = 2.1371793224034263000000000000000E-15 " " relative error = 2.648050667630756000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5200000000000102 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5200000000000196 " " Order of pole (three term test) = 4.5508566920523800000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4899999999999896 " " y[1] (analytic) = 8.11681723362630300E-2 " " y[1] (numeric) = 8.11681723362608200E-2 " " absolute error = 2.2065682614424986000000000000000E-15 " " relative error = 2.718514163779789000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5100000000000104 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5100000000000238 " " Order of pole (three term test) = 4.17856102652272470000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.4999999999999893 " " y[1] (analytic) = 8.16326530612240100E-2 " " y[1] (numeric) = 8.16326530612217200E-2 " " absolute error = 2.2898349882893854000000000000000E-15 " " relative error = 2.8050478606545130000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.5000000000000107 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.5000000000000275 " " Order of pole (three term test) = 3.835787908616537500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.509999999999989 " " y[1] (analytic) = 8.21011321746121700E-2 " " y[1] (numeric) = 8.21011321746098100E-2 " " absolute error = 2.345346139520643200000000000000E-15 " " relative error = 2.856655051397557000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.490000000000011 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.4900000000000397 " " Order of pole (three term test) = 1.05608121768293640000000000000E-13 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.519999999999989 " " y[1] (analytic) = 8.25736557008846600E-2 " " y[1] (numeric) = 8.25736557008822200E-2 " " absolute error = 2.4424906541753444000000000000000E-15 " " relative error = 2.9579538818325280000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.480000000000011 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.4800000000000173 " " Order of pole (three term test) = 3.229911135085097300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.5299999999999887 " " y[1] (analytic) = 8.30502703286293800E-2 " " y[1] (numeric) = 8.30502703286268600E-2 " " absolute error = 2.525757381022231000000000000000E-15 " " relative error = 3.0412392049150777000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.4700000000000113 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.4700000000000184 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.5399999999999885 " " y[1] (analytic) = 8.35310234220984000E-2 " " y[1] (numeric) = 8.3531023422095800E-2 " " absolute error = 2.609024107869118000000000000000E-15 " " relative error = 3.123419300976614000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.4600000000000115 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.460000000000031 " " Order of pole (three term test) = 5.434082339590500000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.5499999999999883 " " y[1] (analytic) = 8.40159630329756900E-2 " " y[1] (numeric) = 8.401596303297300E-2 " " absolute error = 2.6922908347160046000000000000000E-15 " " relative error = 3.2044991660207460000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.4500000000000117 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.4500000000000344 " " Order of pole (three term test) = 7.47321302781430500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.559999999999988 " " y[1] (analytic) = 8.4505137912384500E-2 " " y[1] (numeric) = 8.4505137912381700E-2 " " absolute error = 2.789435349370706000000000000000E-15 " " relative error = 3.300906215031340600000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.440000000000012 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.440000000000031 " " Order of pole (three term test) = 4.56663738922230500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.569999999999988 " " y[1] (analytic) = 8.49985975231402600E-2 " " y[1] (numeric) = 8.49985975231373900E-2 " " absolute error = 2.8727020762175925000000000000000E-15 " " relative error = 3.3797052656492593000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.430000000000012 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.430000000000022 " " Order of pole (three term test) = 4.184724313254218300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.5799999999999876 " " y[1] (analytic) = 8.54963920522547800E-2 " " y[1] (numeric) = 8.5496392052251800E-2 " " absolute error = 2.9698465908722940000000000000000E-15 " " relative error = 3.4736513665478946000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.4200000000000124 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.420000000000016 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.5899999999999874 " " y[1] (analytic) = 8.59985724236971300E-2 " " y[1] (numeric) = 8.59985724236940600E-2 " " absolute error = 3.066991105526995000000000000000E-15 " " relative error = 3.5663279274178716000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.4100000000000126 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.410000000000016 " " Order of pole (three term test) = 3.5113540430160900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.599999999999987 " " y[1] (analytic) = 8.65051903114180300E-2 " " y[1] (numeric) = 8.65051903114148600E-2 " " absolute error = 3.1780134079895106000000000000000E-15 " " relative error = 3.673783499635901500000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.400000000000013 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.4000000000000195 " " Order of pole (three term test) = 3.215220500108627600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.609999999999987 " " y[1] (analytic) = 8.70162981526433300E-2 " " y[1] (numeric) = 8.70162981526400500E-2 " " absolute error = 3.2890357104520260000000000000000E-15 " " relative error = 3.779792728808601400000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.390000000000013 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3900000000000197 " " Order of pole (three term test) = 2.94329774067216700000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.619999999999987 " " y[1] (analytic) = 8.75319491614432500E-2 " " y[1] (numeric) = 8.75319491614398600E-2 " " absolute error = 3.3861802251067274000000000000000E-15 " " relative error = 3.86850773637096000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.380000000000013 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3800000000000083 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.6299999999999866 " " y[1] (analytic) = 8.80521973425839700E-2 " " y[1] (numeric) = 8.80521973425805000E-2 " " absolute error = 3.4833247397614286000000000000000E-15 " " relative error = 3.955977073699689000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.3700000000000134 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.370000000000015 " " Order of pole (three term test) = 2.464565002616082600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.6399999999999864 " " y[1] (analytic) = 8.85770975056682100E-2 " " y[1] (numeric) = 8.85770975056646100E-2 " " absolute error = 3.594347042223944300000000000000E-15 " " relative error = 4.0578740367891775000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.3600000000000136 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3600000000000354 " " Order of pole (three term test) = 9.01740475807147800000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.649999999999986 " " y[1] (analytic) = 8.91067052795715400E-2 " " y[1] (numeric) = 8.91067052795678300E-2 " " absolute error = 3.70536934468646000000000000000E-15 " " relative error = 4.1583507470744147000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.350000000000014 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3500000000000214 " " Order of pole (three term test) = 4.12303914152124500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.659999999999986 " " y[1] (analytic) = 8.96410771271820100E-2 " " y[1] (numeric) = 8.96410771271781700E-2 " " absolute error = 3.8441472227646045000000000000000E-15 " " relative error = 4.288376875827318000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.340000000000014 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.34000000000003 " " Order of pole (three term test) = 3.769356818320792600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.6699999999999857 " " y[1] (analytic) = 9.01802703604497800E-2 " " y[1] (numeric) = 9.01802703604458200E-2 " " absolute error = 3.95516952522712000000000000000E-15 " " relative error = 4.385847934829139000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.3300000000000143 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3300000000000307 " " Order of pole (three term test) = 3.44508746046867500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.6799999999999855 " " y[1] (analytic) = 9.07243431557547700E-2 " " y[1] (numeric) = 9.07243431557506900E-2 " " absolute error = 4.08006961549745030000000000000E-15 " " relative error = 4.497215932985948500000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.3200000000000145 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.320000000000033 " " Order of pole (three term test) = 9.44358758313870400000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.6899999999999853 " " y[1] (analytic) = 9.12733545695996700E-2 " " y[1] (numeric) = 9.1273354569595500E-2 " " absolute error = 4.1772141301521515000000000000000E-15 " " relative error = 4.57659757313604000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.3100000000000147 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3100000000000214 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.699999999999985 " " y[1] (analytic) = 9.18273645546364500E-2 " " y[1] (numeric) = 9.18273645546321400E-2 " " absolute error = 4.3021142204224816000000000000000E-15 " " relative error = 4.685002386040125000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.300000000000015 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.3000000000000305 " " Order of pole (three term test) = 5.251960349227253000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.709999999999985 " " y[1] (analytic) = 9.2386433976034100E-2 " " y[1] (numeric) = 9.23864339760296600E-2 " " absolute error = 4.440892098500626000000000000000E-15 " " relative error = 4.806866016338107000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.290000000000015 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.2900000000000205 " " Order of pole (three term test) = 2.39745345915067500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.7199999999999847 " " y[1] (analytic) = 9.29506246281966100E-2 " " y[1] (numeric) = 9.29506246281920500E-2 " " absolute error = 4.565792188770956000000000000000E-15 " " relative error = 4.912061868367392000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.2800000000000153 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.2800000000000162 " " Order of pole (three term test) = 4.376415561840872300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.7299999999999844 " " y[1] (analytic) = 9.35199992518391100E-2 " " y[1] (numeric) = 9.3519999251834400E-2 " " absolute error = 4.718447854656915300000000000000E-15 " " relative error = 5.045389106506141000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.2700000000000156 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.270000000000023 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.7399999999999842 " " y[1] (analytic) = 9.40946215514312100E-2 " " y[1] (numeric) = 9.40946215514263400E-2 " " absolute error = 4.871103520542874300000000000000E-15 " " relative error = 5.176813977492195000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.2600000000000158 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.260000000000021 " " Order of pole (three term test) = 3.64276574776467900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.749999999999984 " " y[1] (analytic) = 9.4674556213016800E-2 " " y[1] (numeric) = 9.46745562130118100E-2 " " absolute error = 4.9960036108132044000000000000000E-15 " " relative error = 5.2770288139214990000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.250000000000016 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.250000000000031 " " Order of pole (three term test) = 6.64406797939863300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.759999999999984 " " y[1] (analytic) = 9.52598689224194300E-2 " " y[1] (numeric) = 9.52598689224142500E-2 " " absolute error = 5.176414852314792000000000000000E-15 " " relative error = 5.43399325536603100000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.240000000000016 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.240000000000022 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.7699999999999836 " " y[1] (analytic) = 9.58506263838424400E-2 " " y[1] (numeric) = 9.58506263838371300E-2 " " absolute error = 5.3013149425851220000000000000000E-15 " " relative error = 5.530808866449689000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.2300000000000164 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.230000000000025 " " Order of pole (three term test) = 2.76044381578935400000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.7799999999999834 " " y[1] (analytic) = 9.64468963388748300E-2 " " y[1] (numeric) = 9.64468963388693600E-2 " " absolute error = 5.4817261840867100000000000000000E-15 " " relative error = 5.683672976708523000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.2200000000000166 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.2200000000000215 " " Order of pole (three term test) = 5.030479561554794000000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.789999999999983 " " y[1] (analytic) = 9.7048747585911400E-2 " " y[1] (numeric) = 9.70487475859057600E-2 " " absolute error = 5.6343818499726690000000000000000E-15 " " relative error = 5.805723402030398000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.210000000000017 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.2100000000000217 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.799999999999983 " " y[1] (analytic) = 9.76562499999989600E-2 " " y[1] (numeric) = 9.76562499999931700E-2 " " absolute error = 5.7870375158586280000000000000000E-15 " " relative error = 5.9259264162392990000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.200000000000017 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.2000000000000295 " " Order of pole (three term test) = 4.17284821283969600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8099999999999827 " " y[1] (analytic) = 9.8269474553118510E-2 " " y[1] (numeric) = 9.82694745531125300E-2 " " absolute error = 5.9674487573602160000000000000000E-15 " " relative error = 6.072535529977396000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1900000000000173 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1900000000000346 " " Order of pole (three term test) = 3.79886385708389560000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8199999999999825 " " y[1] (analytic) = 9.88884933349144500E-2 " " y[1] (numeric) = 9.88884933349083300E-2 " " absolute error = 6.1201044232461750000000000000000E-15 " " relative error = 6.1888943969635310000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1800000000000175 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1800000000000277 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8299999999999823 " " y[1] (analytic) = 9.95133795738826100E-2 " " y[1] (numeric) = 9.95133795738762900E-2 " " absolute error = 6.314393452555578000000000000000E-15 " " relative error = 6.345270836538645000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1700000000000177 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.170000000000024 " " Order of pole (three term test) = 3.1456551077831496000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.839999999999982 " " y[1] (analytic) = 0.10014420765902786 " " y[1] (numeric) = 0.10014420765902138 " " absolute error = 6.480926906249351000000000000000E-15 " " relative error = 6.471594371504426000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.160000000000018 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1600000000000232 " " Order of pole (three term test) = 5.72236706115604600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.849999999999982 " " y[1] (analytic) = 0.10078105316200436 " " y[1] (numeric) = 0.1007810531619977 " " absolute error = 6.661338147750939000000000000000E-15 " " relative error = 6.609712777105947000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.150000000000018 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1500000000000297 " " Order of pole (three term test) = 2.601655877509409500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8599999999999817 " " y[1] (analytic) = 0.10142399285974972 " " y[1] (numeric) = 0.10142399285974284 " " absolute error = 6.8833827526759700000000000000000E-15 " " relative error = 6.786740058828479000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1400000000000183 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1400000000000237 " " Order of pole (three term test) = 2.36495390377985610000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8699999999999815 " " y[1] (analytic) = 0.1020731047576262 " " y[1] (numeric) = 0.10207310475761912 " " absolute error = 7.077671781985373000000000000000E-15 " " relative error = 6.933924268093332000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1300000000000185 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1300000000000123 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.8799999999999812 " " y[1] (analytic) = 0.10272846811308227 " " y[1] (numeric) = 0.10272846811307497 " " absolute error = 7.299716386910404000000000000000E-15 " " relative error = 7.105835919674148000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.1200000000000188 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1200000000000347 " " Order of pole (three term test) = 3.904820315781477600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.889999999999981 " " y[1] (analytic) = 0.10339016345984718 " " y[1] (numeric) = 0.10339016345983966 " " absolute error = 7.521760991835436000000000000000E-15 " " relative error = 7.27512244891323900000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.110000000000019 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1100000000000234 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.899999999999981 " " y[1] (analytic) = 0.104058272632673 " " y[1] (numeric) = 0.10405827263266529 " " absolute error = 7.716050021144838000000000000000E-15 " " relative error = 7.415124070320281000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.100000000000019 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.1000000000000254 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9099999999999806 " " y[1] (analytic) = 0.10473287879263807 " " y[1] (numeric) = 0.10473287879263012 " " absolute error = 7.951972413877684000000000000000E-15 " " relative error = 7.592622780494644000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0900000000000194 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0900000000000305 " " Order of pole (three term test) = 5.84450335176764500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9199999999999804 " " y[1] (analytic) = 0.10541406645302616 " " y[1] (numeric) = 0.10541406645301798 " " absolute error = 8.174017018802715000000000000000E-15 " " relative error = 7.754199504717105000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0800000000000196 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0800000000000254 " " Order of pole (three term test) = 0.0 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.92999999999998 " " y[1] (analytic) = 0.10610192150579711 " " y[1] (numeric) = 0.1061019215057887 " " absolute error = 8.409939411535561000000000000000E-15 " " relative error = 7.926283795978252000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.07000000000002 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.070000000000027 " " Order of pole (three term test) = 2.404996772786350300000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.93999999999998 " " y[1] (analytic) = 0.10679653124866363 " " y[1] (numeric) = 0.10679653124865501 " " absolute error = 8.618106228652778000000000000000E-15 " " relative error = 8.069649948261423000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.06000000000002 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.060000000000042 " " Order of pole (three term test) = 4.361501475514789600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9499999999999797 " " y[1] (analytic) = 0.10749798441279082 " " y[1] (numeric) = 0.10749798441278195 " " absolute error = 8.867906409193438000000000000000E-15 " " relative error = 8.249369937152305000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0500000000000203 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0500000000000407 " " Order of pole (three term test) = 3.95356068794639800000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9599999999999795 " " y[1] (analytic) = 0.10820637119113428 " " y[1] (numeric) = 0.10820637119112514 " " absolute error = 9.145462165349727000000000000000E-15 " " relative error = 8.451870314729718000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0400000000000205 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0400000000000356 " " Order of pole (three term test) = 3.582619930101778600000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9699999999999793 " " y[1] (analytic) = 0.10892178326743415 " " y[1] (numeric) = 0.10892178326742477 " " absolute error = 9.381384558082573000000000000000E-15 " " relative error = 8.612955348930148000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0300000000000207 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0300000000000273 " " Order of pole (three term test) = 3.24542878936316500000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.979999999999979 " " y[1] (analytic) = 0.10964431384588243 " " y[1] (numeric) = 0.10964431384587277 " " absolute error = 9.658940314238862000000000000000E-15 " " relative error = 8.809339924198534000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.020000000000021 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.0200000000000324 " " Order of pole (three term test) = 2.93901307397485660000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.989999999999979 " " y[1] (analytic) = 0.11037405768148101 " " y[1] (numeric) = 0.11037405768147106 " " absolute error = 9.950373858202965000000000000000E-15 " " relative error = 9.015138219270594000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.010000000000021 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.010000000000036 " " Order of pole (three term test) = 5.32130427431342900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" " " "TOP MAIN SOLVE Loop" x[1] = 2.9999999999999787 " " y[1] (analytic) = 0.11111111111110955 " " y[1] (numeric) = 0.11111111111109931 " " absolute error = 1.024180740216706900000000000000E-14 " " relative error = 9.217626661950491000000000000E-12 "%" Correct digits = 15 h = 1.00E-2 " " Radius of convergence (given) for eq 1 = 3.0000000000000213 " " Order of pole (given) = 3. " " "NO POLE (ratio test) for Equation 1" Radius of convergence (three term test) for eq 1 = 3.00000000000003 " " Order of pole (three term test) = 2.40785799687466900000000000000E-14 " " "NO COMPLEX POLE (six term test) for Equation 1" "Finished!" "diff ( y , x , 1 ) = m1 * 2.0 / ( x - 6.0 ) / ( x - 6.0 ) / ( x - 6.0 ) ; " Iterations = 101 "Total Elapsed Time "= 4 Seconds "Elapsed Time(since restart) "= 4 Seconds "Time to Timeout "= 9 Minutes 55 Seconds Percent Done = 101.99999999999783 "%" (%o228) true (%o228) diffeq.max