根据函数在一些离散点的函数值,推算它在某点的导数或某高阶导数的近似值。通常用差商代替微商。
定义:diff(Y:Array,n:Int)
说明:序列差分
参数:
Y:需要做差分的数组数据
N:差分的阶数,0阶不做处理
定义: differential(fun,x,toler,m);
说明:计算微分
参数:
Fun:目标函数(字符串类型)
X:数据点(实数类型)
Toler:精度(实数类型)默认 1.490116119384766e-008
M:方法(字符串extrapolation,外推法,limitation极限法) 默认extrapolation
例:
fun := ‘diffdemo’;
function diffdemo(x) ;
begin
return x^2+2;
end
return differential(fun,0.3);
运行结果:0.6
定义:GradVector(fun,x);
说明:梯度,返回一维数组,为x点在各个方向上的导数
参数:
Fun:字符串,函数名
x : 一维数组,指定点
例
diffdemo := function (x);
begin
return 3*x[0]^2+x[1]^2-2*x[0]*x[1]+4*x[0]+3*x[1];
end
return GradVector(diffdemo,array(2,5));
运行结果:array(6,9);
定义:integral(fun,a,b,m);
说明:函数积分
参数:
fun :目标函数(字符串类型)
a:积分下限(实数)
b: 积分上限(实数)
m:方法选择,字符串变量,chebyshev,Gauss或Romberg
例:
fun := ‘diffdemo’;
function diffdemo(x) ;
begin
return x^2+2;
end
return integral(fun,1,3);
运行结果:12.6666666666667