아다마르 곱이란?
아다마르 곱(원소별 곱, 성분별 곱, 슈어 곱이라고도 부릅니다)은 크기가 똑같은 두 행렬 A, B에 대해, 같은 위치에 있는 원소끼리 곱한 값을 모은 행렬 C를 말합니다. 기호로는 \(C = A \circ B\)로 씁니다. 여기서 핵심은 이것이 우리가 흔히 아는 일반적인 행렬 곱셈이 아니라는 점입니다. 안쪽 인덱스를 따라 합을 구하는 과정 없이, 그저 같은 자리의 원소끼리 곧바로 곱하기만 합니다.
계산기 사용 방법
두 행렬이 공유하는 행의 수(\(j\))와 열의 수(\(k\))를 지정합니다. 그런 다음 행렬 A와 행렬 B를 입력하는데, 한 줄에 한 행씩 적고 값은 공백이나 쉼표로 구분하면 됩니다. 소수점 표시를 늘리거나 줄이고 싶다면 표시 정밀도(유효 숫자)를 선택하세요. 두 행렬은 반드시 정확히 \(j\)행 \(k\)열이어야 합니다. 만약 크기가 서로 다르면 아다마르 곱은 정의되지 않으며, 계산기는 오류를 반환합니다.
공식 설명
모든 행 인덱스 \(j\)와 열 인덱스 \(k\)에 대해 결과는 다음과 같습니다.
$$\left(A \circ B\right)_{jk} = a_{jk} \cdot b_{jk}, \quad j = 1 \ldots \text{Rows}, \; k = 1 \ldots \text{Cols}$$결과 행렬 C는 입력과 동일한 \(j \times k\) 크기를 그대로 유지합니다. 이 연산은 교환법칙(\(A \circ B = B \circ A\))과 결합법칙이 성립하며, 항등원은 모든 원소가 1인 행렬입니다. 원소에는 0이나 음수를 포함한 어떤 실수든 들어갈 수 있습니다. 0을 곱하면 그냥 0이 되며, 나눗셈이 없으므로 0으로 나누는 위험도 전혀 없습니다.
풀이 예제
\(A = [[1, 2], [3, 4]]\), \(B = [[5, 6], [7, 8]]\)이라고 합시다. 원소끼리 곱하면 \(c_{11} = 1 \times 5 = 5\), \(c_{12} = 2 \times 6 = 12\), \(c_{21} = 3 \times 7 = 21\), \(c_{22} = 4 \times 8 = 32\)가 되어 \(C = [[5, 12], [21, 32]]\)입니다. 반면 일반적인 행렬 곱 \(A \cdot B\)는 \([[19, 22], [43, 50]]\)이 나오는데, 결과가 확연히 다르죠. 이것만 봐도 이 도구가 원소별 곱을 다룬다는 점을 확인할 수 있습니다.
자주 묻는 질문
벡터나 스칼라에도 쓸 수 있나요? 네. 행 벡터(\(1 \times k\)), 열 벡터(\(j \times 1\)), 스칼라(\(1 \times 1\)) 모두 A와 B의 크기가 같기만 하면 사용할 수 있습니다.
A와 B의 크기가 다르면 어떻게 되나요? 아다마르 곱은 정의되지 않습니다. 반드시 크기가 동일한 행렬을 사용해야 합니다. 계산기가 크기 불일치를 알려줍니다.
정밀도 선택 메뉴는 무슨 역할을 하나요? 결과에 표시되는 유효 숫자의 개수만 바꿀 뿐입니다. 단지 표기 방식을 정하는 것이며, 실제 계산 자체에는 아무 영향을 주지 않습니다.