【问题标题】:Matrix expression parser/engine矩阵表达式解析器/引擎
【发布时间】:2023-03-10 10:15:01
【问题描述】:

我正在寻找一个矩阵表达式解析器/引擎。例如,

3 * A + B * C 

其中 A、B、C 是矩阵是一个典型的表达式。这应该类似于(单值)数学表达式解析器/引擎,但应该处理矩阵值和变量。我已经用谷歌搜索了。我也愿意修改现有的数学表达式解析器,但我不确定如何去做。因此,如果您能给我任何线索或提示,我将不胜感激。

【问题讨论】:

  • 基本线性代数有JAMA。或者您是否专门寻找类似脚本的语法,例如3 * A + B * C
  • 在一个工作项目中,我们使用Jep 来解析和评估数学表达式。我们不需要支持矩阵,但它应该仍然可以只处理解析,您可以自己评估表达式树。
  • @Paul:不是真的,我们让库评估事物,它可以对标量和向量进行评估。 (不幸的是,不是矩阵。)您将不得不在 API 周围摸索。

标签: java parsing math matrix


【解决方案1】:

how to build simple parsers 上查看我的回答。这特别适用于表达式解析器。

修改这样的解析器以在解析时计算答案非常容易。只要解析器识别语法,就添加一个动作例程,按照语法所说的去做。

【讨论】:

  • 构建这种解析器如此很容易,以至于试图破坏另一个解析器根本不值得麻烦。如果您有更复杂的解析要求,或者您必须将新的表达式语法移植到另一个语法中,那么您必须担心如何进行移植。为此,您可能得到的唯一建议是,“嗯,这取决于其他解析器的结构”,这是非常无用的建议。如果问题只是改变另一个解析器以不同的方式评估表达式,那么你必须改变它的评估代码:-}同意,可能不难。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-30
  • 1970-01-01
相关资源
最近更新 更多