0

我需要找到一个满足方程的方阵 A

ALA = -17/18A -2(ALL + LAL + (LL).A) + 3(AL + LA) -4L.LL + 8L.L - 44/9L + 8/9*(ID)

,其中 L 是对角矩阵 L = {{2/3,0,0,0},{0,5/12,0,0},{0,0,11/12,0},{0,0 ,0,2/3}}。

我可以在A为2维和3维的情况下找到答案,但4维及以上存在问题。

实际上,矩阵 A 也必须满足方程 AA = A,但是对于合适的矩阵 L,只有方程上面的方程就足够了。

这是我的代码;

A = 表[a[i,j],{i,1,4},{j,1,4}]

B = ALA

ID = 身份矩阵[4]

M = -17/18A -2(ALL + LAL + (LL).A) + 3(AL + LA) -4L.LL + 8L.L - 44/9L + 8/9*(ID)

diff = (B - M)//ExpandAll//Flatten(所以我在这里得到 16 个非线性方程组)

A1 = A/.Solve[diff == 0][[1]]

运行此代码一段时间后,出现的错误是没有足够的内存来计算。

在这种情况下,有 16 个方程和 16 个变量。有些条目是参数,但在得到结果之前我不知道是哪一个。

我不确定是否有办法解决这个问题。我需要答案是理性的(可能是整数),这在理论上是可能的。

这个问题可以通过矩阵方程或任何其他方法解决吗?我看到一个问题是方程和变量太多。

4

1 回答 1

0

对于这种规模的问题,这可以相当快地进行评估,并且内存适中。

L = {{2/3, 0, 0, 0}, {0, 5/12, 0, 0}, {0, 0, 11/12, 0}, {0, 0, 0, 2/3}};
A = {{a, b, c, d}, {e, f, g, h}, {i, j, k, l}, {m, n, o, p}};
Reduce[{A.L.A == -17/18 A - 2 (A.L.L + L.A.L + (L.L).A) + 3 (A.L + L.A) - 
   4 L.L.L + 8 L.L - 44/9 L + 8/9*IdentityMatrix[4]},
   {a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p}, Backsubstitution->True
]

然后,您只需对它返回的 143 个潜在解决方案进行分类。您也许可以从满足您的 AA==A 的那些中进行选择。您还可以对从 Reduce 返回的结果使用 ToRules 将其放入类似于从 Solve 返回的形式中,但请仔细检查以确保它正在执行您期望的操作。

仔细检查以确保我没有犯任何错误。

于 2013-12-01T03:18:29.493 回答