i used maple v5 in 92 write functions solve problems using groebner basis. since have used maple simple calculations , therefore programming skills long-forgotten. of functions wrote , used @ time no longer work , trying go , update them maple version have, is, maple 18.
questions: a) there automatic tool update old maple functions? b) commands such vars := [x.(1 .. n)] used work not anymore. ideia create list x1,x2,.. xn. know seq(x[i], = 1 .. 5) create list x_1,x_2, ... not same. c) tips , suggestions how smooth out process of updating welcome.
thanks
ed
there changes language between maple v release 5 , maple 6, , replacement of . || 1 of those.
maple 6 (and 7 if recall) shipped additional binary updtsrc act on maple source files , make text replacements. example, if start plaintext file var.mpl containing this,
vars := [x.(1 .. n)]; and apply shell command updtsrc var.mpl output,
`.` has been replaced `||`; see ?|| vars := [x||(1 .. n)]; i did on ubuntu 14.04.4 lts linux, using (redhat) updtsrc binary downloaded http link linux on this page.
if maple v sources in .mws worksheet file might have export input plaintext file.
i haven't tried in (on plaintext file, in dos window, or powershell) on ms-windows (though zip file page did unpack updtsrc.exe file).
so if have great deal of old codes containing language incompatibilities between maple v , maple 6 try route automate conversion.
there have been commands deprecated betwen maple 6 , maple 18 (eg, lowercase vector) few further language changes (backwards incompatibilities).
i suggest read pages in maple 18 language updates. in particular suggest @ pages these topics (entering these in brower's search bar):
updtsrc updates,maple6,compatibility as second example involving vector, true vector has been deprecated , superceded vector command.
but in maplev r5 should not have been using op(f) on vector f. more correct have been eval(f) or evalm(f). eg,
f:=vector([-x1^2,x2*u]); [ 2 ] f := [-x1 , x2 u] var:=u; var := u subs(var=cat(var,0), eval(f)); [ 2 ] [-x1 , x2 u0] now, suppose instead use vector in above. in case using op(f) in subs call produce error cited, because unlike vector vector beast not have last-name-eval.
f:=vector([-x1^2,x2*u]); [ 2] f := [-x1 ] [ ] [x2 u] var:=u; var := u subs(var=cat(var,0), op(f)); error, invalid input: subs received 2, not valid 2nd argument you still use eval(f) here, in fact not necessary.
subs(var=cat(var,0), eval(f)); [ 2 ] [-x1 ] [ ] [x2 u0] subs(var=cat(var,0), f); [ 2 ] [-x1 ] [ ] [x2 u0] lastly, try download , install point-release maple 18.02 rather stick maple 18.00. can find here.
Comments
Post a Comment