美文网首页Wolfram...
Mathematica分段函数的疑惑

Mathematica分段函数的疑惑

作者: 破旧的大卡车 | 来源:发表于2017-11-12 15:43 被阅读51次

    运行如下代码可以得到不同输出, 奇了怪了!考察分段函数:

    f[x_] := x^(1/3) /; x > 0
    f[x_] := -(-x)^(1/3) /; x < 0
    f[x_] := 0 /; x == 0
    Plot[{f[x], f'[x], x^(-2/3)/3}, {x, 0, 1}, AspectRatio -> 1]
    
    输出结果1
    可以看到分段函数的导数在0~0.4的那部分有点问题。我们重新定义函数如下(不用条件符号/;):
    f[x_] := x^(1/3)
    Plot[{f[x], f'[x], x^(-2/3)/3}, {x, 0, 1}, AspectRatio -> 1]
    

    则输出为:


    正常的函数图像

    奇怪的是, 再次运行开始给的代码, 得到的输出变正常了:

    f[x_] := x^(1/3) /; x > 0
    f[x_] := -(-x)^(1/3) /; x < 0
    f[x_] := 0 /; x == 0
    Plot[{f[x], f'[x], x^(-2/3)/3}, {x, -1, 1}, AspectRatio -> 1]
    
    再次运行又正常了

    你知道问题何在吗?

    相关文章

      网友评论

        本文标题:Mathematica分段函数的疑惑

        本文链接:https://www.haomeiwen.com/subject/ictomxtx.html