1

我正在尝试创建一个使用 .NET/Link 协议调用 Mathematica 8 的 C# 库 (DLL)。具体来说,我将它用于 FFT 等。现在我正在使用 EvaluateToOutputForm 并将结果字符串解析为双精度数。每当我尝试使用 Evaluate() 和 GetDoubleArray() 时,它都会给出我试图从错误维度的数据中读取的错误消息(异常)。即使使用 Evaluate("2+2") 然后 GetInteger() 失败,错误是等待数据不是整数(基本上)。

EvaluateToOutputForm() 的问题在于,我从 Abs@Fourier[data] 解析的数字对于非平凡的(例如相当长的)输入是错误的。我不知道出了什么问题。这里有人可以帮助我吗?

4

1 回答 1

2

OutputForm 实际上只对查看结果有用。您真的想在这里使用 InputForm,因为它保持结果中数字的完整精度。InputForm 语法定义良好且可解析。InputForm 也不会产生像 OutputForm 这样的伪 2D 格式。

于 2011-05-03T20:41:50.123 回答