You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MATLAB中displayFormula函数矩阵参数异常问题问询

displayFormula函数矩阵处理问题分析

基础测试代码及执行现象

displayFormula("c=b*a")
syms a
displayFormula("c=b*a", a, 6)
displayFormula("c=b*a", a, [[1 2];[3 4]])
d=[[1 2];[3 4]]
displayFormula("c=b*d")
  • 第1行可正常执行;
  • 第2行是第3行执行的必要前提;
  • 第4行抛出错误;
  • 第6行可正常执行并完整显示矩阵。

第6行的成功说明该函数可接收矩阵输入,但第4行的报错却显示其无法处理矩阵参数,第3行验证了该函数的详细调用形式可接收整数、浮点数、双精度数参数。

错误信息

Error using displayFormula
Inconsistency between sizes of second and third arguments.

Error in bugDisplayFormulaWithMatrices (line 4)
displayFormula("c=b*a", a, [[1 2];[3 4]])

进一步测试验证

以下代码可进一步证明displayFormula处理矩阵时存在问题:

syms a b c d A Z
A = [[a b];[c d]]
a1 = 2;
mix = subs(A, a, a1)
Z = A*A
Z1 = subs(A*A,a,a1)
displayFormula('Z = A*A')
displayFormula("Z = A*A", a, a1)

在Live Script中的输出如下:
livescript output

Live Script中Z1的结果可将数值2代入显示,但displayFormula("Z = A*A")无法为变量代入数值;而displayFormula("Z = A*A", a, a1)不仅无法代入数值,还会导致显示完全折叠。

与官方文档描述不符

官方文档指出该函数的参数为'symstr',但以下非symstr参数的代码可正常执行:

A=[[1 2];[1 4]]
displayFormula("A*A")

结论

displayFormula函数当前对矩阵的支持存在Bug,后续需优化以提升矩阵处理能力。

内容的提问来源于stack exchange,提问作者havasu78

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 23:35:22