Первое замечание, что z, который вы получаете с
z=input("Ingrese la funcion dx a resolver ","s");
- это не функция, а просто строка символов.Я полагаю, вы намереваетесь ввести выражение в переменном «х», как:
"x^2+3*x+1"
или «грех (3 * х ^ 3) + exp (4 * x)»
, как только выПолучив выражение z, вы должны построить функцию Scilab с
deff("y=foo(x)","y="+z)
, которая определяет функцию Scilab foo от x до y.Обратите внимание, что Scilab не может вычислять формальные производные, но вы можете вычислить приблизительное значение производной в заданной точке, используя нумерованную функцию
der=numerivative(foo,k)
Другой способ: использование модуля атомов Diffcode (будет установлен).Это дает «точные» результаты, но может не сработать для некоторых сложных функций и требует больше вычислений:
xdx=diffcode_der(k,1)
ydy=foo(xdx)