類難倒了,爲什麼我的計算衍生數值方法並不是不顧Math.abs(v1-v2)
循環肯定比1E-7
更大:while循環只運行一次?
derivative:function(f,o,x){
var h=0.01;
switch(o){
case 1:
//v1=(f(x+h)-f(x))/h;
var v1=(-f(x+2*h)+8*f(x+h)-8*f(x-h)+f(x-2*h))/(12*h);
while(typeof v2==='undefined' || Math.abs(v1-v2)>1E-7) {
h-=h/2;
//v2=(f(x+h)-f(x))/h;
v2=(-f(x+2*h)+8*f(x+h)-8*f(x-h)+f(x-2*h))/(12*h);
v1=v2;
}
return v2;
...
default:
return 0;
}
}
這可能只是我有一個大腦放屁雖然。任何想法如何解決它?
你傳遞什麼值? – Bergi