将数学公式转换为Matlab,C++等代码的方法?[关闭]

fcg9iug3  于 2023-04-21  发布在  Matlab
关注(0)|答案(4)|浏览(548)

**已关闭。**此问题正在寻求书籍,工具,软件库等的建议。它不符合Stack Overflow guidelines。目前不接受答案。

我们不允许您提问有关书籍、工具、软件库等方面的建议。您可以编辑问题,以便您可以通过事实和引用来回答问题。
3天前关闭。
Improve this question
我有一个基本的问题要问所有的数学Maven。
“如果我有一篇学术论文,什么是最简单的方法将一个简单的数学方程转换为工作的Matlab(或C++)代码?”
理想情况下,应该有一个Latex〉〉Matlab(或C++)转换工具。
然而,如果做不到这一点,是否有一个“备忘单”,其中包含所有常见的数学符号,以及它们在Matlab(或R,或C++)中的等效实现关键字?

m1m5dgzv

m1m5dgzv1#

使用Mathematica Symbolic Computation
您可以直接在Mathematica中输入数学方程,然后将结果导出为C代码。
不断调整方程,直到渲染结果与学术论文中的原始方程完全相同。然后,您可以插入自己的参数,Mathematica将为您计算结果。
你甚至可以做一些很酷的事情,比如让它对方程求导--它会产生微分,并打印出得到的方程。
您可以从任何语言调用Mathematica,包括.NET、Q、Python、Java等。
您甚至可以将Mathematica程序编译成.NET程序集并将其嵌入到您的应用程序中。
Mathematica还将发出与您刚刚输入的数学公式相匹配的Java或C代码。

of1yzvn4

of1yzvn42#

我从来没有见过这样的事情。大多数数学符号都是为了让一个(至少)具有合理智力的人理解而编写的,所以它经常省略产生工作代码所必需的各种细节。如果你有这样一个工具,我怀疑它会产生超过(也许)10%的可用结果。
反过来看起来似乎更站得住脚--从代码(特别是从Matlab之类的代码)中生成可读的数学符号听起来更合理。省略现有的信息比尝试综合缺失的信息要容易得多。

oiopk7p5

oiopk7p53#

这是不可能的。正如Jerry Coffin所说,一般来说,论文中的数学表达式是为人类理解而设计的。正因为如此,存在各种各样的问题。我认为最优性是我的第一个想法。供人类使用的(数学)代码很少是最优的,糟糕的例子是斐波那契序列。没有人会写人类理解的斐波那契代码。
所以,即使你解析了代码,你仍然有很多工作要做,就像你自己写一样。

5uzkadbs

5uzkadbs4#

这个问题是基于一个核心假设--计算机做任何事情都更好。事实并非如此。
计算机,特别是计算机器,往往比人类更擅长迭代任务,而认知任务更差。你试图转换的数学是迭代的还是认知的?如果是迭代的,那么标准程序-对于x做n次或while(criterion)do etc...对于迭代任务来说是很简单的。如果你如果你深入研究人工智能和机器学习,有很多关于计算机应该如何做人工智能并做得很好的信息。我假设提问者是从认知意义上寻求帮助,而不是迭代。因此,问题-和缺乏解决方案。如果任务是认知实现,那么计算机器将不会帮助你。

相关问题