{VERSION 4 0 "DEC ALPHA UNIX" "4.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {PSTYLE "Normal" -1 0 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Text Output" -1 2 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 0 0 0 0 0 1 3 0 3 0 }1 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }{PSTYLE "Warning" 2 7 1 {CSTYLE "" -1 -1 " " 0 1 0 0 255 1 0 0 0 0 0 0 1 0 0 0 }0 0 0 -1 -1 -1 0 0 0 0 0 0 -1 0 } {PSTYLE "Maple Output" 0 11 1 {CSTYLE "" -1 -1 "" 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 }3 3 0 -1 -1 -1 0 0 0 0 0 0 -1 0 }} {SECT 0 {EXCHG {PARA 0 "" 0 "" {TEXT -1 1 "#" }}{PARA 0 "" 0 "" {TEXT -1 85 "# Derivation of a parametric family of 4-stage order-4 explicit Runge-Kutta formulas." }}{PARA 0 "" 0 "" {TEXT -1 38 "# Here c2=1/2 b ut c3 is unconstrained." }}{PARA 0 "" 0 "" {TEXT -1 1 "#" }}{PARA 0 " " 0 "" {TEXT -1 42 "# Use LinearAlgebra and Groebner packages." }} {PARA 0 "" 0 "" {TEXT -1 1 "#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 8 "restart;" }}{PARA 7 "" 1 "" {TEXT -1 50 "Warning, the name change coords has been redefined\n" }}{PARA 7 "" 1 "" {TEXT -1 69 "Warning, ` ODE` is implicitly declared local to procedure `readshare`\n" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 36 "with(LinearAlgebra): with(Gr oebner):" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "with(Ore_algebra):" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 1 "#" }}{PARA 0 "" 0 "" {TEXT -1 56 "# Set up Runge-Kutta coefficient arrays A, b, c (and e)." }}{PARA 0 "" 0 "" {TEXT -1 1 "#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "R := \+ poly_algebra(c3,c4,b1,b2,b3,b4,a32,a42,a43);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"RG%,Ore_algebraG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 24 "c := < 0, 1/2, c3, c4 >:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "C := DiagonalMatrix(c):" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 101 "A := << 0 | 0 | 0 | 0 >,< 1/2 | 0 | 0 | 0 >,< c3-a32 | a32 | 0 | 0 >,< c4-a42-a43 | a42 | a43 | 0 >>:" }}{PARA 0 "> " 0 " " {MPLTEXT 1 0 65 "b := < b1, b2, b3, b4 >: bT := Transpose(b): e := < 1, 1, 1, 1 >:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 2 "# " }}{PARA 0 " " 0 "" {TEXT -1 24 "# Conditions for order 4" }}{PARA 0 "" 0 "" {TEXT -1 1 "#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "rk1 := bT.e - 1: rk2 := bT.C.e - 1/2:" }{TEXT -1 0 "" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 47 "rk31 := bT.C.C.e - 1/3: rk32 := bT.A.C.e - 1/6:" }{TEXT -1 0 "" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 111 "rk41 := bT.map(x->x^3,c) - 1/4: \+ rk42 := bT.C.A.C.e - 1/8: rk43 := bT.A.C.C.e - 1/12: rk44 := bT.A.A.C. e - 1/24:" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 2 "# " }}{PARA 0 "" 0 " " {TEXT -1 52 "# F is the list of polynomials generating the ideal." } }{PARA 0 "" 0 "" {TEXT -1 83 "# T is the CAREFULLY chosen term order! \+ Unwise choice leads to lengthy computation." }}{PARA 0 "" 0 "" {TEXT -1 27 "# B2 is the Groebner basis." }}{PARA 0 "" 0 "" {TEXT -1 1 "#" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "F := [rk1,rk2,rk31,rk32,rk 41,rk42,rk43,rk44]:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 54 "T := termorder(R,plex(b1,b2,b3,b4,a32,a42,a43,c4,c3));" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%\"TG%+term_orderG" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 18 "B2 := gbasis(F,T):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 49 "for i from 1 to nops(B2) do [i,indets(B2[i])] od;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"\"<#%#c3G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"#<#%#c4G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\" \"$<%%#c3G%$a42G%$a43G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"%<$%$a 32G%$a43G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"&<#%#b4G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\"'<%%#c3G%#b3G%$a43G" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#7$\"\"(<%%#c3G%#b2G%$a43G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7$\"\")<%%#b1G%#c3G%$a43G" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 1 "#" }}{PARA 0 "" 0 "" {TEXT -1 95 "# We find that c3=0 or c 3=1/2. The latter gives the confluent c2=c3=1/2 solution already known ." }}{PARA 0 "" 0 "" {TEXT -1 73 "# Choosing c3=0 leads to a parametri zation of the solution variety by b3:" }}{PARA 0 "" 0 "" {TEXT -1 1 "# " }}{PARA 0 "" 0 "" {TEXT -1 19 "# c3 = 0, c4 = 1" }}{PARA 0 "" 0 " " {TEXT -1 19 "# a32 = 1/(12*b3)" }}{PARA 0 "" 0 "" {TEXT -1 26 "# \+ a42 = 3/2, a43 = 6*b3" }}{PARA 0 "" 0 "" {TEXT -1 39 "# b1 = 1/6 - b3, b2 = 2/3, b4 = 1/6" }}{PARA 0 "" 0 "" {TEXT -1 1 "#" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "for i from 1 to nops(B2) do factor( B2[i]) od;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#*&%#c3G\"\"\",&!\"\"F%*& \"\"#F%F$F%F%F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,&!\"\"\"\"\"%#c4GF %" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,*%$a42G\"\"#*(\"\"%\"\"\"%$a43GF (%#c3GF(F(*&F%F(F*F(F(\"\"$!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,& !\"\"\"\"\"*(\"\"#F%%$a43GF%%$a32GF%F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,&!\"\"\"\"\"*&\"\"'F%%#b4GF%F%" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,(%#b3G\"\"'*(\"\"#\"\"\"%$a43GF(%#c3GF(!\"\"F)F+" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,(%#b2G\"\"$*(\"\"#\"\"\"%$a43GF(%#c3GF(F(F'!\"\"" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#,*%#b1G\"\"'*(\"\"#\"\"\"%$a43GF(%#c3 GF(!\"\"F)F(F(F+" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "for i f rom 1 to nops(B2) do " }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 87 " simplif y(subs(c3=0,c4=1,a42=3/2,a43=6*b3,a32=1/12/b3,b1=1/6-b3,b2=2/3,b4=1/6, B2[i]))" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 4 " od;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 1 "#" }}{PARA 0 "" 0 "" {TEXT -1 44 "# Get the 5th-order trun cation error terms, " }}{PARA 0 "" 0 "" {TEXT -1 64 "# Reduce the equa tions modulo the ideal of 5th-order conditions." }}{PARA 0 "" 0 "" {TEXT -1 101 "# Observe that on the solution variety all terms except \+ the \"forked tree\" rk5[5] reduce to constants." }}{PARA 0 "" 0 "" {TEXT -1 99 "# The coefficient rk5[5] can be made 0 by choosing b3 = - 5/126. This minimizes the sum of squares " }}{PARA 0 "" 0 "" {TEXT -1 100 "# of truncation error coefficients on the solution variety. T he minimum, ~.0009, is not that small." }}{PARA 0 "" 0 "" {TEXT -1 1 " #" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "rk5 := array(1..9);" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#>%$rk5G-%&arrayG6$;\"\"\"\"\"*7\"" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "rk5[1] := bT.C.C.C.C.e - 1/ 5:" }{TEXT -1 0 "" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "rk5[2] := bT.C .C.A.C.e - 1/10:" }{TEXT -1 0 "" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 " rk5[3] := bT.C.A.C.C.e - 1/15:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "r k5[4] := bT.A.C.C.C.e - 1/20:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 38 "rk 5[5] := bT.map(x->x^2,A.C.e) - 1/20:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "rk5[6] := bT.C.A.A.C.e - 1/30:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "rk5[7] := bT.A.C.A.C.e - 1/40:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "rk5[8] := bT.A.A.C.C.e - 1/60:" }}{PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "rk5[9] := bT.A.A.A.C.e - 1/120:" }{TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 22 "redrk5 := array(1..9);" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%'redrk5G-%&arrayG6$;\"\"\"\"\"*7\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 45 "alpha_tau:= [1/24,1/2,1/2,1/6,1/2,1 ,1,1/2,1];" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%*alpha_tauG7+#\"\"\"\" #C#F'\"\"#F)#F'\"\"'F)F'F'F)F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 60 "for i from 1 to 9 do\n redrk5[i] := normalf(rk5[i],B2,T) od; " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>& %'redrk5G6#\"\"\"#F'\"$?\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redr k5G6#\"\"#,&#\"\"\"\"#SF**&#F*\"#CF*%#c3GF*!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"$#!\"\"\"$S#" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"%#!\"\"\"$?\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"&,*#\"\"(\"$g\"\"\"\"*&#F'\"#[F,%#c3GF ,!\"\"*(#F,\"#CF,F0F,%$a32GF,F,*&#F,F/F,F5F,F," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"'#\"\"\"\"$?\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"(,&#!\"\"\"#S\"\"\"*&#F,\"#CF,%#c3GF,F ," }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\")#\"\"\"\"$S#" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#>&%'redrk5G6#\"\"*#!\"\"\"$?\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 84 "t5sq := simplify(subs(c3=0,a 32=1/12/b3,sum('(alpha_tau[i]*redrk5[i])^2','i'=1..9)));" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "evalf(subs(b3=-5/126,t5sq));" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#$\"+,-p3$*!#8" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}}{MARK "24 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }