我需要用户可以输入衍生函数
我尝试了没有s的情况,但是结果是一个无尽的循环
z = input(“ Ingrese la funcion dx a resolver”,“ s”); //用户放置了功能
k = input(“ Invalse valor de la x”); // x的值
der =导数(z,'x',k); //导数
disp(der);
此错误是未定义变量:导数
答案 0 :(得分:0)
首先请注意,您获得的z
z=input("Ingrese la funcion dx a resolver ","s");
不是函数,只是一个字符串。 我想您打算在变量“ x”中输入表达式,例如:
"x^2+3*x+1"
或 “ sin(3 * x ^ 3)+ exp(4 * x)”
一旦有了z表达式,就应该使用以下命令构建Scilab函数
deff("y=foo(x)","y="+z)
从x到y定义了Scilab函数foo。 请注意,Scilab无法计算形式导数 但是您可以使用numderivative函数计算给定点的近似导数值
der=numerivative(foo,k)
另一种方法:使用Diffcode原子模块(要安装)。这些给出的结果“准确”,但是对于某些复杂的函数可能会失败,并且需要更多的计算:
xdx=diffcode_der(k,1)
ydy=foo(xdx)