【问题标题】:Plot a complex function绘制一个复杂的函数
【发布时间】:2019-11-12 18:15:28
【问题描述】:

我正在尝试绘制以下函数但没有结果。这是一个非常复杂的功能,我真的不知道这是原因还是只是一个愚蠢的错误,因为我对 Wolfram 不是很熟悉。任何有关如何解决此问题的建议(即使是其他语言)都非常受欢迎。

f[y_, n_] := n*exp (-n^2/y)/(sqrt (Pi)*y^((n + 3)/2))*(HermiteH[n, (y + 2 n)/(2*sqrt (y))] - 
    sqrt (y)*HermiteH[n - 1, (y + 2 n)/(2*sqrt (y))])

Plot[f[y, 500], {y, 0, 6000}]

谢谢

【问题讨论】:

  • PythonMathematica 作为标签?数学函数看起来像是使用 Python 语法编写的,其余的看起来像 Mathematica。您不能混合使用两种语法。使用Exp[]Sqrt[]等...

标签: wolfram-mathematica


【解决方案1】:

当我在版本 12 中尝试 Gilles-Philippe Paillé 的示例时,我得到了

General munfl 4.697873421421826967046763728`16.*^-9856 is too small to represent as a
normalized machine number, precision may be lost.

一遍又一遍地重复,然后看起来像一个空的情节

试试这个解决方法

f[y_, n_] := n*Exp[-n^2/y]/(Sqrt[Pi]*y^((n + 3)/2))*(HermiteH[n, (y + 2 )/
  (2*Sqrt[y])] - Sqrt[y]*HermiteH[n - 1, (y + 2 n)/(2*Sqrt[y])]);
ListPlot[Table[f[y, 500], {y, 10, 6000,10}],PlotRange->All,Joined->True]

它仍然给我关于数字大小的警告,但随后显示情节。 (我从 10 开始表格以避免被零除)

【讨论】:

  • 好收获!我的代码在 10.4 上运行。我没有尝试 12。
【解决方案2】:

考虑到您问题的标签,您将 Python 和 Mathematica 混合在一起。以下代码适用于 Mathematica 10.4(请参阅 Bill 对版本 12 的回答):

f[y_, n_] := n*Exp[-n^2/y]/(Sqrt[Pi]*y^((n + 3)/2))*(HermiteH[n, (y + 2 n)/(2*Sqrt[y])] -
    Sqrt[y]*HermiteH[n - 1, (y + 2 n)/(2*Sqrt[y])])
Plot[f[y, 500], {y, 0, 6000}, PlotRange -> All]

【讨论】:

    猜你喜欢
    • 2011-07-20
    • 1970-01-01
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-02
    相关资源
    最近更新 更多