我试图用Mathematica找到矩阵方程的非线性系统的解 . 解决方案空间太复杂,无法尝试使用Solve,因此我尝试使用FindInstance . 这是一个非线性系统的最简单的例子,我试图找到一个解决方案:
T + A + C + CBA = 0
I - A - C - ABC = 0
其中A,B,C是任何矩阵,Det [T] = 1,I是维度为2x2的单位矩阵 . 我还希望所有矩阵只有整数条目 . 我正在使用该命令
FindInstance[{T + a + c + c.b.a == z, IdentityMatrix[2] - a - c -
a.b.c == z, Det[T]==1} , Integers]
其中z是零矩阵 . 但是,每次执行此操作时,它都会响应“FindInstance :: exvar:系统包含一个独立于变量的非常量表达式 . ”
重试命令为
FindInstance[{T + a + c + c.b.a == z,
IdentityMatrix[2] - a - c - a.b.c == z,
Det[T] == 1} /. {a -> {{1, 0}, {0, 1}}}, Integers]
返回“FindInstance :: exvar:系统包含一个非常量表达式b,独立于变量 . ”
如何使用FindInstance或Solve找到该系统的解决方案,而无需通过修复“自变量”自行找到解决方案?
1 回答
我发现我遇到了语法问题 .
解决这些矩阵方程的正确语法如下: