HOWTO · MATLAB
在 MATLAB 中使用 Kronecker Delta
本教程演示了如何在 MATLAB 中使用 Kronecker delta。
本页内容
本教程演示了如何在 MATLAB 中使用 kroneckerDelta() 方法。
MATLAB 中的克罗内克三角洲
Kronecker delta,以 Leopold Kronecker 命名,是数学中用于两个变量的函数:非负整数。
MATLAB 有一个用于 Kronecker delta 的内置函数 kroneckerDelta(),它具有类似的用途。
kroneckerDelta() 方法在 MATLAB 中比较并检查两个变量的相等性。它分别返回 1 或 0 为真或假。
在 MATLAB 中使用 Kronecker Delta 比较两个符号变量
让我们在 MATLAB 中使用 kroneckerDelta() 测试两个相等变量的相等性。
例子:
syms a b
a = b;
kroneckerDelta(a,b)
syms c d
kroneckerDelta(c,d)
输出:
ans =
1
ans =
kroneckerDelta(c - d, 0)
上面的代码使用 kroneckerDelta() 检查两个相等和两个不相等的变量是否相等。
a 等于 b,这就是 kroneckerDelta() 方法返回 1 的原因,这意味着 true。
kroneckerDelta() 方法无法确定 c 是否等于 d。它返回带有不确定输入的函数调用。
在 MATLAB 中使用 Kronecker Delta 比较符号变量与零
kroneckerDelta() 方法不接受变量类型双零。因此,我们不能直接输入 0。
我们使用 sym 将 0 转换为对象。
例子:
syms a
a = sym(0);
kroneckerDelta(a)
输出:
ans =
1
请记住,kroneckerDelta(a) 等于 kroneckerDelta(a,0),这意味着它将比较 a 和 0,应该返回 1。
在 MATLAB 中使用 Kronecker Delta 将数字向量与符号变量进行比较
让我们将数字向量与符号变量进行比较。该变量将与向量的每个成员进行比较。
例子:
Vec = 1:5
syms a
a = sym(5)
answer = kroneckerDelta(Vec,a)
输出:
Vec =
1 2 3 4 5
a =
5
answer =
[ 0, 0, 0, 0, 1]
在 MATLAB 中使用 Kronecker Delta 比较两个矩阵
使用 kroneckerDelta() 进行比较时,两个矩阵应该具有相同的大小。
让我们使用 kroneckerDelta() 方法比较两个矩阵。
例子:
syms a
X = [a+3 a+1 a+2;a-2 a-1 a]
Y = [a+3 a a+2;a-1 a-1 a]
Answer = kroneckerDelta(X,Y)
输出:
X =
[ a + 3, a + 1, a + 2]
[ a - 2, a - 1, a]
Y =
[ a + 3, a, a + 2]
[ a - 1, a - 1, a]
Answer =
[ 1, 0, 1]
[ 0, 1, 1]
上面的代码会将矩阵 X 的每个成员与同一位置的每个 Y 成员进行比较,并返回一个带有结果的矩阵。