Sagemath:寻找矩阵

问题描述

以下 3 个函数中的每一个都代表一个初等矩阵:

def Pij(n,i,j):
    return elementary_matrix(QQ,n,row1=i-1,row2=j-1)

def Si(n,x):
    return elementary_matrix(QQ,scale=x)

def Qij(n,j,row2=j-1,scale=x)

这个函数代表一个充满1的矩阵:

def MatOnes(n):
    return Matrix(QQ,[[1 for i in range(n)] for j in range(n)])

我的问题:我如何找到上述三种类型的基本矩阵,使得

他们的乘积 C 具有属性 C * Matones(n) * C.transpose() 是对角矩阵?

解决方法

我认为 Sage 没有内置这样的功能; diagonalization 方法可能是最接近的方法。也许您可以修改 its source code 以准确执行您想要的操作。

顺便说一句,请注意您可以将 MatOnes 函数替换为 matrix.ones(QQ,n)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...