(%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,30,fixnum)
(%o53) 30
(%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_g,MAX_TERMS)
(%o161) array_tmp1_g
(%i162) array(array_tmp1,MAX_TERMS)
(%o162) array_tmp1
(%i163) array(array_tmp2,MAX_TERMS)
(%o163) array_tmp2
(%i164) array(array_m1,MAX_TERMS)
(%o164) array_m1
(%i165) array(array_y_higher,4,MAX_TERMS)
(%o165) array_y_higher
(%i166) array(array_y_higher_work,4,MAX_TERMS)
(%o166) array_y_higher_work
(%i167) array(array_y_higher_work2,4,MAX_TERMS)
(%o167) array_y_higher_work2
(%i168) array(array_y_set_initial,2,MAX_TERMS)
(%o168) array_y_set_initial
(%i169) array(array_given_rad_poles,2,3)
(%o169) array_given_rad_poles
(%i170) array(array_given_ord_poles,2,3)
(%o170) array_given_ord_poles
(%i171) array(array_rad_test_poles,2,3)
(%o171) array_rad_test_poles
(%i172) array(array_ord_test_poles,2,3)
(%o172) array_ord_test_poles
(%i173) array(array_fact_2,MAX_TERMS,MAX_TERMS)
(%o173) array_fact_2
(%i174) omniout_str(iolevel,str):=if glob_iolevel >= iolevel
then printf(true,"~a~%",string(str))
(%o174) omniout_str(iolevel, str) := if glob_iolevel >= iolevel
then printf(true, "~a~%", string(str))
(%i175) omniout_str_noeol(iolevel,str):=if glob_iolevel >= iolevel
then printf(true,"~a",string(str))
(%o175) omniout_str_noeol(iolevel, str) :=
if glob_iolevel >= iolevel then printf(true, "~a", string(str))
(%i176) omniout_labstr(iolevel,label,str):=if glob_iolevel >= iolevel
then printf(true,"~a = ~a~%",string(label),
string(str))
(%o176) omniout_labstr(iolevel, label, str) :=
if glob_iolevel >= iolevel then printf(true, "~a = ~a~%", string(label),
string(str))
(%i177) 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))
(%o177) 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))
(%i178) omniout_int(iolevel,prelabel,prelen,value,vallen,postlabel):=if
glob_iolevel >= iolevel
then (printf(true,"~a = ~d ~a~%",prelabel,value,
postlabel),newline())
(%o178) omniout_int(iolevel, prelabel, prelen, value, vallen, postlabel) :=
if glob_iolevel >= iolevel then (printf(true, "~a = ~d ~a~%", prelabel, value,
postlabel), newline())
(%i179) omniout_float_arr(iolevel,prelabel,elemnt,prelen,value,vallen,
postlabel):=if glob_iolevel >= iolevel
then (sprint(prelabel,"[",elemnt,"]=",value,
postlabel),newline())
(%o179) omniout_float_arr(iolevel, prelabel, elemnt, prelen, value, vallen,
postlabel) := if glob_iolevel >= iolevel
then (sprint(prelabel, "[", elemnt, "]=", value, postlabel), newline())
(%i180) 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)
(%o180) 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)
(%i181) 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)
(%o181) 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)
(%i182) 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)
(%o182) 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
(%i183) 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)
(%o183) 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)
(%i184) 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)
(%o184) 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
(%i185) logditto(file):=(printf(file,""),printf(file,"ditto"),
printf(file," | "),0)
(%o185) logditto(file) := (printf(file, ""), printf(file, "ditto"),
printf(file, " | "), 0)
(%i186) logitem_integer(file,n):=(printf(file,""),printf(file,"~d",n),
printf(file," | "),0)
(%o186) logitem_integer(file, n) := (printf(file, ""),
printf(file, "~d", n), printf(file, " | "), 0)
(%i187) logitem_str(file,str):=(printf(file,""),printf(file,str),
printf(file," | "),0)
(%o187) logitem_str(file, str) := (printf(file, ""), printf(file, str),
printf(file, " | "), 0)
(%i188) 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)
(%o188) 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)
(%i189) log_revs(file,revs):=printf(file,revs)
(%o189) log_revs(file, revs) := printf(file, revs)
(%i190) logitem_float(file,x):=(printf(file,""),printf(file,"~g",x),
printf(file," | "),0)
(%o190) logitem_float(file, x) := (printf(file, ""),
printf(file, "~g", x), printf(file, " | "), 0)
(%i191) 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)
(%o191) 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)
(%i192) logstart(file):=(printf(file,""),0)
(%o192) logstart(file) := (printf(file, "
"), 0)
(%i193) logend(file):=(printf(file,"
~%"),0)
(%o193) logend(file) := (printf(file, "~%"), 0)
(%i194) 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)
(%o194) 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)
(%i195) 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)
(%o195) 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
(%i196) 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)
(%o196) 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)
(%i197) 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)
(%o197) comp_rad_from_ratio(term1, term2, last_no) :=
!term1 glob_h!
(if term2 > 0.0 then ret : !------------! else ret : glob_larger_float, ret)
! term2 !
(%i198) 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)
(%o198) 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)
(%i199) 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)
(%o199) 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 !
(%i200) 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)
(%o200) 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)
(%i201) 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)
(%o201) 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)
(%i202) comp_ord_from_six_terms(term1,term2,term3,term4,term5,term6,last_no):=glob_six_term_ord_save
(%o202) comp_ord_from_six_terms(term1, term2, term3, term4, term5, term6,
last_no) := glob_six_term_ord_save
(%i203) factorial_2(nnn):=nnn!
(%o203) factorial_2(nnn) := nnn!
(%i204) 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)
(%o204) 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
(%i205) 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)
(%o205) 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)
(%i206) log10(x):=log(x)/glob_log_10
log(x)
(%o206) log10(x) := -----------
glob_log_10
(%i207) expt(x,y):=(if x <= 0.0 and y < 0.0
then print("expt error x = ",x,"y = ",y),x^y)
(%o207) expt(x, y) := (if (x <= 0.0) and (y < 0.0)
y
then print("expt error x = ", x, "y = ", y), x )
(%i208) 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)
(%o208) 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)
(%i209) exact_soln_y(x):=block(cos(x)+1.0)
(%o209) exact_soln_y(x) := block(cos(x) + 1.0)
(%i210) exact_soln_yp(x):=block(-sin(x))
(%o210) exact_soln_yp(x) := block(- sin(x))
(%i211) exact_soln_ypp(x):=block(-cos(x))
(%o211) exact_soln_ypp(x) := block(- cos(x))
(%i212) 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)
(%o212) 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)
(%i213) my_check_sign(x0,xf):=block([ret],if xf > x0 then ret:1.0
else ret:-1.0,ret)
(%o213) my_check_sign(x0, xf) := block([ret],
if xf > x0 then ret : 1.0 else ret : - 1.0, ret)
(%i214) 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)
(%o214) 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)
(%i215) 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)
(%o215) 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)
(%i216) 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))
(%o216) 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))
(%i217) 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)
(%o217) 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)
(%i218) 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)
(%o218) 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
(%i219) 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)
(%o219) 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)
(%i220) 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-3+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-3+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-3+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)
(%o220) 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 - 3 + 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 - 3 + 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 - 3 + 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)
(%i221) atomall():=(
block(mode_declare([[kkk,order_d],fixnum,
[adj2,adj3,temporary,term,temp,temp2],
convfloat]),array_tmp1[1]:sin(array_x[1]),
array_tmp1_g[1]:cos(array_x[1]),
array_tmp2[1]:array_tmp1[1]+array_const_0D0[1],
if not array_y_set_initial[1,4]
then (if 1 <= MAX_TERMS
then (
temporary
:array_tmp2[1]*expt(glob_h,3)
*factorial_3(0,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,
temporary:temporary*2.0/glob_h,
array_y_higher[3,2]:temporary,
temporary:temporary*1.0/glob_h,
array_y_higher[4,1]:temporary,0)),kkk:2,
array_tmp1[2]:array_tmp1_g[1]*array_x[2]/1,
array_tmp1_g[2]:(-array_tmp1[1]*array_x[2])/1,
array_tmp2[2]:array_tmp1[2],
if not array_y_set_initial[1,5]
then (if 2 <= MAX_TERMS
then (
temporary
:array_tmp2[2]*expt(glob_h,3)
*factorial_3(1,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,
temporary:temporary*3.0/glob_h,
array_y_higher[3,3]:temporary,
temporary:temporary*2.0/glob_h,
array_y_higher[4,2]:temporary,0)),kkk:3,
array_tmp1[3]:array_tmp1_g[2]*array_x[2]/2,
array_tmp1_g[3]:(-array_tmp1[2]*array_x[2])/2,
array_tmp2[3]:array_tmp1[3],
if not array_y_set_initial[1,6]
then (if 3 <= MAX_TERMS
then (
temporary
:array_tmp2[3]*expt(glob_h,3)
*factorial_3(2,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,
temporary:temporary*4.0/glob_h,
array_y_higher[3,4]:temporary,
temporary:temporary*3.0/glob_h,
array_y_higher[4,3]:temporary,0)),kkk:4,
array_tmp1[4]:array_tmp1_g[3]*array_x[2]/3,
array_tmp1_g[4]:(-array_tmp1[3]*array_x[2])/3,
array_tmp2[4]:array_tmp1[4],
if not array_y_set_initial[1,7]
then (if 4 <= MAX_TERMS
then (
temporary
:array_tmp2[4]*expt(glob_h,3)
*factorial_3(3,6),
if 7 <= MAX_TERMS
then (array_y[7]:temporary,
array_y_higher[1,7]:temporary),
temporary:temporary*6.0/glob_h,
array_y_higher[2,6]:temporary,
temporary:temporary*5.0/glob_h,
array_y_higher[3,5]:temporary,
temporary:temporary*4.0/glob_h,
array_y_higher[4,4]:temporary,0)),kkk:5,
array_tmp1[5]:array_tmp1_g[4]*array_x[2]/4,
array_tmp1_g[5]:(-array_tmp1[4]*array_x[2])/4,
array_tmp2[5]:array_tmp1[5],
if not array_y_set_initial[1,8]
then (if 5 <= MAX_TERMS
then (
temporary
:array_tmp2[5]*expt(glob_h,3)
*factorial_3(4,7),
if 8 <= MAX_TERMS
then (array_y[8]:temporary,
array_y_higher[1,8]:temporary),
temporary:temporary*7.0/glob_h,
array_y_higher[2,7]:temporary,
temporary:temporary*6.0/glob_h,
array_y_higher[3,6]:temporary,
temporary:temporary*5.0/glob_h,
array_y_higher[4,5]:temporary,0)),kkk:6,
while kkk <= MAX_TERMS do
(array_tmp1[kkk]
:array_tmp1_g[kkk-1]*array_x[2]/(kkk-1),
array_tmp1_g[kkk]
:(-array_tmp1[kkk-1]*array_x[2])/(kkk-1),
array_tmp2[kkk]:array_tmp1[kkk],order_d:3,
if order_d+kkk <= MAX_TERMS
then (if
not array_y_set_initial[1,order_d+kkk]
then (
temporary
:array_tmp2[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)
(%o221) atomall() := (block(mode_declare([[kkk, order_d], fixnum,
[adj2, adj3, temporary, term, temp, temp2], convfloat]),
array_tmp1 : sin(array_x ), array_tmp1_g : cos(array_x ),
1 1 1 1
array_tmp2 : array_tmp1 + array_const_0D0 ,
1 1 1
if not array_y_set_initial then (if 1 <= MAX_TERMS
1, 4
then (temporary : array_tmp2 expt(glob_h, 3) factorial_3(0, 3),
1
if 4 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary),
4 1, 4
temporary 3.0
temporary : -------------, array_y_higher : temporary,
glob_h 2, 3
temporary 2.0
temporary : -------------, array_y_higher : temporary,
glob_h 3, 2
temporary 1.0
temporary : -------------, array_y_higher : temporary, 0)), kkk : 2,
glob_h 4, 1
array_tmp1_g array_x - array_tmp1 array_x
1 2 1 2
array_tmp1 : ----------------------, array_tmp1_g : ----------------------,
2 1 2 1
array_tmp2 : array_tmp1 , if not array_y_set_initial
2 2 1, 5
then (if 2 <= MAX_TERMS then (temporary :
array_tmp2 expt(glob_h, 3) factorial_3(1, 4),
2
if 5 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary),
5 1, 5
temporary 4.0
temporary : -------------, array_y_higher : temporary,
glob_h 2, 4
temporary 3.0
temporary : -------------, array_y_higher : temporary,
glob_h 3, 3
temporary 2.0
temporary : -------------, array_y_higher : temporary, 0)), kkk : 3,
glob_h 4, 2
array_tmp1_g array_x - array_tmp1 array_x
2 2 2 2
array_tmp1 : ----------------------, array_tmp1_g : ----------------------,
3 2 3 2
array_tmp2 : array_tmp1 , if not array_y_set_initial
3 3 1, 6
then (if 3 <= MAX_TERMS then (temporary :
array_tmp2 expt(glob_h, 3) factorial_3(2, 5),
3
if 6 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary),
6 1, 6
temporary 5.0
temporary : -------------, array_y_higher : temporary,
glob_h 2, 5
temporary 4.0
temporary : -------------, array_y_higher : temporary,
glob_h 3, 4
temporary 3.0
temporary : -------------, array_y_higher : temporary, 0)), kkk : 4,
glob_h 4, 3
array_tmp1_g array_x - array_tmp1 array_x
3 2 3 2
array_tmp1 : ----------------------, array_tmp1_g : ----------------------,
4 3 4 3
array_tmp2 : array_tmp1 , if not array_y_set_initial
4 4 1, 7
then (if 4 <= MAX_TERMS then (temporary :
array_tmp2 expt(glob_h, 3) factorial_3(3, 6),
4
if 7 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary),
7 1, 7
temporary 6.0
temporary : -------------, array_y_higher : temporary,
glob_h 2, 6
temporary 5.0
temporary : -------------, array_y_higher : temporary,
glob_h 3, 5
temporary 4.0
temporary : -------------, array_y_higher : temporary, 0)), kkk : 5,
glob_h 4, 4
array_tmp1_g array_x - array_tmp1 array_x
4 2 4 2
array_tmp1 : ----------------------, array_tmp1_g : ----------------------,
5 4 5 4
array_tmp2 : array_tmp1 , if not array_y_set_initial
5 5 1, 8
then (if 5 <= MAX_TERMS then (temporary :
array_tmp2 expt(glob_h, 3) factorial_3(4, 7),
5
if 8 <= MAX_TERMS then (array_y : temporary, array_y_higher : temporary),
8 1, 8
temporary 7.0
temporary : -------------, array_y_higher : temporary,
glob_h 2, 7
temporary 6.0
temporary : -------------, array_y_higher : temporary,
glob_h 3, 6
temporary 5.0
temporary : -------------, array_y_higher : temporary, 0)), kkk : 6,
glob_h 4, 5
array_tmp1_g array_x
kkk - 1 2
while kkk <= MAX_TERMS do (array_tmp1 : ----------------------------,
kkk kkk - 1
- array_tmp1 array_x
kkk - 1 2
array_tmp1_g : ----------------------------, array_tmp2 : array_tmp1 ,
kkk kkk - 1 kkk kkk
order_d : 3, if order_d + kkk <= MAX_TERMS
then (if not array_y_set_initial
1, order_d + kkk
then (temporary : array_tmp2 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)
(%i222) exact_soln_y(x):=block(cos(x)+1.0)
(%o222) exact_soln_y(x) := block(cos(x) + 1.0)
(%i223) exact_soln_yp(x):=block(-sin(x))
(%o223) exact_soln_yp(x) := block(- sin(x))
(%i224) exact_soln_ypp(x):=block(-cos(x))
(%o224) exact_soln_ypp(x) := block(- cos(x))
(%i225) 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:32,
max_terms:30,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_g[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_m1[term]:0.0,term:1+term),
ord:1,
while ord <= 4 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 <= 4 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 <= 4 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_tmp0),zero_ats_ar(array_tmp1_g),
zero_ats_ar(array_tmp1),zero_ats_ar(array_tmp2),
zero_ats_ar(array_m1),zero_ats_ar(array_const_3),
array_const_3[1]:3,zero_ats_ar(array_const_0D0),
array_const_0D0[1]:0.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]:true,array_y_set_initial[1,3]:true,
array_y_set_initial[1,4]:false,
array_y_set_initial[1,5]:false,
array_y_set_initial[1,6]:false,
array_y_set_initial[1,7]:false,
array_y_set_initial[1,8]:false,
array_y_set_initial[1,9]:false,
array_y_set_initial[1,10]:false,
array_y_set_initial[1,11]:false,
array_y_set_initial[1,12]:false,
array_y_set_initial[1,13]:false,
array_y_set_initial[1,14]:false,
array_y_set_initial[1,15]:false,
array_y_set_initial[1,16]:false,
array_y_set_initial[1,17]:false,
array_y_set_initial[1,18]:false,
array_y_set_initial[1,19]:false,
array_y_set_initial[1,20]:false,
array_y_set_initial[1,21]:false,
array_y_set_initial[1,22]:false,
array_y_set_initial[1,23]:false,
array_y_set_initial[1,24]:false,
array_y_set_initial[1,25]:false,
array_y_set_initial[1,26]:false,
array_y_set_initial[1,27]:false,
array_y_set_initial[1,28]:false,
array_y_set_initial[1,29]:false,
array_y_set_initial[1,30]:false,ALWAYS:1,INFO:2,DEBUGL:3,
DEBUGMASSIVE:4,MAX_TERMS:30,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/h3sinpostode.ode#################"),
omniout_str(ALWAYS,
"diff ( y , x , 3 ) = sin ( x ) ; "),
omniout_str(ALWAYS,"!"),
omniout_str(ALWAYS,"/* BEGIN FIRST INPUT BLOCK */"),
omniout_str(ALWAYS,"Digits:32,"),
omniout_str(ALWAYS,"max_terms:30,"),omniout_str(ALWAYS,"!"),
omniout_str(ALWAYS,"/* END FIRST INPUT BLOCK */"),
omniout_str(ALWAYS,"/* BEGIN SECOND INPUT BLOCK */"),
omniout_str(ALWAYS,"x_start:0.1,"),
omniout_str(ALWAYS,"x_end:1.5,"),omniout_str(ALWAYS,""),
omniout_str(ALWAYS,""),omniout_str(ALWAYS,""),
omniout_str(ALWAYS,
"array_y_init[0 + 1] : exact_soln_y(x_start),"),
omniout_str(ALWAYS,
"array_y_init[1 + 1] : exact_soln_yp(x_start),"),
omniout_str(ALWAYS,
"array_y_init[2 + 1] : exact_soln_ypp(x_start),"),
omniout_str(ALWAYS,"glob_look_poles:true,"),
omniout_str(ALWAYS,"glob_max_iter:20,"),
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 + cos(x)) "),
omniout_str(ALWAYS,"));"),
omniout_str(ALWAYS,"exact_soln_yp (x) := (block("),
omniout_str(ALWAYS," (-sin(x)) "),omniout_str(ALWAYS,"));"),
omniout_str(ALWAYS,"exact_soln_ypp (x) := (block("),
omniout_str(ALWAYS," (-cos(x)) "),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:0.1,x_end:1.5,
array_y_init[1+0]:exact_soln_y(x_start),
array_y_init[1+1]:exact_soln_yp(x_start),
array_y_init[1+2]:exact_soln_ypp(x_start),
glob_look_poles:true,glob_max_iter:20,
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:3,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:3,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:4,ord:4,
calc_term:1,iii:MAX_TERMS,
while iii >= calc_term do
(
array_y_higher_work[4,iii]
:array_y_higher[4,iii]
/expt(glob_h,calc_term-1)
/factorial_3(iii-calc_term,iii-1),
iii:iii-1),temp_sum:0.0,ord:4,
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:3,
calc_term:2,iii:MAX_TERMS,
while iii >= calc_term do
(
array_y_higher_work[3,iii]
:array_y_higher[3,iii]
/expt(glob_h,calc_term-1)
/factorial_3(iii-calc_term,iii-1),
iii:iii-1),temp_sum:0.0,ord:3,
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:3,
calc_term:1,iii:MAX_TERMS,
while iii >= calc_term do
(
array_y_higher_work[3,iii]
:array_y_higher[3,iii]
/expt(glob_h,calc_term-1)
/factorial_3(iii-calc_term,iii-1),
iii:iii-1),temp_sum:0.0,ord:3,
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:2,
calc_term:3,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:3,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:2,
calc_term:2,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: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: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:4,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:4,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:3,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:3,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 , 3 ) = sin ( x ) ; "),
omniout_int(INFO,
"Iterations ",32,
glob_iter,4," "),
prog_report(x_start,x_end),
if glob_html_log
then (logstart(html_log_file),
logitem_str(html_log_file,
"2014-01-08T22:01:43-06:00"),
logitem_str(html_log_file,"Maxima"),
logitem_str(html_log_file,
"h3sin"),
logitem_str(html_log_file,
"diff ( y , x , 3 ) = sin ( x ) ; "),
logitem_float(html_log_file,x_start),
logitem_float(html_log_file,x_end),
logitem_float(html_log_file,array_x[1]),
logitem_float(html_log_file,glob_h),
logitem_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,
"h3sin diffeq.max"),
logitem_str(html_log_file,
"h3sin 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)))
(%o225) 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 : 32, max_terms : 30,
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_g : 0.0, term : 1 + term), term : 1,
term
while term <= MAX_TERMS do (array_tmp1 : 0.0, term : 1 + term), term : 1,
term
while term <= MAX_TERMS do (array_tmp2 : 0.0, term : 1 + term), term : 1,
term
while term <= MAX_TERMS do (array_m1 : 0.0, term : 1 + term), ord : 1,
term
while ord <= 4 do (term : 1, while term <=
MAX_TERMS do (array_y_higher : 0.0, term : 1 + term), ord : 1 + ord),
ord, term
ord : 1, while ord <= 4 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 <= 4 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_tmp0), zero_ats_ar(array_tmp1_g), zero_ats_ar(array_tmp1),
zero_ats_ar(array_tmp2), zero_ats_ar(array_m1), zero_ats_ar(array_const_3),
array_const_3 : 3, zero_ats_ar(array_const_0D0), array_const_0D0 : 0.0,
1 1
zero_ats_ar(array_m1), array_m1 : - 1.0, iiif : 0,
1
while iiif <= MAX_TERMS do (jjjf : 0,
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 : true, array_y_set_initial : true,
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, array_y_set_initial : false,
1, 20 1, 21
array_y_set_initial : false, array_y_set_initial : false,
1, 22 1, 23
array_y_set_initial : false, array_y_set_initial : false,
1, 24 1, 25
array_y_set_initial : false, array_y_set_initial : false,
1, 26 1, 27
array_y_set_initial : false, array_y_set_initial : false,
1, 28 1, 29
array_y_set_initial : false, ALWAYS : 1, INFO : 2, DEBUGL : 3,
1, 30
DEBUGMASSIVE : 4, MAX_TERMS : 30, 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/h3sinpostode.ode#################"),
omniout_str(ALWAYS, "diff ( y , x , 3 ) = sin ( x ) ; "),
omniout_str(ALWAYS, "!"), omniout_str(ALWAYS,
"/* BEGIN FIRST INPUT BLOCK */"), omniout_str(ALWAYS, "Digits:32,"),
omniout_str(ALWAYS, "max_terms:30,"), omniout_str(ALWAYS, "!"),
omniout_str(ALWAYS, "/* END FIRST INPUT BLOCK */"),
omniout_str(ALWAYS, "/* BEGIN SECOND INPUT BLOCK */"),
omniout_str(ALWAYS, "x_start:0.1,"), omniout_str(ALWAYS, "x_end:1.5,"),
omniout_str(ALWAYS, ""), omniout_str(ALWAYS, ""), omniout_str(ALWAYS, ""),
omniout_str(ALWAYS, "array_y_init[0 + 1] : exact_soln_y(x_start),"),
omniout_str(ALWAYS, "array_y_init[1 + 1] : exact_soln_yp(x_start),"),
omniout_str(ALWAYS, "array_y_init[2 + 1] : exact_soln_ypp(x_start),"),
omniout_str(ALWAYS, "glob_look_poles:true,"),
omniout_str(ALWAYS, "glob_max_iter:20,"),
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 + cos(x)) "), omniout_str(ALWAYS, "));"),
omniout_str(ALWAYS, "exact_soln_yp (x) := (block("),
omniout_str(ALWAYS, " (-sin(x)) "), omniout_str(ALWAYS, "));"),
omniout_str(ALWAYS, "exact_soln_ypp (x) := (block("),
omniout_str(ALWAYS, " (-cos(x)) "), 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 : 0.1, x_end : 1.5,
array_y_init : exact_soln_y(x_start),
1 + 0
array_y_init : exact_soln_yp(x_start),
1 + 1
array_y_init : exact_soln_ypp(x_start), glob_look_poles : true,
1 + 2
glob_max_iter : 20, 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 : 3, 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 : 3, 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 : 4, ord : 4, calc_term : 1, iii : MAX_TERMS,
2
while iii >= calc_term do (array_y_higher_work :
4, iii
array_y_higher
4, iii
---------------------------
expt(glob_h, calc_term - 1)
-------------------------------------, iii : iii - 1), temp_sum : 0.0,
factorial_3(iii - calc_term, iii - 1)
ord : 4, 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 : 3, calc_term : 2, iii : MAX_TERMS,
factorial_1(calc_term - 1)
while iii >= calc_term do (array_y_higher_work :
3, iii
array_y_higher
3, iii
---------------------------
expt(glob_h, calc_term - 1)
-------------------------------------, iii : iii - 1), temp_sum : 0.0,
factorial_3(iii - calc_term, iii - 1)
ord : 3, 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 : 3, calc_term : 1, iii : MAX_TERMS,
factorial_1(calc_term - 1)
while iii >= calc_term do (array_y_higher_work :
3, iii
array_y_higher
3, iii
---------------------------
expt(glob_h, calc_term - 1)
-------------------------------------, iii : iii - 1), temp_sum : 0.0,
factorial_3(iii - calc_term, iii - 1)
ord : 3, 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 : 2, calc_term : 3, iii : MAX_TERMS,
factorial_1(calc_term - 1)
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 : 3, 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 : 2, calc_term : 2, iii : MAX_TERMS,
factorial_1(calc_term - 1)
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 : 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 : 2, calc_term : 1, iii : MAX_TERMS,
factorial_1(calc_term - 1)
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 : 4, 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 : 4, 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 : 3, 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 : 3, 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 , 3 ) = sin ( x ) ; "),
omniout_int(INFO, "Iterations ", 32, glob_iter, 4, " "),
prog_report(x_start, x_end), if glob_html_log
then (logstart(html_log_file), logitem_str(html_log_file,
"2014-01-08T22:01:43-06:00"), logitem_str(html_log_file, "Maxima"),
logitem_str(html_log_file, "h3sin"),
logitem_str(html_log_file, "diff ( y , x , 3 ) = sin ( x ) ; "),
logitem_float(html_log_file, x_start), logitem_float(html_log_file, x_end),
logitem_float(html_log_file, array_x ), logitem_float(html_log_file, glob_h),
1
logitem_str(html_log_file, "16"), logitem_good_digits(html_log_file,
array_last_rel_error ), logitem_integer(html_log_file, MAX_TERMS),
1
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, "h3sin diffeq.max"), logitem_str(html_log_file, "h3sin 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)))
(%i226) main():=(alias(convfloat,convfloat),compile(all),main_prog())
(%o226) main() := (alias(convfloat, convfloat), compile(all), main_prog())
(%i227) 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_tmp1 in translation.
warning: encountered undefined variable array_tmp1_g in translation.
warning: encountered undefined variable array_const_0D0 in translation.
warning: encountered undefined variable array_tmp2 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 array_m1 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_3 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/h3sinpostode.ode#################"
"diff ( y , x , 3 ) = sin ( x ) ; "
"!"
"/* BEGIN FIRST INPUT BLOCK */"
"Digits:32,"
"max_terms:30,"
"!"
"/* END FIRST INPUT BLOCK */"
"/* BEGIN SECOND INPUT BLOCK */"
"x_start:0.1,"
"x_end:1.5,"
""
""
""
"array_y_init[0 + 1] : exact_soln_y(x_start),"
"array_y_init[1 + 1] : exact_soln_yp(x_start),"
"array_y_init[2 + 1] : exact_soln_ypp(x_start),"
"glob_look_poles:true,"
"glob_max_iter:20,"
"/* 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 + cos(x)) "
"));"
"exact_soln_yp (x) := (block("
" (-sin(x)) "
"));"
"exact_soln_ypp (x) := (block("
" (-cos(x)) "
"));"
"/* 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.4 ""
estimated_steps = 1400000. ""
step_error = 7.14285714285714300000000000000000E-17 ""
est_needed_step_err = 7.14285714285714300000000000000000E-17 ""
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.4672086055323017000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-183 ""
estimated_step_error = 2.4672086055323017000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-183 ""
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.65571566460656570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-175 ""
estimated_step_error = 1.65571566460656570000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-175 ""
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.111131969458435500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-167 ""
estimated_step_error = 1.111131969458435500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-167 ""
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.4566803670241870000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-160 ""
estimated_step_error = 7.4566803670241870000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-160 ""
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.00409341203781700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-152 ""
estimated_step_error = 5.00409341203781700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-152 ""
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.358190142481624000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-144 ""
estimated_step_error = 3.358190142481624000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-144 ""
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.253643121580920000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-136 ""
estimated_step_error = 2.253643121580920000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-136 ""
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.512394117654306800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-128 ""
estimated_step_error = 1.512394117654306800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-128 ""
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 = 1.0149502701580555000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-120 ""
estimated_step_error = 1.0149502701580555000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-120 ""
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.81121272440810800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-113 ""
estimated_step_error = 6.81121272440810800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-113 ""
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 = 4.570923134360027600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-105 ""
estimated_step_error = 4.570923134360027600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-105 ""
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 = 3.0674887502340370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-97 ""
estimated_step_error = 3.0674887502340370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-97 ""
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 = 2.058549011618171200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-89 ""
estimated_step_error = 2.058549011618171200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E-89 ""
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.3814583197406788000000000000000000000000000000000000000000000000000000000000000000000000000000000E-81 ""
estimated_step_error = 1.3814583197406788000000000000000000000000000000000000000000000000000000000000000000000000000000000E-81 ""
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 = 9.2706681184514300000000000000000000000000000000000000000000000000000000000000000000000000E-74 ""
estimated_step_error = 9.2706681184514300000000000000000000000000000000000000000000000000000000000000000000000000E-74 ""
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 = 6.221249002141341000000000000000000000000000000000000000000000000000000000000000000E-66 ""
estimated_step_error = 6.221249002141341000000000000000000000000000000000000000000000000000000000000000000E-66 ""
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 = 4.1747508757515440000000000000000000000000000000000000000000000000000000000E-58 ""
estimated_step_error = 4.1747508757515440000000000000000000000000000000000000000000000000000000000E-58 ""
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.801274758009002500000000000000000000000000000000000000000000000000E-50 ""
estimated_step_error = 2.801274758009002500000000000000000000000000000000000000000000000000E-50 ""
best_h = 0.1 ""
"START of Soultion"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.1 " "
y[1] (analytic) = 1.9950041652780257 " "
y[1] (numeric) = 1.9950041652780257 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 9.9334665397530600E-2 " "
Order of pole (three term test) = 22.00996671107938 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.11 " "
y[1] (analytic) = 1.9939560979566968 " "
y[1] (numeric) = 1.9939560979566968 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.10911481154043472 " "
Order of pole (three term test) = 22.012051275334695 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.12 " "
y[1] (analytic) = 1.9928086358538661 " "
y[1] (numeric) = 1.9928086358538661 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.11885131321356732 " "
Order of pole (three term test) = 22.01433101257398 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.13 " "
y[1] (analytic) = 1.991561893714788 " "
y[1] (numeric) = 1.9915618937147879 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.114926960722569200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.1285402759460775 " "
Order of pole (three term test) = 22.016805010932735 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.14 " "
y[1] (analytic) = 1.9902159962126371 " "
y[1] (numeric) = 1.990215996212637 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.115680937886039300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.13817782428205685 " "
Order of pole (three term test) = 22.019472280844617 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.15000000000000002 " "
y[1] (analytic) = 1.9887710779360424 " "
y[1] (numeric) = 1.988771077936042 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.232983045544592600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.14776010333066983 " "
Order of pole (three term test) = 22.022331755437197 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.16000000000000003 " "
y[1] (analytic) = 1.9872272833756268 " "
y[1] (numeric) = 1.9872272833756266 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.117358878788402300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.15728328030805883 " "
Order of pole (three term test) = 22.025382290958774 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.17000000000000004 " "
y[1] (analytic) = 1.9855847669095605 " "
y[1] (numeric) = 1.9855847669095603 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.118283180982648100000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.16674354607040726 " "
Order of pole (three term test) = 22.02862266723583 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.18000000000000005 " "
y[1] (analytic) = 1.9838436927881213 " "
y[1] (numeric) = 1.9838436927881211 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.119264616119865500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.17613711663754497 " "
Order of pole (three term test) = 22.032051588161032 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.19000000000000006 " "
y[1] (analytic) = 1.9820042351172704 " "
y[1] (numeric) = 1.98200423511727 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.240606765523823500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.18546023470649137 " "
Order of pole (three term test) = 22.03566768221175 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.20000000000000007 " "
y[1] (analytic) = 1.9800665778412416 " "
y[1] (numeric) = 1.9800665778412412 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.24279938270676100000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.19470917115432534 " "
Order of pole (three term test) = 22.039469502998557 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.21000000000000008 " "
y[1] (analytic) = 1.9780309147241484 " "
y[1] (numeric) = 1.9780309147241477 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.367661292937837400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.20388022652978524 " "
Order of pole (three term test) = 22.04345552984385 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.22000000000000008 " "
y[1] (analytic) = 1.9758974493306054 " "
y[1] (numeric) = 1.975897449330605 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.247531672256124200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.21296973253299994 " "
Order of pole (three term test) = 22.04762416839002 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.2300000000000001 " "
y[1] (analytic) = 1.9736663950053748 " "
y[1] (numeric) = 1.9736663950053743 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.250072306920204000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.22197405348275998 " "
Order of pole (three term test) = 22.051973751237238 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.2400000000000001 " "
y[1] (analytic) = 1.9713379748520294 " "
y[1] (numeric) = 1.971337974852029 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.252729950496674400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.23088958777074142 " "
Order of pole (three term test) = 22.056502538610356 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.2500000000000001 " "
y[1] (analytic) = 1.9689124217106446 " "
y[1] (numeric) = 1.9689124217106442 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.25550514564901700000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2397127693021017 " "
Order of pole (three term test) = 22.06120871905481 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.2600000000000001 " "
y[1] (analytic) = 1.9663899781345133 " "
y[1] (numeric) = 1.9663899781345127 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.387597690093222500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.24844006892186837 " "
Order of pole (three term test) = 22.066090410161173 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.27000000000000013 " "
y[1] (analytic) = 1.9637708963658906 " "
y[1] (numeric) = 1.96377089636589 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.39211573003666500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2570679958265566 " "
Order of pole (three term test) = 22.071145659318084 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.28000000000000014 " "
y[1] (analytic) = 1.9610554383107708 " "
y[1] (numeric) = 1.9610554383107703 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.26454184402148120000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2655930989604419 " "
Order of pole (three term test) = 22.076372444493288 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.29000000000000015 " "
y[1] (analytic) = 1.958243875512697 " "
y[1] (numeric) = 1.9582438755126965 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.267793176341703400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.27401196839593706 " "
Order of pole (three term test) = 22.081768675042408 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.30000000000000016 " "
y[1] (analytic) = 1.955336489125606 " "
y[1] (numeric) = 1.9553364891256053 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.4067477310413100000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.28232123669751796 " "
Order of pole (three term test) = 22.087332192545162 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.31000000000000016 " "
y[1] (analytic) = 1.9523335698857134 " "
y[1] (numeric) = 1.9523335698857127 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.41198771075830200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.29051758026865265 " "
Order of pole (three term test) = 22.093060771668732 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3200000000000002 " "
y[1] (analytic) = 1.949235418082441 " "
y[1] (numeric) = 1.9492354180824403 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.417410788843569500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.29859772068119605 " "
Order of pole (three term test) = 22.098952121057852 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3300000000000002 " "
y[1] (analytic) = 1.946042343528387 " "
y[1] (numeric) = 1.9460423435283865 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.282012060667089300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.30655842598671706 " "
Order of pole (three term test) = 22.105003884251317 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3400000000000002 " "
y[1] (analytic) = 1.942754665528346 " "
y[1] (numeric) = 1.9427546655283456 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.28587385597290200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3143965120092343 " "
Order of pole (three term test) = 22.11121364062454 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3500000000000002 " "
y[1] (analytic) = 1.939372712847379 " "
y[1] (numeric) = 1.9393727128473783 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.43479007599874430000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.32210884361884573 " "
Order of pole (three term test) = 22.11757890635776 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3600000000000002 " "
y[1] (analytic) = 1.9358968236779348 " "
y[1] (numeric) = 1.9358968236779344 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.293971478326798400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3296923359857367 " "
Order of pole (three term test) = 22.124097135429547 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3700000000000002 " "
y[1] (analytic) = 1.9323273456060344 " "
y[1] (numeric) = 1.932327345606034 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.298209000974331400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.33714395581407275 " "
Order of pole (three term test) = 22.130765720635203 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.3800000000000002 " "
y[1] (analytic) = 1.92866463557651 " "
y[1] (numeric) = 1.9286646355765098 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.151286754727363400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3444607225552758 " "
Order of pole (three term test) = 22.13758199462955 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.39000000000000024 " "
y[1] (analytic) = 1.9249090598573129 " "
y[1] (numeric) = 1.9249090598573126 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.153532961923358200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3516397096002053 " "
Order of pole (three term test) = 22.144543230993865 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.40000000000000024 " "
y[1] (analytic) = 1.921060994002885 " "
y[1] (numeric) = 1.9210609940028847 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.31168719388092280000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.35867804544976173 " "
Order of pole (three term test) = 22.151646645326416 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.41000000000000025 " "
y[1] (analytic) = 1.917120822816605 " "
y[1] (numeric) = 1.9171208228166048 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.158219149687220600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.365572914863448 " "
Order of pole (three term test) = 22.15888939635619 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.42000000000000026 " "
y[1] (analytic) = 1.9130889403123081 " "
y[1] (numeric) = 1.913088940312308 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.160660125340450400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3723215599854298 " "
Order of pole (three term test) = 22.166268587079347 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.43000000000000027 " "
y[1] (analytic) = 1.908965749674885 " "
y[1] (numeric) = 1.9089657496748849 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.163167044578183900000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3789212814476387 " "
Order of pole (three term test) = 22.173781265917977 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4400000000000003 " "
y[1] (analytic) = 1.9047516632199633 " "
y[1] (numeric) = 1.9047516632199633 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.38536943944948476 " "
Order of pole (three term test) = 22.18142442790071 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4500000000000003 " "
y[1] (analytic) = 1.9004471023526768 " "
y[1] (numeric) = 1.9004471023526768 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3916634548137418 " "
Order of pole (three term test) = 22.18919501586467 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4600000000000003 " "
y[1] (analytic) = 1.896052497525525 " "
y[1] (numeric) = 1.896052497525525 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.39780081001818307 " "
Order of pole (three term test) = 22.19708992167827 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4700000000000003 " "
y[1] (analytic) = 1.8915682881953289 " "
y[1] (numeric) = 1.8915682881953289 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.40377905020255705 " "
Order of pole (three term test) = 22.205105987484448 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4800000000000003 " "
y[1] (analytic) = 1.8869949227792842 " "
y[1] (numeric) = 1.8869949227792842 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4095957841504992 " "
Order of pole (three term test) = 22.213240006963773 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.4900000000000003 " "
y[1] (analytic) = 1.8823328586101213 " "
y[1] (numeric) = 1.8823328586101216 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.179624548917372600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.41524868524598535 " "
Order of pole (three term test) = 22.221488726616894 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5000000000000003 " "
y[1] (analytic) = 1.8775825618903725 " "
y[1] (numeric) = 1.8775825618903728 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.182609007091939300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.42073549240394825 " "
Order of pole (three term test) = 22.22984884706593 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5100000000000003 " "
y[1] (analytic) = 1.8727445076457512 " "
y[1] (numeric) = 1.8727445076457514 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.185664163042539800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4260540109746816 " "
Order of pole (three term test) = 22.238317024374176 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5200000000000004 " "
y[1] (analytic) = 1.8678191796776498 " "
y[1] (numeric) = 1.86781917967765 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.188790688846829300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.43120211362166944 " "
Order of pole (three term test) = 22.246889871383612 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5300000000000004 " "
y[1] (analytic) = 1.8628070705147608 " "
y[1] (numeric) = 1.862807070514761 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.191989274894003900000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4361777411724933 " "
Order of pole (three term test) = 22.255563959069736 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5400000000000004 " "
y[1] (analytic) = 1.857708681363824 " "
y[1] (numeric) = 1.8577086813638242 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.195260630219043700000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4409789034424741 " "
Order of pole (three term test) = 22.264335817913132 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5500000000000004 " "
y[1] (analytic) = 1.8525245220595057 " "
y[1] (numeric) = 1.8525245220595057 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4456036800307178 " "
Order of pole (three term test) = 22.273201939287215 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5600000000000004 " "
y[1] (analytic) = 1.8472551110134159 " "
y[1] (numeric) = 1.847255111013416 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.2020245801524200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.45005022108825254 " "
Order of pole (three term test) = 22.282158776861642 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5700000000000004 " "
y[1] (analytic) = 1.8419009751622686 " "
y[1] (numeric) = 1.8419009751622688 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.205518689219812800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4543167480579417 " "
Order of pole (three term test) = 22.291202748020815 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5800000000000004 " "
y[1] (analytic) = 1.8364626499151866 " "
y[1] (numeric) = 1.836462649915187 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.41817719445898900000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.45840155438588354 " "
Order of pole (three term test) = 22.30033023529686 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.5900000000000004 " "
y[1] (analytic) = 1.8309406791001632 " "
y[1] (numeric) = 1.8309406791001637 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.425470223690236700000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4623030062040104 " "
Order of pole (three term test) = 22.30953758781656 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6000000000000004 " "
y[1] (analytic) = 1.8253356149096782 " "
y[1] (numeric) = 1.8253356149096784 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.216459061617655300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.46601954298361337 " "
Order of pole (three term test) = 22.318821122761666 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6100000000000004 " "
y[1] (analytic) = 1.8196480178454792 " "
y[1] (numeric) = 1.8196480178454797 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.44052259280274600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.46954967815953397 " "
Order of pole (three term test) = 22.328177126841975 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6200000000000004 " "
y[1] (analytic) = 1.8138784566625337 " "
y[1] (numeric) = 1.8138784566625341 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.448285375565734400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.47289199972476986 " "
Order of pole (three term test) = 22.337601857780616 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6300000000000004 " "
y[1] (analytic) = 1.8080275083121515 " "
y[1] (numeric) = 1.808027508312152 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.456208259047083800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.47604517079525804 " "
Order of pole (three term test) = 22.347091545810855 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6400000000000005 " "
y[1] (analytic) = 1.8020957578842922 " "
y[1] (numeric) = 1.8020957578842927 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.464293076031847400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.47900793014461246 " "
Order of pole (three term test) = 22.356642395184025 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6500000000000005 " "
y[1] (analytic) = 1.7960837985490556 " "
y[1] (numeric) = 1.7960837985490559 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.236270852754238600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.48177909270859665 " "
Order of pole (three term test) = 22.366250585687705 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6600000000000005 " "
y[1] (analytic) = 1.7899922314973646 " "
y[1] (numeric) = 1.789992231497365 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.48095607363934200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.48435755005913267 " "
Order of pole (three term test) = 22.375912274173817 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6700000000000005 " "
y[1] (analytic) = 1.783821665880849 " "
y[1] (numeric) = 1.7838216658808492 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.24476907738075890000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4867422708476597 " "
Order of pole (three term test) = 22.38562359609577 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6800000000000005 " "
y[1] (analytic) = 1.7775727187509276 " "
y[1] (numeric) = 1.7775727187509278 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.249144986209388800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4889323012176583 " "
Order of pole (three term test) = 22.395380667054287 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.6900000000000005 " "
y[1] (analytic) = 1.7712460149971063 " "
y[1] (numeric) = 1.7712460149971065 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.253606800212866400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49092676518617984 " "
Order of pole (three term test) = 22.40517958435108 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7000000000000005 " "
y[1] (analytic) = 1.7648421872844882 " "
y[1] (numeric) = 1.7648421872844884 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.258155581982573500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4927248649942302 " "
Order of pole (three term test) = 22.415016428549883 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7100000000000005 " "
y[1] (analytic) = 1.758361875990508 " "
y[1] (numeric) = 1.7583618759905082 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.26279242035972100000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49432588142585987 " "
Order of pole (three term test) = 22.42488726504416 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7200000000000005 " "
y[1] (analytic) = 1.7518057291408946 " "
y[1] (numeric) = 1.751805729140895 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.535036862037487500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4957291740958434 " "
Order of pole (three term test) = 22.43478814563093 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7300000000000005 " "
y[1] (analytic) = 1.7451744023448699 " "
y[1] (numeric) = 1.7451744023448705 " "
absolute error = 6.6613381477509390000000000000000E-16 " "
relative error = 3.81700427120668300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4969341817058225 " "
Order of pole (three term test) = 22.44471511008997 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7400000000000005 " "
y[1] (analytic) = 1.7384685587295876 " "
y[1] (numeric) = 1.738468558729588 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.55448513934924200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49794042226882 " "
Order of pole (three term test) = 22.454664187767843 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7500000000000006 " "
y[1] (analytic) = 1.7316888688738206 " "
y[1] (numeric) = 1.731688868873821 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.564486137390661000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49874749330202733 " "
Order of pole (three term test) = 22.46463139916615 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7600000000000006 " "
y[1] (analytic) = 1.7248360107409049 " "
y[1] (numeric) = 1.7248360107409053 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.574674966690333500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4993550719877916 " "
Order of pole (three term test) = 22.47461275753321 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7700000000000006 " "
y[1] (analytic) = 1.717910669610943 " "
y[1] (numeric) = 1.7179106696109434 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.585054145746914500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49976291530273953 " "
Order of pole (three term test) = 22.484604270458764 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7800000000000006 " "
y[1] (analytic) = 1.710913538012277 " "
y[1] (numeric) = 1.7109135380122773 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.297813127266504400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4999708601149832 " "
Order of pole (three term test) = 22.494601941470865 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.7900000000000006 " "
y[1] (analytic) = 1.7038453156522357 " "
y[1] (numeric) = 1.703845315652236 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.303196967971427300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4999788232493701 " "
Order of pole (three term test) = 22.50460177163441 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8000000000000006 " "
y[1] (analytic) = 1.6967067093471648 " "
y[1] (numeric) = 1.6967067093471653 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 2.617359897285566000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4997868015207525 " "
Order of pole (three term test) = 22.51459976115065 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8100000000000006 " "
y[1] (analytic) = 1.6894984329517466 " "
y[1] (numeric) = 1.6894984329517468 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.314263455912735300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.499394871735262 " "
Order of pole (three term test) = 22.524591910957085 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8200000000000006 " "
y[1] (analytic) = 1.682221207287613 " "
y[1] (numeric) = 1.6822212072876133 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.31994891018555500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49880319065958684 " "
Order of pole (three term test) = 22.53457422432703 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8300000000000006 " "
y[1] (analytic) = 1.6748757600712665 " "
y[1] (numeric) = 1.6748757600712667 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.325737766457276000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4980119949582683 " "
Order of pole (three term test) = 22.54454270846823 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8400000000000006 " "
y[1] (analytic) = 1.6674628258413078 " "
y[1] (numeric) = 1.6674628258413078 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49702160109903804 " "
Order of pole (three term test) = 22.554493376119936 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8500000000000006 " "
y[1] (analytic) = 1.6599831458849816 " "
y[1] (numeric) = 1.6599831458849819 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.33763168304129600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4958324052262342 " "
Order of pole (three term test) = 22.564422247147757 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8600000000000007 " "
y[1] (analytic) = 1.6524374681640515 " "
y[1] (numeric) = 1.6524374681640515 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4944448830023506 " "
Order of pole (three term test) = 22.57432535013568 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8700000000000007 " "
y[1] (analytic) = 1.6448265472400005 " "
y[1] (numeric) = 1.6448265472400008 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.349957570283745200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.49285958941777663 " "
Order of pole (three term test) = 22.584198723974538 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8800000000000007 " "
y[1] (analytic) = 1.6371511441985795 " "
y[1] (numeric) = 1.6371511441985798 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.356286532931734200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.491077158568809 " "
Order of pole (three term test) = 22.594038419446438 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.8900000000000007 " "
y[1] (analytic) = 1.6294120265736964 " "
y[1] (numeric) = 1.6294120265736964 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.48909830340402227 " "
Order of pole (three term test) = 22.603840500804395 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9000000000000007 " "
y[1] (analytic) = 1.621609968270664 " "
y[1] (numeric) = 1.621609968270664 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.48692381543909746 " "
Order of pole (three term test) = 22.613601047346545 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9100000000000007 " "
y[1] (analytic) = 1.613745749488811 " "
y[1] (numeric) = 1.613745749488811 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.484554564440228 " "
Order of pole (three term test) = 22.623316154984423 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9200000000000007 " "
y[1] (analytic) = 1.6058201566434622 " "
y[1] (numeric) = 1.6058201566434622 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4819914980762238 " "
Order of pole (three term test) = 22.632981937804487 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9300000000000007 " "
y[1] (analytic) = 1.5978339822872978 " "
y[1] (numeric) = 1.5978339822872976 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.389660048456190000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.47923564153945697 " "
Order of pole (three term test) = 22.642594529622514 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9400000000000007 " "
y[1] (analytic) = 1.5897880250310976 " "
y[1] (numeric) = 1.5897880250310976 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.47628809713579756 " "
Order of pole (three term test) = 22.652150085529918 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9500000000000007 " "
y[1] (analytic) = 1.581683089463883 " "
y[1] (numeric) = 1.581683089463883 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.473150043843707 " "
Order of pole (three term test) = 22.661644783431754 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9600000000000007 " "
y[1] (analytic) = 1.573519986072456 " "
y[1] (numeric) = 1.573519986072456 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4698227368426621 " "
Order of pole (three term test) = 22.67107482557545 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9700000000000008 " "
y[1] (analytic) = 1.5652995311603537 " "
y[1] (numeric) = 1.5652995311603537 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.46630750701109985 " "
Order of pole (three term test) = 22.680436440069883 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9800000000000008 " "
y[1] (analytic) = 1.5570225467662167 " "
y[1] (numeric) = 1.5570225467662167 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4626057603940838 " "
Order of pole (three term test) = 22.689725882394082 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 0.9900000000000008 " "
y[1] (analytic) = 1.5486898605815869 " "
y[1] (numeric) = 1.5486898605815869 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4587189776409045 " "
Order of pole (three term test) = 22.698939436894957 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0000000000000007 " "
y[1] (analytic) = 1.5403023058681393 " "
y[1] (numeric) = 1.540302305868139 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.441565101078540500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4546487134128405 " "
Order of pole (three term test) = 22.70807341827357 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0100000000000007 " "
y[1] (analytic) = 1.531860721374355 " "
y[1] (numeric) = 1.531860721374355 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.45039659576131336 " "
Order of pole (three term test) = 22.717124173059148 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0200000000000007 " "
y[1] (analytic) = 1.523365951251649 " "
y[1] (numeric) = 1.523365951251649 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4459643254766894 " "
Order of pole (three term test) = 22.726088081070454 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0300000000000007 " "
y[1] (analytic) = 1.514818844969955 " "
y[1] (numeric) = 1.514818844969955 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.44135367540798653 " "
Order of pole (three term test) = 22.734961556863794 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0400000000000007 " "
y[1] (analytic) = 1.5062202572327776 " "
y[1] (numeric) = 1.5062202572327779 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.474184163031845300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4365664897537579 " "
Order of pole (three term test) = 22.743741051167184 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0500000000000007 " "
y[1] (analytic) = 1.4975710478917263 " "
y[1] (numeric) = 1.4975710478917263 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4316046833244363 " "
Order of pole (three term test) = 22.752423052299925 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0600000000000007 " "
y[1] (analytic) = 1.488872081860527 " "
y[1] (numeric) = 1.488872081860527 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4264702407764375 " "
Order of pole (three term test) = 22.761004087577355 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0700000000000007 " "
y[1] (analytic) = 1.4801242290285335 " "
y[1] (numeric) = 1.4801242290285335 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4211652158183223 " "
Order of pole (three term test) = 22.769480724699754 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0800000000000007 " "
y[1] (analytic) = 1.4713283641737394 " "
y[1] (numeric) = 1.4713283641737394 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.4156917303893412 " "
Order of pole (three term test) = 22.777849573125305 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.0900000000000007 " "
y[1] (analytic) = 1.4624853668753002 " "
y[1] (numeric) = 1.4624853668753002 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.41005197381068675 " "
Order of pole (three term test) = 22.78610728542622 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1000000000000008 " "
y[1] (analytic) = 1.4535961214255768 " "
y[1] (numeric) = 1.4535961214255766 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.527553641979085600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.40424820190979455 " "
Order of pole (three term test) = 22.794250558627674 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1100000000000008 " "
y[1] (analytic) = 1.4446615167417063 " "
y[1] (numeric) = 1.444661516741706 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.53700089849303500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3982827361180429 " "
Order of pole (three term test) = 22.80227613552897 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1200000000000008 " "
y[1] (analytic) = 1.4356824462767115 " "
y[1] (numeric) = 1.4356824462767113 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.54661363660801300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3921579625422096 " "
Order of pole (three term test) = 22.81018080600634 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1300000000000008 " "
y[1] (analytic) = 1.4266598079301567 " "
y[1] (numeric) = 1.4266598079301565 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.556394900107129500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3858763310100625 " "
Order of pole (three term test) = 22.817961408297005 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1400000000000008 " "
y[1] (analytic) = 1.4175945039583575 " "
y[1] (numeric) = 1.4175945039583573 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.566347811768561700000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3794403540904604 " "
Order of pole (three term test) = 22.82561483026377 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1500000000000008 " "
y[1] (analytic) = 1.4084874408841566 " "
y[1] (numeric) = 1.4084874408841566 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.37285260608835946 " "
Order of pole (three term test) = 22.833138010639914 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1600000000000008 " "
y[1] (analytic) = 1.3993395294062725 " "
y[1] (numeric) = 1.3993395294062725 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.36611572201512516 " "
Order of pole (three term test) = 22.84052794025358 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1700000000000008 " "
y[1] (analytic) = 1.3901516843082296 " "
y[1] (numeric) = 1.3901516843082296 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3592323965345626 " "
Order of pole (three term test) = 22.847781663231444 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1800000000000008 " "
y[1] (analytic) = 1.380924824366881 " "
y[1] (numeric) = 1.380924824366881 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.35220538288508735 " "
Order of pole (three term test) = 22.85489627818106 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.1900000000000008 " "
y[1] (analytic) = 1.3716598722605322 " "
y[1] (numeric) = 1.3716598722605322 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.34503749177846765 " "
Order of pole (three term test) = 22.861868939351286 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2000000000000008 " "
y[1] (analytic) = 1.3623577544766727 " "
y[1] (numeric) = 1.3623577544766727 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3377315902755748 " "
Order of pole (three term test) = 22.86869685777062 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2100000000000009 " "
y[1] (analytic) = 1.3530194012193295 " "
y[1] (numeric) = 1.3530194012193295 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.33029060063959964 " "
Order of pole (three term test) = 22.875377302362747 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2200000000000009 " "
y[1] (analytic) = 1.3436457463160463 " "
y[1] (numeric) = 1.3436457463160463 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3227174991671845 " "
Order of pole (three term test) = 22.88190760103889 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2300000000000009 " "
y[1] (analytic) = 1.3342377271245018 " "
y[1] (numeric) = 1.3342377271245018 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3150153149979452 " "
Order of pole (three term test) = 22.88828514176664 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2400000000000009 " "
y[1] (analytic) = 1.3247962844387753 " "
y[1] (numeric) = 1.3247962844387755 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.676066030175320500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.3071871289028552 " "
Order of pole (three term test) = 22.89450737361477 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.2500000000000009 " "
y[1] (analytic) = 1.315322362395268 " "
y[1] (numeric) = 1.315322362395268 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2992360720519778 " "
Order of pole (three term test) = 22.900571807773474 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.260000000000001 " "
y[1] (analytic) = 1.3058169083782885 " "
y[1] (numeric) = 1.3058169083782885 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.29116532476204 " "
Order of pole (three term test) = 22.906476018549945 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.270000000000001 " "
y[1] (analytic) = 1.296280872925318 " "
y[1] (numeric) = 1.296280872925318 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2829781152243507 " "
Order of pole (three term test) = 22.91221764433861 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.280000000000001 " "
y[1] (analytic) = 1.2867152096319545 " "
y[1] (numeric) = 1.2867152096319547 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.725670165883434200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.27467771821356274 " "
Order of pole (three term test) = 22.917794388565703 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.290000000000001 " "
y[1] (analytic) = 1.2771208750565568 " "
y[1] (numeric) = 1.2771208750565568 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.26626745377780997 " "
Order of pole (three term test) = 22.92320402060789 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.300000000000001 " "
y[1] (analytic) = 1.2674988286245865 " "
y[1] (numeric) = 1.2674988286245865 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.25775068591073125 " "
Order of pole (three term test) = 22.928444376684475 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.310000000000001 " "
y[1] (analytic) = 1.2578500325326687 " "
y[1] (numeric) = 1.2578500325326687 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2491308212059186 " "
Order of pole (three term test) = 22.933513360722902 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.320000000000001 " "
y[1] (analytic) = 1.248175451652372 " "
y[1] (numeric) = 1.248175451652372 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2404113074943233 " "
Order of pole (three term test) = 22.93840894519714 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.330000000000001 " "
y[1] (analytic) = 1.2384760534337222 " "
y[1] (numeric) = 1.2384760534337222 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.23159563246517187 " "
Order of pole (three term test) = 22.94312917193868 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.340000000000001 " "
y[1] (analytic) = 1.2287528078084584 " "
y[1] (numeric) = 1.2287528078084584 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2226873222709348 " "
Order of pole (three term test) = 22.947672152919743 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.350000000000001 " "
y[1] (analytic) = 1.2190066870930407 " "
y[1] (numeric) = 1.2190066870930405 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.821520810968970400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.2136899401169142 " "
Order of pole (three term test) = 22.952036071008536 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.360000000000001 " "
y[1] (analytic) = 1.2092386658914185 " "
y[1] (numeric) = 1.2092386658914183 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.836234741645032800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.20460708483600787 " "
Order of pole (three term test) = 22.956219180695985 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.370000000000001 " "
y[1] (analytic) = 1.199449720997572 " "
y[1] (numeric) = 1.1994497209975719 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.851220614235990500000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.19544238944922532 " "
Order of pole (three term test) = 22.960219808793994 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.380000000000001 " "
y[1] (analytic) = 1.1896408312978335 " "
y[1] (numeric) = 1.1896408312978333 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.86648439666275300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.1861995197125269 " "
Order of pole (three term test) = 22.96403635510467 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.390000000000001 " "
y[1] (analytic) = 1.1798129776729984 " "
y[1] (numeric) = 1.1798129776729984 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.1768821726505705 " "
Order of pole (three term test) = 22.967667293060373 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.400000000000001 " "
y[1] (analytic) = 1.1699671429002398 " "
y[1] (numeric) = 1.1699671429002398 " "
absolute error = 0.0 " "
relative error = 0.0 "%"
Correct digits = 16
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.16749407507795158 " "
Order of pole (three term test) = 22.971111170334332 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.410000000000001 " "
y[1] (analytic) = 1.1601043115548302 " "
y[1] (numeric) = 1.16010431155483 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.914005514102744600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.15803898210852593 " "
Order of pole (three term test) = 22.97436660942156 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.420000000000001 " "
y[1] (analytic) = 1.1502254699116847 " "
y[1] (numeric) = 1.1502254699116845 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.930444167108211200000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.14852067565341515 " "
Order of pole (three term test) = 22.97743230818981 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.430000000000001 " "
y[1] (analytic) = 1.1403316058467357 " "
y[1] (numeric) = 1.1403316058467354 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.94719328822036380000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.13894296290829242 " "
Order of pole (three term test) = 22.980307040400476 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.440000000000001 " "
y[1] (analytic) = 1.1304237087381444 " "
y[1] (numeric) = 1.1304237087381441 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.964259977994380300000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.12930967483055433 " "
Order of pole (three term test) = 22.982989656198992 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.450000000000001 " "
y[1] (analytic) = 1.1205027693673655 " "
y[1] (numeric) = 1.1205027693673653 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.981651549602126000000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.11962466460699016 " "
Order of pole (three term test) = 22.985479082574802 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.460000000000001 " "
y[1] (analytic) = 1.1105697798200684 " "
y[1] (numeric) = 1.1105697798200682 " "
absolute error = 2.2204460492503130000000000000000E-16 " "
relative error = 1.99937553641164600000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.10989180611255742 " "
Order of pole (three term test) = 22.98777432379054 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.470000000000001 " "
y[1] (analytic) = 1.1006257333869307 " "
y[1] (numeric) = 1.1006257333869303 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 4.03487939977086400000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 0.10011499236088421 " "
Order of pole (three term test) = 22.989874461780342 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.480000000000001 " "
y[1] (analytic) = 1.0906716244643087 " "
y[1] (numeric) = 1.0906716244643082 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 4.07170407562569800000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 9.02981339471153700E-2 " "
Order of pole (three term test) = 22.991778656517 " "
"NO COMPLEX POLE (six term test) for Equation 1"
" "
"TOP MAIN SOLVE Loop"
x[1] = 1.490000000000001 " "
y[1] (analytic) = 1.0807084484547995 " "
y[1] (numeric) = 1.080708448454799 " "
absolute error = 4.4408920985006260000000000000000E-16 " "
relative error = 4.10924158578590550000000000000E-14 "%"
Correct digits = 17
h = 1.00E-2 " "
"NO INFO (given) for Equation 1"
"NO POLE (ratio test) for Equation 1"
Radius of convergence (three term test) for eq 1 = 8.04451574837267800E-2 " "
Order of pole (three term test) = 22.99348614634802 " "
"NO COMPLEX POLE (six term test) for Equation 1"
"Finished!"
"diff ( y , x , 3 ) = sin ( x ) ; "
Iterations = 140
"Total Elapsed Time "= 7 Seconds
"Elapsed Time(since restart) "= 6 Seconds
"Time to Timeout "= 9 Minutes 52 Seconds
Percent Done = 100.7142857142858 "%"
(%o227) true
(%o227) diffeq.max