Matrix 如何在倍频程中求矩阵和整数的逆?

Matrix 如何在倍频程中求矩阵和整数的逆?,matrix,octave,inversion,Matrix,Octave,Inversion,我想得到一个八度的可逆矩阵,但作为整数矩阵,所以: x = [9,15;19,2]; inv(x) 我得到: [-0.0074906, 0.0561798; 0.0711610, -0.0337079] 但是我想得到[22,17;25,21] 有人知道如何反转矩阵吗?每个元素的倒数是: x .^ -1 结果是什么 0.1111 0.0667 0.0526 0.5000 为什么要获取[22,17;25,21]?什么数学运算会产生这样的结果?将矩阵倒置为八度: 你对什么是矩阵的逆感到

我想得到一个八度的可逆矩阵,但作为整数矩阵,所以:

x = [9,15;19,2];
inv(x)
我得到:

[-0.0074906, 0.0561798; 0.0711610, -0.0337079]
但是我想得到
[22,17;25,21]

有人知道如何反转矩阵吗?

每个元素的倒数是:

x .^ -1
结果是什么

0.1111    0.0667
0.0526    0.5000
为什么要获取
[22,17;25,21]
?什么数学运算会产生这样的结果?

将矩阵倒置为八度: 你对什么是矩阵的逆感到困惑,这里没有人知道你想要输出什么,所以这里有一些线索

如果反转一个单位矩阵,则得到单位矩阵:

octave:3> a = [1,0;0,1]
a =

   1   0
   0   1

octave:4> inv(a)
ans =

   1   0
   0   1
octave:5> a = [1,0;0,0]
a =

   1   0
   0   0

octave:6> inv(a)
warning: inverse: matrix singular to machine precision, rcond = 0
ans =

   Inf   Inf
   Inf   Inf
octave:1> a = [1,2;3,4]
a =
   1   2
   3   4

octave:2> inv(a)
ans =    
  -2.00000   1.00000
   1.50000  -0.50000
非方矩阵(m!=n的m×n矩阵)没有逆矩阵

x = [9,15;19,2;5,5]; 
inv(x) 
%error: inverse: argument must be a square matrix
对对角线上为零的矩阵求逆会导致无穷大:

octave:3> a = [1,0;0,1]
a =

   1   0
   0   1

octave:4> inv(a)
ans =

   1   0
   0   1
octave:5> a = [1,0;0,0]
a =

   1   0
   0   0

octave:6> inv(a)
warning: inverse: matrix singular to machine precision, rcond = 0
ans =

   Inf   Inf
   Inf   Inf
octave:1> a = [1,2;3,4]
a =
   1   2
   3   4

octave:2> inv(a)
ans =    
  -2.00000   1.00000
   1.50000  -0.50000
使用如下所示的完整值反转矩阵:

octave:3> a = [1,0;0,1]
a =

   1   0
   0   1

octave:4> inv(a)
ans =

   1   0
   0   1
octave:5> a = [1,0;0,0]
a =

   1   0
   0   0

octave:6> inv(a)
warning: inverse: matrix singular to machine precision, rcond = 0
ans =

   Inf   Inf
   Inf   Inf
octave:1> a = [1,2;3,4]
a =
   1   2
   3   4

octave:2> inv(a)
ans =    
  -2.00000   1.00000
   1.50000  -0.50000
有关反向函数引擎盖下发生的情况的说明:


我已经很晚了,不知道如何有效地回答这个问题,但看起来你在寻找矩阵的模逆,特别是mod 26

x=[9,15,19,2];
模数=26;
逆行列式=模逆(det(x),模)
你必须自己实现mod_逆函数,但是算法应该很容易找到。如果这仅适用于小模数值,那么线性搜索应该足够有效

result = mod(det(x)*inv(x)*inverse_determinant,modulus)`

inv(x)的结果是正确的。[22,17,25,21]应该是[22,17;25,21]吗?(注意分号)您是否试图从[9,15;19,2]中获取[22,17;25,21]?什么是
[22,17;25,21]