사용법
- 행렬 크기(2×2 또는 3×3)와 계산 종류를 고르세요.
- 행렬 A의 숫자를 칸에 입력하세요. 덧셈·뺄셈·곱셈은 행렬 B 칸도 나타나요. 소수와 음수도 입력할 수 있고, 빈칸은 0으로 계산해요.
- 결과는 표로 나오고, 행렬식·계수 같은 숫자 결과는 맨 위 큰 칸에 나와요. 역행렬은 모든 칸이 정수일 때 분수로 정확하게 보여 줘요.
- '예시 넣기' 버튼으로 바로 해 볼 수 있는 예제 값을 채울 수 있어요.
지원하는 계산
- A + B, A − B: 같은 위치의 원소끼리 더하고 빼요. 두 행렬 크기가 같아야 해요.
- A × B: 행렬 곱셈. 결과의 (i, j) 원소는 A의 i행과 B의 j열을 원소끼리 곱해 모두 더한 값이에요.
- 행렬식 det(A): 정사각행렬의 크기를 나타내는 숫자. 0이면 역행렬이 없어요.
- 역행렬 A⁻¹: A × A⁻¹ = 단위행렬이 되는 행렬. det(A) ≠ 0일 때만 있어요.
- 전치행렬 Aᵀ: 행과 열을 맞바꾼 행렬.
- 계수(rank): 일차독립인 행(또는 열)의 최대 개수. 연립방정식의 해 존재 여부 판단에 써요.
공식
2×2 행렬식: A = [[a, b], [c, d]]일 때 det(A) = ad − bc. 2×2 역행렬: A⁻¹ = (1 ÷ det) × [[d, −b], [−c, a]]. 3×3 행렬식은 첫 행 기준 여인수 전개로 a(ei − fh) − b(di − fg) + c(dh − eg) (원소를 [[a,b,c],[d,e,f],[g,h,i]]로 놓을 때)예요. 3×3 역행렬은 수반행렬(여인수 행렬의 전치)을 행렬식으로 나눠서 구해요.
계산 예시
A = [[1, 2], [3, 4]], B = [[5, 6], [7, 8]]이라고 하면:
- A + B = [[6, 8], [10, 12]], A − B = [[−4, −4], [−4, −4]]
- A × B = [[1·5+2·7, 1·6+2·8], [3·5+4·7, 3·6+4·8]] = [[19, 22], [43, 50]]
- B × A = [[23, 34], [31, 46]] — A × B와 달라요. 행렬 곱셈은 교환법칙이 성립하지 않아요.
- det(A) = 1·4 − 2·3 = −2, A⁻¹ = (1 ÷ −2) × [[4, −2], [−3, 1]] = [[−2, 1], [3/2, −1/2]]
- Aᵀ = [[1, 3], [2, 4]]
3×3 예로 D = [[2, −1, 0], [−1, 2, −1], [0, −1, 2]]은 det = 4이고, 역행렬은 [[3/4, 1/2, 1/4], [1/2, 1, 1/2], [1/4, 1/2, 3/4]]이에요. 이 행렬에 곱하면 단위행렬이 나와서 검산돼요.
역행렬이 없는 경우
det(A) = 0이면 역행렬이 없어요(특이행렬). 예를 들어 [[1, 2], [2, 4]]는 둘째 행이 첫째 행의 2배여서 det = 1·4 − 2·2 = 0이고 계수는 1이에요. 이 경우 결과에 '역행렬 없음'이라고 표시해요. 연립방정식 x + 2y = 3, 2x + 4y = 6은 해가 무수히 많고, x + 2y = 3, 2x + 4y = 7은 해가 없어요. 어느 경우든 한 가지 해로 정해지지 않아요.
연립일차방정식을 역행렬로 풀기
연립방정식 x + 2y = 5, 3x + 4y = 6은 A·v = b 꼴이고 A = [[1, 2], [3, 4]], b = [5, 6]이에요. 해는 v = A⁻¹·b = [[−2, 1], [3/2, −1/2]]·[5, 6] = [−10 + 6, 7.5 − 3] = [−4, 4.5]예요. 검산하면 −4 + 2·4.5 = 5, 3·(−4) + 4·4.5 = 6으로 맞아요. 이 계산기에서 역행렬을 구한 뒤 b를 곱하면 되고, 두 변수 방정식은 이차방정식 계산기 같은 다른 도구와 병행해도 좋아요.
어디에 쓰이나
- 연립방정식: 변수가 여러 개인 일차방정식을 푸는 표준 방법.
- 그래픽·게임: 이동·회전·확대를 행렬 곱셈으로 표현해요. 회전 행렬은 [[cos θ, −sin θ], [sin θ, cos θ]]이고, θ는 각도 변환·삼각함수 계산기로 라디안을 맞출 수 있어요.
- 통계·머신러닝: 최소제곱 회귀 해가 (XᵀX)⁻¹Xᵀy 꼴이에요. 단순 회귀는 선형회귀 계산기를 쓰세요.
- 경제·공학: 투입산출표, 회로 해석, 구조 해석 등.
- 넓이·부피: 2×2 행렬식의 절댓값은 두 벡터가 만드는 평행사변형의 넓이, 3×3 행렬식의 절댓값은 평행육면체의 부피예요.
행렬 곱셈이 가능한 조건과 순서
일반적으로 A가 m×n, B가 n×p이면 A×B는 m×p 행렬이에요. 즉 A의 열 수와 B의 행 수가 같아야 해요. 이 도구는 정사각행렬만 다루므로 항상 곱할 수 있지만, 순서에 따라 결과가 달라요. 행렬 세 개의 곱 A×B×C는 (A×B)×C와 A×(B×C)가 같아서(결합법칙) 묶는 순서는 마음대로 정해도 되지만, A와 B의 자리를 바꾸면 안 돼요. 단위행렬 I(대각선이 1, 나머지가 0)는 어떤 행렬에 곱해도 그 행렬이 그대로 나오는 행렬이에요.
손으로 검산하는 요령
- 역행렬 검산: A × A⁻¹ 를 계산해 단위행렬이 나오는지 확인하세요. 이 도구에서 A × B에 역행렬을 B로 넣으면 바로 확인돼요.
- 행렬식 부호: 두 행을 맞바꾸면 행렬식의 부호가 바뀌고, 한 행에 상수를 곱하면 행렬식도 그 상수배가 돼요.
- 곱의 행렬식: det(A×B) = det(A) × det(B). 위 예시에서 det(A) = −2, det(B) = 5×8 − 6×7 = −2이므로 det(A×B)는 4가 되어야 하고, 19×50 − 22×43 = 950 − 946 = 4로 맞아요.
행렬식의 기하학적 의미
2×2 행렬 [[a, b], [c, d]]를 두 벡터 (a, c)와 (b, d)를 열로 가진 변환으로 보면, 행렬식 ad − bc는 이 변환이 평면의 넓이를 몇 배로 바꾸는지를 나타내요. 단위정사각형이 변환되면 평행사변형이 되고, 그 넓이가 |ad − bc|예요. 예를 들어 [[2, 0], [0, 3]]은 가로를 2배, 세로를 3배 늘려서 넓이가 6배가 돼요(det = 6). 행렬식이 음수이면 방향이 뒤집혀요(거울상). 행렬식이 0이면 평면이 직선 하나로 납작해져서 되돌릴 수 없고, 그래서 역행렬이 없어요.
단위행렬과 대각행렬
단위행렬 I는 대각선이 모두 1이고 나머지는 0인 행렬로, 어떤 행렬 A에 곱해도 A×I = I×A = A예요. 대각행렬은 대각선 밖이 모두 0인 행렬이고, 행렬식은 대각선 원소의 곱이며 역행렬은 대각선 원소를 역수로 바꾼 것이에요. 예를 들어 [[2, 0], [0, 5]]의 행렬식은 10이고 역행렬은 [[1/2, 0], [0, 1/5]]예요. 이 도구에서 직접 입력해 확인해 보세요.
크기가 다른 행렬을 계산하고 싶을 때
이 도구는 2×2와 3×3 정사각행렬만 다뤄요. 2×3 행렬 같은 비정사각 행렬을 곱하려면 모자란 칸을 0으로 채워 정사각으로 만들고 계산하되, 결과에서 의미 없는 행과 열은 무시하면 돼요. 단, 행렬식·역행렬은 정사각행렬에서만 의미가 있어요. 4×4 이상은 파이썬 NumPy의 numpy.linalg.inv나 엑셀의 MINVERSE, MMULT, MDETERM 함수를 쓰면 편해요.
입력 팁
칸을 비워 두면 0으로 계산하고, 소수점은 점(.)으로 입력해요. 3×3에서 2×2로 크기를 바꾸면 왼쪽 위 2×2 칸의 값만 사용해요. 큰 정수가 들어가면 자바스크립트의 정밀도(약 15자리) 범위 안에서만 정확하므로 아주 큰 수는 별도 소프트웨어로 검산하세요. 계산은 브라우저에서만 이루어지며 입력값이 저장되거나 전송되지 않아요.
자주 하는 실수
- A×B와 B×A를 같다고 생각: 일반적으로 다르며, 결과가 같은 것은 특별한 경우뿐이에요.
- 원소끼리 곱셈: 행렬 곱은 같은 위치끼리 곱하는 것이 아니라 행과 열의 곱의 합이에요.
- 크기가 안 맞는 연산: 이 도구는 같은 크기(정사각)만 지원해요. 덧셈·뺄셈은 크기가 같아야 하고, 곱셈은 A의 열 수 = B의 행 수여야 해요.
- 역행렬 = 각 원소의 역수라고 착각: 그렇지 않아요. 2×2에서도 위치를 바꾸고 부호를 바꿔요.
- 소수 입력 시 오차: 소수 입력은 근삿값으로 계산하고 소수 8자리에서 반올림해요. 정수 입력은 분수로 정확하게 나와요.
행렬 연산은 수학 정의대로 계산한 결과예요. 큰 행렬이나 정밀 수치해석에는 전문 수학 소프트웨어를 쓰세요. 이 도구는 최대 3×3까지 지원해요.