函数在该点的复导数

Complex derivative of the function at the point

我正在编写一种方法来求函数在某一点的导数。

static void Main(string[] args)
    {
        double x = 1;
        double dx = 0.000001;
        double rate;
        rate = (((f(x + dx) - f(x)) / dx));            
    }

    static double f(double x)
    {            
        return Math.Cos(x);
        //return 20*x - 5*Math.Pow(x, 2)+8*Math.Pow(x, 5/4);
    }

简单函数(如 sin(x))的导数计算正确,但复杂函数(如 (20*x​​ - 5*Math.Pow(x, 2)+8 *Math.Pow(x, 5/4))) - 不正确。

看来问题是由你的整数除法引起的

5 / 4 == 1
5.0 / 4.0 == 1.25

尝试将术语 5/4 修改为 5/4f。