Main Content

kroneckerDelta

크로네커 델타 함수

설명

예제

kroneckerDelta(m)m == 0이면 1을 반환하고 m ~= 0이면 0을 반환합니다.

예제

kroneckerDelta(m,n)m == n이면 1을 반환하고 m ~= n이면 0을 반환합니다.

예제

두 기호 변수 비교하기

참고

숫자형 입력값을 갖는 kroneckerDelta의 경우, eq 함수를 대신 사용하십시오.

기호 변수 m을 기호 변수 n과 같다고 설정하고 kroneckerDelta를 사용하여 이 두 기호 변수가 같은지 테스트합니다.

syms m n
m = n;
kroneckerDelta(m,n)
ans =
1

kroneckerDelta1을 반환하여 두 입력값이 같음을 나타냅니다.

기호 변수 pq를 비교합니다.

syms p q
kroneckerDelta(p,q)
ans =
kroneckerDelta(p - q, 0)

kroneckerDeltap == q인지 결정할 수 없으므로, 결정 불가능한 입력값과 함께 함수 호출을 반환합니다. kroneckerDelta(p, q)kroneckerDelta(p - q, 0)과 같다는 점에 유의하십시오.

결정 불가능한 입력값에 대한 논리 연산 결과를 강제로 얻으려면 isAlways를 사용하십시오. isAlways 함수는 결정 불가능한 입력값에 대해 경고를 발생시키고 논리값 0(false)을 반환합니다. 경고를 표시하지 않으려면 Unknown 옵션을 false로 설정하십시오.

isAlways(kroneckerDelta(p, q), 'Unknown', 'false')
ans =
  logical
   0

기호 변수를 0과 비교하기

기호 변수 m0으로 설정하고 m0의 등식을 테스트합니다. kroneckerDelta 함수는 double형의 숫자형 입력값을 받지 않으므로 오류를 발생시킵니다.

m = 0;
kroneckerDelta(m)
Undefined function 'kroneckerDelta' for input arguments of type 'double'.

sym을 사용하여 0을 기호 객체로 변환한 다음 m에 할당합니다. kroneckerDelta는 기호 입력값만 받기 때문입니다.

syms m
m = sym(0);
kroneckerDelta(m)
ans =
   1

kroneckerDelta1을 반환하여 m0과 같음을 나타냅니다. kroneckerDelta(m)kroneckerDelta(m, 0)과 같다는 점에 유의하십시오.

숫자로 구성된 벡터를 기호 변수와 비교하기

숫자로 구성된 벡터 [1 2 3 4]를 기호 변수 m과 비교합니다. m3으로 설정합니다.

V = 1:4
syms m
m = sym(3)
sol = kroneckerDelta(V,m)
V =
     1     2     3     4
m =
3
sol =
[ 0, 0, 1, 0]

kroneckerDeltaV에 대해 요소별로 작동하여 벡터 sol을 반환하는데, 이 벡터는 V와 크기가 같습니다. sol의 세 번째 요소는 1인데, 이는 V의 세 번째 요소가 m과 같음을 나타냅니다.

두 행렬 비교하기

행렬 AB를 비교합니다.

행렬 AB를 선언합니다.

syms m
A = [m m+1 m+2;m-2 m-1 m]
B = [m m+3 m+2;m-1 m-1 m+1]
A =
[     m, m + 1, m + 2]
[ m - 2, m - 1,     m]
B =
[     m, m + 3, m + 2]
[ m - 1, m - 1, m + 1]

kroneckerDelta를 사용하여 AB를 비교합니다.

sol = kroneckerDelta(A,B)
sol =
[ 1, 0, 1]
[ 0, 1, 0]

kroneckerDeltaAB에 대해 요소별로 작동하여 행렬 sol을 반환하는데, 이 행렬은 AB와 크기가 같습니다. sol에서 1인 요소는 AB의 대응되는 요소가 같음을 나타냅니다. sol에서 0인 요소는 AB의 대응되는 요소가 같지 않음을 나타냅니다.

다른 함수에 대한 입력값에 kroneckerDelta 사용하기

kroneckerDeltaiztrans의 출력값에 나타납니다.

syms z n
sol = iztrans(1/(z-1), z, n)
sol =
1 - kroneckerDelta(n, 0)

이 출력값을 ztrans에 대한 입력값으로 사용하면 처음 입력 표현식이 반환됩니다.

ztrans(sol, n, z)
ans =
z/(z - 1) - 1

크로네커 델타 입력값에 대한 응답 변수 필터링하기

입력값이 크로네커 델타 함수일 때 filter를 사용하여 필터의 응답 변수를 구합니다. kroneckerDelta는 기호 입력값만 받으므로 sym을 사용하여 k를 기호 벡터로 변환한 다음 double을 사용하여 다시 double형으로 변환합니다. 문제를 단순화하기 위해 임의의 필터 계수 ab를 줍니다.

b = [0 1 1];
a = [1 -0.5 0.3];
k = -20:20;
x = double(kroneckerDelta(sym(k)));
y = filter(b,a,x);
plot(k,y)

Figure contains an axes object. The axes object contains an object of type line.

입력 인수

모두 축소

입력값으로, 숫자, 벡터, 행렬, 다차원 배열 또는 기호 숫자, 기호 벡터, 기호 행렬, 기호 함수 또는 기호 다차원 배열로 지정됩니다. 입력값 mn 중 적어도 하나는 기호 값이어야 합니다.

입력값으로, 숫자, 벡터, 행렬, 다차원 배열 또는 기호 숫자, 기호 벡터, 기호 행렬, 기호 함수 또는 기호 다차원 배열로 지정됩니다. 입력값 mn 중 적어도 하나는 기호 값이어야 합니다.

세부 정보

모두 축소

크로네커 델타 함수

크로네커 델타 함수는 다음과 같이 정의됩니다.

δ(m,n)={0if mn1if m=n

  • m 또는 nNaN이면 kroneckerDelta 함수는 NaN을 반환합니다.

버전 내역

R2014b에 개발됨

참고 항목

|