Octave 这是八度音阶中的括号运算符吗?

Octave 这是八度音阶中的括号运算符吗?,octave,Octave,这是某种括号运算符吗?它只是的一种变体。可以使用矩阵为另一个矩阵编制索引。给定两个矩阵A和B,表达式A(B)等价于 >A = 1 2 3 4 >A(A) ans = 1 3 2 4 它只是一个变体。可以使用矩阵为另一个矩阵编制索引。给定两个矩阵A和B,表达式A(B)等价于 >A = 1 2 3 4 >A(A) ans = 1 3 2 4 要理解这一点,你首先需要理解。为了让事情不那么混乱,让我们来考虑一下 [A(B(1,1)) A(B(

这是某种括号运算符吗?

它只是的一种变体。可以使用矩阵为另一个矩阵编制索引。给定两个矩阵
A
B
,表达式
A(B)
等价于

>A =
1   2
3   4
>A(A)
ans =
1   3
2   4
它只是一个变体。可以使用矩阵为另一个矩阵编制索引。给定两个矩阵
A
B
,表达式
A(B)
等价于

>A =
1   2
3   4
>A(A)
ans =
1   3
2   4

要理解这一点,你首先需要理解。为了让事情不那么混乱,让我们来考虑一下

[A(B(1,1)) A(B(1,2)) ... ; A(B(2,1)) ... ; ... ; A(B(end, 1)) ... A(B(end,end))]
为什么会发生这种情况?因为倍频程实际上在内部存储高维矩阵,作为列主序中的单个向量。因此,在内部,矩阵
B
实际上是
[11 21 12 22]
,因此当我们用一个数字(或线性索引,注意这与下标索引相反)索引
B
时,我们是在索引该向量。所以
B(2)
就是
21
等等


因此
B(A)
B([1,2;3,4])
相同,后者只返回一个矩阵,其维数与
A
相同,但将
A
的每个元素视为线性索引。

要理解这一点,首先需要理解。为了让事情不那么混乱,让我们来考虑一下

[A(B(1,1)) A(B(1,2)) ... ; A(B(2,1)) ... ; ... ; A(B(end, 1)) ... A(B(end,end))]
为什么会发生这种情况?因为倍频程实际上在内部存储高维矩阵,作为列主序中的单个向量。因此,在内部,矩阵
B
实际上是
[11 21 12 22]
,因此当我们用一个数字(或线性索引,注意这与下标索引相反)索引
B
时,我们是在索引该向量。所以
B(2)
就是
21
等等


因此
B(A)
B([1,2;3,4])
相同,后者只返回一个矩阵,其维数与
A
相同,但将
A
的每个元素视为一个线性索引。

我认为首先解释线性索引,然后解释它等价于
[A(B(1))A(B(3);A(B(2))A(B(4))]
我提供了指向文档“索引”页面的链接。我认为这非常简单。但如果人们不这么认为,我可以更新我的答案。我认为首先解释线性索引,然后解释它相当于
[A(B(1))A(B(3);A(B(2))A(B(4))]
我提供了指向“索引”页面的文档。我认为这很简单。但如果人们不这么认为,我可以更新我的答案。