puts "APFP OP Regression Test" require_relative "rapfp/ApConfig" require_relative "rapfp/Ap" require "time" rconst = $ApConst.new rconst.one.setrconst(rconst) rconst.init2 rconst.one.setrconst(rconst) $RConst = rconst cconst = ApcConst.new(rconst) cconst.one.setcconst(cconst) cconst.one.setrconst(rconst) $CConst = cconst $pgm = File.new("testpgmop.mxt","w") $pgm.puts "global total_tests, total_exceptions:" $pgm.puts "mstart := trunc(time()*1000.0):" $pgm.puts "rstart := #{Time.now.to_i}*1000:" t = Process.times $pgm.puts "rcpuustart := #{t.utime}*1000:" $pgm.puts "rcpusstart := #{t.stime}*1000:" $pgm.puts "total_tests := 0:" $pgm.puts "total_exceptions := 0:" $pgm.puts "hours_elapsed := proc(msec)" $pgm.puts "local hrs:" $pgm.puts "hrs := trunc(evalf(msec/3600000)):" $pgm.puts "hrs :" $pgm.puts "end:" $pgm.puts "min_elapsed := proc(hrs,msec)" $pgm.puts "local min2:" $pgm.puts "min2 := trunc(evalf((msec-hrs*3600000)/60000)):" $pgm.puts "min2:" $pgm.puts "end:" $pgm.puts "sec_elapsed := proc(hrs,min2,msec)" $pgm.puts "local sec2:" $pgm.puts "sec2 := trunc(evalf((msec - hrs*360000 - min2 * 60000)/1000)) :" $pgm.puts "sec2 :" $pgm.puts "end:" $pgm.puts "msec_elapsed := proc(hrs,min2,sec2,msec)" $pgm.puts "local msec2:" $pgm.puts "msec2 := msec - hrs*3600000 - min2 * 60000 - sec2 * 1000:" $pgm.puts "msec2 :" $pgm.puts "end:" $pgm.puts "dump_except := proc(opname,x,y,fxm,fxr,fxrerr,percent_error,abs_error,except_fd,differentialm,x_start_err,_y_start_err)" $pgm.puts "global total_tests, total_exceptions;" $pgm.puts "total_exceptions := total_exceptions + 1;" $pgm.puts "fprintf(except_fd,\"EXCEPTION: Operator = %s \\n\",opname);" $pgm.puts "fprintf(except_fd,\"x = %40.34e\\n\",x);" $pgm.puts "fprintf(except_fd,\"error given in x = %40.34e\\n\",x_start_err);" $pgm.puts "fprintf(except_fd,\"y = %40.34e\\n\",y);" $pgm.puts "fprintf(except_fd,\"error given in y = %40.34e\\n\",y_start_err);" $pgm.puts "fprintf(except_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(except_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(except_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(except_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(except_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(except_fd,\"Maple Differential = %40.34e\\n\",differentialm):" $pgm.puts "fprintf(except_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "end:" $pgm.puts "out_fd := fopen(`apoptst.txt`,WRITE,TEXT):" $pgm.puts "except_fd := fopen(`apopexcept.txt`,WRITE,TEXT):" $pgm.puts "fprintf(except_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "Digits := 34:" puts "Operator = addition" $pgm.puts "fprintf(out_fd,\"Operator = addition\\n\"):" $pgm.puts "fprintf(except_fd,\"Operator = addition\\n\"):" # BEFORE 1st loop # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-6.0)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-6.0)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-6.0)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-6.0)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-6.0)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-6.0)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-6.0)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-6.0)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-6.0)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-6.0)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-6.0)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-6.0)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-6.0)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -6.0;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-6.0)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-6.0,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-5.2)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-5.2)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-5.2)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-5.2)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-5.2)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-5.2)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-5.2)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-5.2)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-5.2)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-5.2)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-5.2)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-5.2)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-5.2)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -5.2;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-5.2)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-5.2,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-4.4)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-4.4)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-4.4)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-4.4)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-4.4)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-4.4)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-4.4)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-4.4)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-4.4)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-4.4)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-4.4)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-4.4)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-4.4)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -4.4;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-4.4)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-4.4,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-3.6000000000000005)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-3.6000000000000005)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-3.6000000000000005)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-3.6000000000000005)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-3.6000000000000005)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-3.6000000000000005)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-3.6000000000000005)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-3.6000000000000005)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-3.6000000000000005,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.8000000000000007)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.8000000000000007)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.8000000000000007)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.8000000000000007)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.8000000000000007)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.8000000000000007)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.8000000000000007)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.8000000000000007)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.8000000000000007,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.000000000000001)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.000000000000001)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.000000000000001)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.000000000000001)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.000000000000001)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.000000000000001)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.000000000000001)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.000000000000001)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.000000000000001)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.000000000000001)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.000000000000001)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.000000000000001)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.000000000000001)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.000000000000001)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-2.000000000000001,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-1.2000000000000008)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-1.2000000000000008)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-1.2000000000000008)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-1.2000000000000008)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-1.2000000000000008)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-1.2000000000000008)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-1.2000000000000008)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-1.2000000000000008)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-1.2000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-0.4000000000000008)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-0.4000000000000008)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-0.4000000000000008)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-0.4000000000000008)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-0.4000000000000008)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-0.4000000000000008)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-0.4000000000000008)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-0.4000000000000008)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,-0.4000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (0.39999999999999925)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (0.39999999999999925)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (0.39999999999999925)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (0.39999999999999925)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (0.39999999999999925)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (0.39999999999999925)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (0.39999999999999925)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (0.39999999999999925)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (0.39999999999999925)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (0.39999999999999925)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (0.39999999999999925)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (0.39999999999999925)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (0.39999999999999925)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (0.39999999999999925)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,0.39999999999999925,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.1999999999999993)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.1999999999999993)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.1999999999999993)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.1999999999999993)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.1999999999999993)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.1999999999999993)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.1999999999999993)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.1999999999999993)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.1999999999999993)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.1999999999999993)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.1999999999999993)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.1999999999999993)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.1999999999999993)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.1999999999999993)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.1999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.9999999999999993)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.9999999999999993)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.9999999999999993)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.9999999999999993)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.9999999999999993)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.9999999999999993)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.9999999999999993)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.9999999999999993)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.9999999999999993)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.9999999999999993)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.9999999999999993)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.9999999999999993)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.9999999999999993)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.9999999999999993)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,1.9999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (2.7999999999999994)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (2.7999999999999994)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (2.7999999999999994)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (2.7999999999999994)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (2.7999999999999994)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (2.7999999999999994)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (2.7999999999999994)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (2.7999999999999994)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (2.7999999999999994)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (2.7999999999999994)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (2.7999999999999994)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (2.7999999999999994)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (2.7999999999999994)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (2.7999999999999994)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,2.7999999999999994,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (3.5999999999999996)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (3.5999999999999996)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (3.5999999999999996)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (3.5999999999999996)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (3.5999999999999996)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (3.5999999999999996)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (3.5999999999999996)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (3.5999999999999996)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (3.5999999999999996)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (3.5999999999999996)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (3.5999999999999996)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (3.5999999999999996)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (3.5999999999999996)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (3.5999999999999996)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,3.5999999999999996,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (4.3999999999999995)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (4.3999999999999995)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (4.3999999999999995)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (4.3999999999999995)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (4.3999999999999995)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (4.3999999999999995)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (4.3999999999999995)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (4.3999999999999995)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (4.3999999999999995)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (4.3999999999999995)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (4.3999999999999995)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (4.3999999999999995)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (4.3999999999999995)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (4.3999999999999995)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,4.3999999999999995,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.199999999999999)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.199999999999999)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.199999999999999)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.199999999999999)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.199999999999999)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.199999999999999)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.199999999999999)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.199999999999999)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.199999999999999)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.199999999999999)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.199999999999999)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.199999999999999)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.199999999999999)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.199999999999999)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.199999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.999999999999999)+(-6.0);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.999999999999999)+(-5.1);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.999999999999999)+(-4.199999999999999);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.999999999999999)+(-3.2999999999999994);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.999999999999999)+(-2.3999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.999999999999999)+(-1.4999999999999996);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.999999999999999)+(-0.5999999999999995);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.999999999999999)+(0.3000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.999999999999999)+(1.2000000000000006);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.999999999999999)+(2.1000000000000005);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.999999999999999)+(3.0000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.999999999999999)+(3.9000000000000004);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.999999999999999)+(4.800000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for + $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = addition \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr + yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.999999999999999)+(5.700000000000001);" $pgm.puts "fffx := x -> x +y;" $pgm.puts "fffy := y -> x +y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(addition,5.999999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." puts "Operator = subtraction" $pgm.puts "fprintf(out_fd,\"Operator = subtraction\\n\"):" $pgm.puts "fprintf(except_fd,\"Operator = subtraction\\n\"):" # BEFORE 1st loop # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-6.0)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-6.0)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-6.0)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-6.0)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-6.0)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-6.0)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-6.0)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-6.0)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-6.0)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-6.0)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-6.0)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-6.0)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-6.0)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -6.0;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-6.0)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-6.0,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-5.2)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-5.2)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-5.2)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-5.2)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-5.2)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-5.2)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-5.2)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-5.2)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-5.2)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-5.2)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-5.2)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-5.2)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-5.2)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -5.2;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-5.2)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-5.2,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-4.4)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-4.4)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-4.4)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-4.4)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-4.4)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-4.4)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-4.4)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-4.4)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-4.4)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-4.4)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-4.4)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-4.4)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-4.4)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -4.4;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-4.4)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-4.4,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-3.6000000000000005)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-3.6000000000000005)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-3.6000000000000005)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-3.6000000000000005)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-3.6000000000000005)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-3.6000000000000005)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-3.6000000000000005)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-3.6000000000000005)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-3.6000000000000005,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.8000000000000007)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.8000000000000007)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.8000000000000007)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.8000000000000007)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.8000000000000007)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.8000000000000007)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.8000000000000007)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.8000000000000007)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.8000000000000007,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.000000000000001)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.000000000000001)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.000000000000001)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.000000000000001)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.000000000000001)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.000000000000001)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.000000000000001)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.000000000000001)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.000000000000001)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.000000000000001)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.000000000000001)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.000000000000001)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.000000000000001)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.000000000000001)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-2.000000000000001,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-1.2000000000000008)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-1.2000000000000008)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-1.2000000000000008)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-1.2000000000000008)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-1.2000000000000008)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-1.2000000000000008)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-1.2000000000000008)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-1.2000000000000008)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-1.2000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-0.4000000000000008)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-0.4000000000000008)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-0.4000000000000008)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-0.4000000000000008)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-0.4000000000000008)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-0.4000000000000008)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-0.4000000000000008)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-0.4000000000000008)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,-0.4000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (0.39999999999999925)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (0.39999999999999925)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (0.39999999999999925)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (0.39999999999999925)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (0.39999999999999925)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (0.39999999999999925)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (0.39999999999999925)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (0.39999999999999925)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (0.39999999999999925)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (0.39999999999999925)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (0.39999999999999925)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (0.39999999999999925)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (0.39999999999999925)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (0.39999999999999925)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,0.39999999999999925,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.1999999999999993)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.1999999999999993)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.1999999999999993)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.1999999999999993)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.1999999999999993)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.1999999999999993)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.1999999999999993)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.1999999999999993)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.1999999999999993)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.1999999999999993)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.1999999999999993)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.1999999999999993)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.1999999999999993)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.1999999999999993)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.1999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.9999999999999993)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.9999999999999993)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.9999999999999993)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.9999999999999993)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.9999999999999993)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.9999999999999993)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.9999999999999993)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.9999999999999993)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.9999999999999993)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.9999999999999993)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.9999999999999993)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.9999999999999993)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.9999999999999993)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.9999999999999993)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,1.9999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (2.7999999999999994)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (2.7999999999999994)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (2.7999999999999994)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (2.7999999999999994)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (2.7999999999999994)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (2.7999999999999994)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (2.7999999999999994)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (2.7999999999999994)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (2.7999999999999994)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (2.7999999999999994)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (2.7999999999999994)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (2.7999999999999994)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (2.7999999999999994)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (2.7999999999999994)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,2.7999999999999994,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (3.5999999999999996)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (3.5999999999999996)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (3.5999999999999996)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (3.5999999999999996)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (3.5999999999999996)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (3.5999999999999996)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (3.5999999999999996)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (3.5999999999999996)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (3.5999999999999996)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (3.5999999999999996)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (3.5999999999999996)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (3.5999999999999996)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (3.5999999999999996)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (3.5999999999999996)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,3.5999999999999996,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (4.3999999999999995)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (4.3999999999999995)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (4.3999999999999995)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (4.3999999999999995)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (4.3999999999999995)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (4.3999999999999995)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (4.3999999999999995)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (4.3999999999999995)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (4.3999999999999995)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (4.3999999999999995)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (4.3999999999999995)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (4.3999999999999995)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (4.3999999999999995)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (4.3999999999999995)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,4.3999999999999995,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.199999999999999)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.199999999999999)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.199999999999999)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.199999999999999)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.199999999999999)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.199999999999999)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.199999999999999)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.199999999999999)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.199999999999999)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.199999999999999)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.199999999999999)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.199999999999999)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.199999999999999)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.199999999999999)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.199999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.999999999999999)-(-6.0);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.999999999999999)-(-5.1);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.999999999999999)-(-4.199999999999999);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.999999999999999)-(-3.2999999999999994);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.999999999999999)-(-2.3999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.999999999999999)-(-1.4999999999999996);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.999999999999999)-(-0.5999999999999995);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.999999999999999)-(0.3000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.999999999999999)-(1.2000000000000006);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.999999999999999)-(2.1000000000000005);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.999999999999999)-(3.0000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.999999999999999)-(3.9000000000000004);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.999999999999999)-(4.800000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for - $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = subtraction \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr - yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.999999999999999)-(5.700000000000001);" $pgm.puts "fffx := x -> x -y;" $pgm.puts "fffy := y -> x -y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(subtraction,5.999999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." puts "Operator = multiplication" $pgm.puts "fprintf(out_fd,\"Operator = multiplication\\n\"):" $pgm.puts "fprintf(except_fd,\"Operator = multiplication\\n\"):" # BEFORE 1st loop # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-6.0)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-6.0)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-6.0)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-6.0)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-6.0)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-6.0)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-6.0)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-6.0)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-6.0)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-6.0)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-6.0)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-6.0)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-6.0)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -6.0;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-6.0)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-6.0,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-5.2)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-5.2)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-5.2)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-5.2)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-5.2)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-5.2)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-5.2)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-5.2)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-5.2)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-5.2)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-5.2)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-5.2)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-5.2)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -5.2;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-5.2)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-5.2,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-4.4)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-4.4)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-4.4)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-4.4)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-4.4)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-4.4)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-4.4)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-4.4)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-4.4)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-4.4)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-4.4)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-4.4)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-4.4)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -4.4;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-4.4)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-4.4,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-3.6000000000000005)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-3.6000000000000005)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-3.6000000000000005)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-3.6000000000000005)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-3.6000000000000005)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-3.6000000000000005)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-3.6000000000000005)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-3.6000000000000005)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-3.6000000000000005,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.8000000000000007)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.8000000000000007)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.8000000000000007)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.8000000000000007)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.8000000000000007)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.8000000000000007)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.8000000000000007)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.8000000000000007)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.8000000000000007,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.000000000000001)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.000000000000001)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.000000000000001)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.000000000000001)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.000000000000001)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.000000000000001)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.000000000000001)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.000000000000001)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.000000000000001)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.000000000000001)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.000000000000001)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.000000000000001)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.000000000000001)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.000000000000001)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-2.000000000000001,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-1.2000000000000008)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-1.2000000000000008)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-1.2000000000000008)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-1.2000000000000008)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-1.2000000000000008)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-1.2000000000000008)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-1.2000000000000008)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-1.2000000000000008)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-1.2000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-0.4000000000000008)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-0.4000000000000008)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-0.4000000000000008)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-0.4000000000000008)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-0.4000000000000008)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-0.4000000000000008)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-0.4000000000000008)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-0.4000000000000008)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,-0.4000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (0.39999999999999925)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (0.39999999999999925)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (0.39999999999999925)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (0.39999999999999925)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (0.39999999999999925)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (0.39999999999999925)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (0.39999999999999925)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (0.39999999999999925)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (0.39999999999999925)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (0.39999999999999925)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (0.39999999999999925)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (0.39999999999999925)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (0.39999999999999925)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (0.39999999999999925)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,0.39999999999999925,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.1999999999999993)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.1999999999999993)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.1999999999999993)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.1999999999999993)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.1999999999999993)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.1999999999999993)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.1999999999999993)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.1999999999999993)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.1999999999999993)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.1999999999999993)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.1999999999999993)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.1999999999999993)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.1999999999999993)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.1999999999999993)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.1999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.9999999999999993)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.9999999999999993)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.9999999999999993)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.9999999999999993)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.9999999999999993)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.9999999999999993)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.9999999999999993)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.9999999999999993)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.9999999999999993)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.9999999999999993)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.9999999999999993)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.9999999999999993)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.9999999999999993)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.9999999999999993)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,1.9999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (2.7999999999999994)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (2.7999999999999994)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (2.7999999999999994)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (2.7999999999999994)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (2.7999999999999994)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (2.7999999999999994)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (2.7999999999999994)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (2.7999999999999994)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (2.7999999999999994)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (2.7999999999999994)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (2.7999999999999994)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (2.7999999999999994)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (2.7999999999999994)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (2.7999999999999994)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,2.7999999999999994,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (3.5999999999999996)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (3.5999999999999996)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (3.5999999999999996)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (3.5999999999999996)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (3.5999999999999996)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (3.5999999999999996)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (3.5999999999999996)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (3.5999999999999996)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (3.5999999999999996)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (3.5999999999999996)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (3.5999999999999996)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (3.5999999999999996)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (3.5999999999999996)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (3.5999999999999996)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,3.5999999999999996,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (4.3999999999999995)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (4.3999999999999995)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (4.3999999999999995)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (4.3999999999999995)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (4.3999999999999995)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (4.3999999999999995)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (4.3999999999999995)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (4.3999999999999995)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (4.3999999999999995)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (4.3999999999999995)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (4.3999999999999995)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (4.3999999999999995)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (4.3999999999999995)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (4.3999999999999995)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,4.3999999999999995,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.199999999999999)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.199999999999999)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.199999999999999)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.199999999999999)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.199999999999999)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.199999999999999)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.199999999999999)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.199999999999999)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.199999999999999)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.199999999999999)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.199999999999999)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.199999999999999)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.199999999999999)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.199999999999999)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.199999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.999999999999999)*(-6.0);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.999999999999999)*(-5.1);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.999999999999999)*(-4.199999999999999);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.999999999999999)*(-3.2999999999999994);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.999999999999999)*(-2.3999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.999999999999999)*(-1.4999999999999996);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.999999999999999)*(-0.5999999999999995);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.999999999999999)*(0.3000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.999999999999999)*(1.2000000000000006);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.999999999999999)*(2.1000000000000005);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.999999999999999)*(3.0000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.999999999999999)*(3.9000000000000004);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.999999999999999)*(4.800000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for * $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = multiplication \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr * yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.999999999999999)*(5.700000000000001);" $pgm.puts "fffx := x -> x *y;" $pgm.puts "fffy := y -> x *y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(multiplication,5.999999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." puts "Operator = division" $pgm.puts "fprintf(out_fd,\"Operator = division\\n\"):" $pgm.puts "fprintf(except_fd,\"Operator = division\\n\"):" # BEFORE 1st loop # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-6.0)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-6.0)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-6.0)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-6.0)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-6.0)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-6.0)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-6.0)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-6.0)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-6.0)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-6.0)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-6.0)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-6.0)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-6.0)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-6.0+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -6.0;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-6.0)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-6.0)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-6.0,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-5.2)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-5.2)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-5.2)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-5.2)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-5.2)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-5.2)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-5.2)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-5.2)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-5.2)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-5.2)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-5.2)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-5.2)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-5.2)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-5.2+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -5.2;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-5.2)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-5.2)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-5.2,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -5.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-4.4)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-4.4)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-4.4)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-4.4)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-4.4)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-4.4)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-4.4)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-4.4)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-4.4)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-4.4)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-4.4)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-4.4)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-4.4)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-4.4+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -4.4;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-4.4)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-4.4)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-4.4,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -4.4\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-3.6000000000000005)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-3.6000000000000005)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-3.6000000000000005)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-3.6000000000000005)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-3.6000000000000005)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-3.6000000000000005)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-3.6000000000000005)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-3.6000000000000005)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-3.6000000000000005)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-3.6000000000000005)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-3.6000000000000005+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -3.6000000000000005;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-3.6000000000000005)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-3.6000000000000005)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-3.6000000000000005,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -3.6000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.8000000000000007)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.8000000000000007)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.8000000000000007)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.8000000000000007)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.8000000000000007)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.8000000000000007)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.8000000000000007)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.8000000000000007)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.8000000000000007)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.8000000000000007)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.8000000000000007+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.8000000000000007;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.8000000000000007)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.8000000000000007)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.8000000000000007,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.8000000000000007\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-2.000000000000001)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-2.000000000000001)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-2.000000000000001)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-2.000000000000001)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-2.000000000000001)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-2.000000000000001)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-2.000000000000001)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-2.000000000000001)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-2.000000000000001)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-2.000000000000001)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-2.000000000000001)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-2.000000000000001)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-2.000000000000001)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-2.000000000000001+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -2.000000000000001;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-2.000000000000001)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-2.000000000000001)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-2.000000000000001,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -2.000000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-1.2000000000000008)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-1.2000000000000008)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-1.2000000000000008)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-1.2000000000000008)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-1.2000000000000008)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-1.2000000000000008)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-1.2000000000000008)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-1.2000000000000008)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-1.2000000000000008)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-1.2000000000000008)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-1.2000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -1.2000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-1.2000000000000008)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-1.2000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-1.2000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -1.2000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (-0.4000000000000008)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (-0.4000000000000008)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (-0.4000000000000008)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (-0.4000000000000008)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (-0.4000000000000008)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (-0.4000000000000008)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (-0.4000000000000008)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (-0.4000000000000008)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (-0.4000000000000008)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (-0.4000000000000008)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("-0.4000000000000008+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := -0.4000000000000008;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (-0.4000000000000008)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(-0.4000000000000008)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,-0.4000000000000008,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = -0.4000000000000008\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (0.39999999999999925)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (0.39999999999999925)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (0.39999999999999925)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (0.39999999999999925)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (0.39999999999999925)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (0.39999999999999925)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (0.39999999999999925)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (0.39999999999999925)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (0.39999999999999925)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (0.39999999999999925)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (0.39999999999999925)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (0.39999999999999925)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (0.39999999999999925)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("0.39999999999999925+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 0.39999999999999925;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (0.39999999999999925)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(0.39999999999999925)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,0.39999999999999925,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 0.39999999999999925\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.1999999999999993)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.1999999999999993)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.1999999999999993)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.1999999999999993)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.1999999999999993)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.1999999999999993)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.1999999999999993)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.1999999999999993)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.1999999999999993)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.1999999999999993)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.1999999999999993)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.1999999999999993)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.1999999999999993)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.1999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.1999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.1999999999999993)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.1999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.1999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.1999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (1.9999999999999993)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (1.9999999999999993)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (1.9999999999999993)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (1.9999999999999993)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (1.9999999999999993)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (1.9999999999999993)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (1.9999999999999993)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (1.9999999999999993)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (1.9999999999999993)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (1.9999999999999993)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (1.9999999999999993)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (1.9999999999999993)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (1.9999999999999993)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("1.9999999999999993+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 1.9999999999999993;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (1.9999999999999993)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.9999999999999993)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,1.9999999999999993,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.9999999999999993\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (2.7999999999999994)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (2.7999999999999994)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (2.7999999999999994)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (2.7999999999999994)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (2.7999999999999994)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (2.7999999999999994)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (2.7999999999999994)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (2.7999999999999994)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (2.7999999999999994)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (2.7999999999999994)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (2.7999999999999994)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (2.7999999999999994)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (2.7999999999999994)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("2.7999999999999994+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 2.7999999999999994;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (2.7999999999999994)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.7999999999999994)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,2.7999999999999994,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.7999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (3.5999999999999996)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (3.5999999999999996)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (3.5999999999999996)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (3.5999999999999996)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (3.5999999999999996)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (3.5999999999999996)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (3.5999999999999996)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (3.5999999999999996)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (3.5999999999999996)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (3.5999999999999996)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (3.5999999999999996)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (3.5999999999999996)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (3.5999999999999996)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("3.5999999999999996+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 3.5999999999999996;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (3.5999999999999996)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.5999999999999996)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,3.5999999999999996,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.5999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (4.3999999999999995)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (4.3999999999999995)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (4.3999999999999995)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (4.3999999999999995)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (4.3999999999999995)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (4.3999999999999995)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (4.3999999999999995)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (4.3999999999999995)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (4.3999999999999995)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (4.3999999999999995)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (4.3999999999999995)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (4.3999999999999995)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (4.3999999999999995)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("4.3999999999999995+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 4.3999999999999995;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (4.3999999999999995)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.3999999999999995)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,4.3999999999999995,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.199999999999999)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.199999999999999)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.199999999999999)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.199999999999999)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.199999999999999)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.199999999999999)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.199999999999999)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.199999999999999)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.199999999999999)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.199999999999999)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.199999999999999)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.199999999999999)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.199999999999999)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.199999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.199999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.199999999999999)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.199999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.199999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-6.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -6.0;" $pgm.puts "fxm := (5.999999999999999)/(-6.0);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-6.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-6.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -6.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-5.1+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -5.1;" $pgm.puts "fxm := (5.999999999999999)/(-5.1);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-5.1)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-5.1,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -5.1\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-4.199999999999999+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -4.199999999999999;" $pgm.puts "fxm := (5.999999999999999)/(-4.199999999999999);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-4.199999999999999)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-4.199999999999999,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -4.199999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-3.2999999999999994+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -3.2999999999999994;" $pgm.puts "fxm := (5.999999999999999)/(-3.2999999999999994);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-3.2999999999999994)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-3.2999999999999994,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -3.2999999999999994\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-2.3999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -2.3999999999999995;" $pgm.puts "fxm := (5.999999999999999)/(-2.3999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-2.3999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-2.3999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -2.3999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-1.4999999999999996+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -1.4999999999999996;" $pgm.puts "fxm := (5.999999999999999)/(-1.4999999999999996);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-1.4999999999999996)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-1.4999999999999996,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -1.4999999999999996\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("-0.5999999999999995+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := -0.5999999999999995;" $pgm.puts "fxm := (5.999999999999999)/(-0.5999999999999995);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(-0.5999999999999995)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,-0.5999999999999995,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = -0.5999999999999995\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("0.3000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 0.3000000000000005;" $pgm.puts "fxm := (5.999999999999999)/(0.3000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(0.3000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,0.3000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 0.3000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("1.2000000000000006+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 1.2000000000000006;" $pgm.puts "fxm := (5.999999999999999)/(1.2000000000000006);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(1.2000000000000006)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,1.2000000000000006,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.2000000000000006\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("2.1000000000000005+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 2.1000000000000005;" $pgm.puts "fxm := (5.999999999999999)/(2.1000000000000005);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(2.1000000000000005)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,2.1000000000000005,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.1000000000000005\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.0000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.0000000000000004;" $pgm.puts "fxm := (5.999999999999999)/(3.0000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.0000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,3.0000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.0000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("3.9000000000000004+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 3.9000000000000004;" $pgm.puts "fxm := (5.999999999999999)/(3.9000000000000004);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(3.9000000000000004)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,3.9000000000000004,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.9000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("4.800000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 4.800000000000001;" $pgm.puts "fxm := (5.999999999999999)/(4.800000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(4.800000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,4.800000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.800000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for / $pgm.puts "local except_flg:" xr = ap_in("5.999999999999999+/-0.1e-12") yr = ap_in("5.700000000000001+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = division \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr / yr $pgm.puts "x := 5.999999999999999;" $pgm.puts "y := 5.700000000000001;" $pgm.puts "fxm := (5.999999999999999)/(5.700000000000001);" $pgm.puts "fffx := x -> x /y;" $pgm.puts "fffy := y -> x /y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.999999999999999)) * x_start_err) + abs(evalf(gggy(5.700000000000001)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(division,5.999999999999999,5.700000000000001,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.999999999999999\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.700000000000001\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." puts "Operator = exponentiation" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation\\n\"):" $pgm.puts "fprintf(except_fd,\"Operator = exponentiation\\n\"):" # BEFORE 1st loop # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (1.0)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (1.0)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (1.0)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (1.0)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (1.0)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (1.0)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.0+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.0;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (1.0)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.0)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.0,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (1.8)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (1.8)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (1.8)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (1.8)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (1.8)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (1.8)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("1.8+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 1.8;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (1.8)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(1.8)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,1.8,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 1.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (2.6)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (2.6)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (2.6)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (2.6)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (2.6)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (2.6)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("2.6+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 2.6;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (2.6)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(2.6)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,2.6,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 2.6\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (3.4000000000000004)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (3.4000000000000004)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (3.4000000000000004)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (3.4000000000000004)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (3.4000000000000004)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (3.4000000000000004)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("3.4000000000000004+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 3.4000000000000004;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (3.4000000000000004)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(3.4000000000000004)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,3.4000000000000004,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 3.4000000000000004\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (4.2)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (4.2)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (4.2)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (4.2)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (4.2)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (4.2)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("4.2+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 4.2;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (4.2)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(4.2)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,4.2,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 4.2\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (5.0)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (5.0)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (5.0)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (5.0)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (5.0)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (5.0)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.0+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.0;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (5.0)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.0)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.0,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.0\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE 2nd loop # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("1.0+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 1.0;" $pgm.puts "fxm := (5.8)^(1.0);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(1.0)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,1.0,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.0\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("1.9+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 1.9;" $pgm.puts "fxm := (5.8)^(1.9);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(1.9)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,1.9,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 1.9\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("2.8+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 2.8;" $pgm.puts "fxm := (5.8)^(2.8);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(2.8)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,2.8,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 2.8\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("3.6999999999999997+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 3.6999999999999997;" $pgm.puts "fxm := (5.8)^(3.6999999999999997);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(3.6999999999999997)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,3.6999999999999997,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 3.6999999999999997\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("4.6+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 4.6;" $pgm.puts "fxm := (5.8)^(4.6);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(4.6)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,4.6,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 4.6\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("5.5+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 5.5;" $pgm.puts "fxm := (5.8)^(5.5);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(5.5)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,5.5,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 5.5\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." # BEFORE TEST for ^ $pgm.puts "local except_flg:" xr = ap_in("5.8+/-0.1e-12") yr = ap_in("6.4+/-0.1e-19") $pgm.puts "x_start_err := 0.1e-12;" $pgm.puts "y_start_err := 0.1e-19;" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fprintf(out_fd,\"Operator = exponentiation \\n\"):" $pgm.puts "total_tests := total_tests + 1;" fxr = xr ** yr $pgm.puts "x := 5.8;" $pgm.puts "y := 6.4;" $pgm.puts "fxm := (5.8)^(6.4);" $pgm.puts "fffx := x -> x ^y;" $pgm.puts "fffy := y -> x ^y;" $pgm.puts "gggx := D(fffx);" $pgm.puts "gggy := D(fffy);" $pgm.puts "differentialm := abs(evalf(gggx(5.8)) * x_start_err) + abs(evalf(gggy(6.4)) * y_start_err);" $pgm.puts "fxr2 := #{fxr.to_s_main};" $pgm.puts "fxrerr := #{fxr.to_s_err};" $pgm.puts "fxr := fxr2;" $pgm.puts "abs_err := abs(fxm - fxr);" $pgm.puts "except_flg := 0;" $pgm.puts "if fxm <> 0.0 then " $pgm.puts "percent_error := abs_err * 100.0 / abs(fxm): else percent_error := 0.0:" $pgm.puts "end:" $pgm.puts "if (percent_error > 1.0e-10) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"PERCENT ERROR > 1.0e-10\\n\"):" $pgm.puts "end:" $pgm.puts "if (abs_err > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ABS ERROR > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (differentialm > 1.5 * fxrerr and fxerr > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"DIFFERENTIAL > 1.5 * ESTIMATE\\n\"):" $pgm.puts "end:" $pgm.puts "if (fxrerr > 1000.0 * differentialm and differentialm > 0.0) then" $pgm.puts "except_flg := 1:" $pgm.puts "fprintf(except_fd,\"ESTIMATE > 1000.0 * DIFFERENTIAL\\n\"):" $pgm.puts "end:" $pgm.puts "if (except_flg = 1) then" $pgm.puts "dump_except(exponentiation,5.8,6.4,fxm,fxr2,fxrerr,percent_error,abs_err,except_fd,differentialm,0.1e-12,0.1e-19):" $pgm.puts "end:" $pgm.puts "fprintf(out_fd,\"x = 5.8\\n\"):" $pgm.puts "fprintf(out_fd,\"y = 6.4\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in x = 0.1e-12\\n\"):" $pgm.puts "fprintf(out_fd,\"error given in y = 0.1e-19\\n\"):" $pgm.puts "fprintf(out_fd,\"Ruby APFP value = %40.34e\\n\",fxr):" $pgm.puts "fprintf(out_fd,\"Maple value = %40.34e\\n\",fxm):" $pgm.puts "fprintf(out_fd,\"Percent Difference = %40.34e\\n\",percent_error):" $pgm.puts "fprintf(out_fd,\"Absolute Difference = %40.34e\\n\",abs_err):" $pgm.puts "fprintf(out_fd,\"Ruby APFP error estimate = %40.34e\\n\",fxrerr):" $pgm.puts "fprintf(out_fd,\"Maple Differential = %40.34e\\n\",differentialm):" putc ".." $pgm.puts "fprintf(out_fd,\"total_tests = %d\\n\",total_tests):" $pgm.puts "fprintf(out_fd,\"total_exceptions = %d\\n\",total_exceptions):" $pgm.puts "fprintf(except_fd,\"total_tests = %d\\n\",total_tests):" $pgm.puts "fprintf(except_fd,\"total_exceptions = %d\\n\",total_exceptions):" $pgm.puts "mend := trunc(time()*1000.0):" $pgm.puts "rend := #{Time.now.to_i}*1000:" t = Process.times $pgm.puts "rcpuuend := #{t.utime}*1000:" $pgm.puts "rcpusend := #{t.stime}*1000:" $pgm.puts "melapsed := trunc(evalf(mend - mstart)):" $pgm.puts "relapsed := trunc(evalf(rend - rstart)):" $pgm.puts "rcpuuelapsed := trunc(evalf(rcpuuend - rcpuustart)):" $pgm.puts "rcpuselapsed := trunc(evalf(rcpusend - rcpusstart)):" $pgm.puts "mhours := hours_elapsed(melapsed):" $pgm.puts "rhours := hours_elapsed(relapsed):" $pgm.puts "rcpuuhours := hours_elapsed(rcpuuelapsed):" $pgm.puts "rcpushours := hours_elapsed(rcpuselapsed):" $pgm.puts "mmin := min_elapsed(mhours,melapsed):" $pgm.puts "rmin := min_elapsed(rhours,relapsed):" $pgm.puts "rcpuumin := min_elapsed(rcpuuhours,rcpuuelapsed):" $pgm.puts "rcpusmin := min_elapsed(rhours,rcpuselapsed):" $pgm.puts "msec := sec_elapsed(mhours,mmin,melapsed):" $pgm.puts "rsec := sec_elapsed(rhours,rmin,relapsed):" $pgm.puts "rcpuusec := sec_elapsed(rcpuuhours,rcpuumin,rcpuuelapsed):" $pgm.puts "rcpussec := sec_elapsed(rcpushours,rcpusmin,rcpuselapsed):" $pgm.puts "mmsec := msec_elapsed(mhours,mmin,msec,melapsed):" $pgm.puts "rmsec := msec_elapsed(rhours,rmin,rsec,relapsed):" $pgm.puts "rcpuumsec := msec_elapsed(rcpuuhours,rcpuumin,rcpuusec,rcpuuelapsed):" $pgm.puts "rcpusmsec := msec_elapsed(rcpushours,rcpusmin,rcpussec,rcpuselapsed):" $pgm.puts "fprintf(out_fd,\"Maple %d hours %d minutes %d seconds %d msec CPU\\n\",mhours,mmin,msec,mmsec):" $pgm.puts "fprintf(out_fd,\"Ruby %d hours %d minutes %d seconds %d msec Clock\\n\",rhours,rmin,rsec,rmsec):" $pgm.puts "fprintf(out_fd,\"Ruby %d hours %d minutes %d seconds %d msec User CPU\\n\",rcpuuhours,rcpuumin,rcpuusec,rcpuumsec):" $pgm.puts "fprintf(out_fd,\"Ruby %d hours %d minutes %d seconds %d msec System CPU\\n\",rcpushours,rcpusmin,rcpussec,rcpusmsec):" $pgm.puts "fprintf(except_fd,\"Maple %d hours %d minutes %d seconds %d msec CPU\\n\",mhours,mmin,msec,mmsec):" $pgm.puts "fprintf(except_fd,\"Ruby %d hours %d minutes %d seconds %d msec Clock\\n\",rhours,rmin,rsec,rmsec):" $pgm.puts "fprintf(except_fd,\"Ruby %d hours %d minutes %d seconds %d msec User CPU\\n\",rcpuuhours,rcpuumin,rcpuusec,rcpuumsec):" $pgm.puts "fprintf(except_fd,\"Ruby %d hours %d minutes %d seconds %d msec System CPU\\n\",rcpushours,rcpusmin,rcpussec,rcpusmsec):" $pgm.puts "printf(\"Maple %d hours %d minutes %d seconds %d msec CPU\\n\",mhours,mmin,msec,mmsec):" $pgm.puts "printf(\"Ruby %d hours %d minutes %d seconds %d msec Clock\\n\",rhours,rmin,rsec,rmsec):" $pgm.puts "printf(\"Ruby %d hours %d minutes %d seconds %d msec User CPU\\n\",rcpuuhours,rcpuumin,rcpuusec,rcpuumsec):" $pgm.puts "printf(\"Ruby %d hours %d minutes %d seconds %d msec System CPU\\n\",rcpushours,rcpusmin,rcpussec,rcpusmsec):" $pgm.puts "fprintf(out_fd,\"___________________________________________________________________\\n\"):" $pgm.puts "fclose(out_fd):" $pgm.puts "fclose(except_fd):" puts "End of APFP Regression Test"