Можно преобразовать код Maple в Python с помощью команды CodeGeneration:-Python
. Затем вы можете написать свой код в виде процедуры и преобразовать его. Проблема в том, что если вы попытаетесь это сделать, вы столкнетесь с проблемой, когда Maple не распознает, например. dsolve
в Python, и он просто дословно скопирует эти вызовы функций в Python. То есть я не уверен, что Maple может сделать это автоматически.
Вот моя неудачная попытка, несмотря на цикл for
, который беспокоил, потому что
myproc := proc(ode,ic)
local sol,fy,out,i,nn;
sol := dsolve({ode,ic},numeric,output=listprocedure);
nn := 100;
fy := eval(y(x),sol);
out := [];
for i to nn do;
out := [op(out),fy(5.1*i/nn)];
end do;
out;
end proc:
## Example of use:
## myproc(diff(y(x),x) = 1/x,y(1) = 0.73);
## Convert to Python
CodeGeneration:-Python(myproc);
Warning, the function names {dsolve, eval, y} are not recognized in the target language
#def myproc (ode, ic):
# sol = dsolve(set([ode,ic]), numeric, output == listprocedure)
# nn = 100
# fy = eval(y(x), sol)
# out = []
# for i in range(1, nn + 1):
# out = [tuple(out),fy(0.51e1 * i / nn)]
# return(out)
person
Therkel
schedule
26.08.2017
ode:=diff(y(x),x)=
неполный. - person Nasser   schedule 23.08.2017