책소개
* 종이책 6쇄 수정 사항이 반영된 도서입니다.
선형대수는 중요합니다. 특히 프로그래머라면!
선형대수는 프로그래머에게 점점 더 중요합니다. 컴퓨터 그래픽을 많이 활용하는 게임, 수치를 다루는 수치 해석, 많은 데이터를 다루어야 하는 데이터 과학 등의 분야로 프로그래밍이 확대되고 있기 때문입니다. 이런 분야의 책에서는 선형대수를 기초 도구로 활용합니다. 책의 내용을 이해하려면 ‘수식’을 따라가야 합니다. 수식을 따라가려면 수식의 의미를 이해해야 합니다.
수식의 의미를 이해하는 선형대수책!
수식이 가진 의미를 어떻게 이해할 수 있을까요? 이 책은 수학 전공자가 아닌 독자에게 선형대수의 핵심을 이야기하고자 합니다. 다양한 대상을 다루는 다양한 분야의 공학에서 수학이 어떻게 도움이 되는지를 이야기합니다. 공학에서 공통적으로 필요한 수학 문제를 제시하고, 문제를 풀어가는 과정을 통해 선형대수의 개념을 이해하고 선형대수를 푸는 방법까지 제시합니다.
목차
0장 왜 선형대수를 배워야 하는가?
0.1 공간이라고 생각하면 직관이 먹힌다
0.2 근사 수단으로 사용하기 편리하다
1장 벡터·행렬·행렬식
1.1 벡터와 공간
1.1.1 우선적인 정의: 수치의 조합을 정리하여 나타내는 기법
1.1.2 ‘공간’의 이미지
1.1.3 기저
1.1.4 기저가 되기 위한 조건
1.1.5 차원
1.1.6 좌표에서의 표현
1.2 행렬과 사상
1.2.1 우선적인 정의: 순수한 관계를 나타내는 편리한 기법
1.2.2 여러 가지 관계를 행렬로 나타내다 (1)
1.2.3 행렬은 사상이다
1.2.4 행렬의 곱 = 사상의 합성
1.2.5 행렬 연산의 성질
1.2.6 행렬의 거듭제곱 = 사상의 반복
1.2.7 영행렬, 단위행렬, 대각행렬
1.2.8 역행렬 = 역사상
1.2.9 블록행렬
1.2.10 여러 가지 관계를 행렬로 나타내다 (2)
1.2.11 좌표 변환과 행렬
1.2.12 전치행렬
1.2.13 보충 (1) 크기에 집착하라
1.2.14 보충 (2) 성분으로 말하면
1.3 행렬식과 확대율
1.3.1 행렬식 = 부피 확대율
1.3.2 행렬식의 성질
1.3.3 행렬식의 계산법 (1) 수식 계산▽
1.3.4 행렬식 계산법 (2) 수치 계산▽
1.3.5 보충: 여인수 전개와 역행렬▽
2장 랭크·역행렬·일차방정식
2.1 문제 설정: 역문제
2.2 성질이 좋은 경우(정칙행렬)
2.2.1 정칙성과 역행렬
2.2.2 연립일차방정식의 해법(정칙인 경우)▽
2.2.3 역행렬의 계산▽
2.2.4 기본변형▽
2.3 성질이 나쁜 경우
2.3.1 성질이 나쁜 예
2.3.2 성질의 나쁨과 핵•상
2.3.3 차원 정리
2.3.4 ‘납작하게’를 식으로 나타내다(선형독립, 선형종속)
2.3.5 단서의 실질적인 개수(랭크)
2.3.6 랭크 구하는 방법 (1) 눈으로
2.3.7 랭크 구하는 방법 (2) 손 계산▽
2.4 성질의 좋고 나쁨의 판정 (역행렬이 존재하기 위한 조건)
2.4.1 ‘납작하게 눌리는가’가 포인트
2.4.2 정칙성과 같은 조건 여러 가지
2.4.3 정칙성의 정리
2.5 성질이 나쁜 경우의 대책
2.5.1 구할 수 있는 데까지 구한다 (1) 이론편
2.5.2 구할 수 있는 곳까지 구한다 (2) 실전편∇
2.5.3 최소제곱법
2.6 현실적으로는 성질이 나쁜 경우 (특이에 가까운 행렬)
2.6.1 무엇이 곤란한가
2.6.2 대책 예: 티호노프의 정칙화
3장 컴퓨터에서의 계산 (1)
3.1 서론
3.1.1 수치 계산을 얕보지 마라
3.1.2 이 책의 프로그램에 대해
3.2 준비 운동: 덧셈, 뺄셈, 곱셈, 나눗셈
3.3 LU 분해
3.3.1 정의
3.3.2 분해하면 뭐가 좋나요?
3.3.3 처음에 분해가 가능한가요?
3.3.4.LU 분해의 계산량은?
3.4 LU 분해의 순서 (1) 보통의 경우
3.5 행렬식을 LU 분해로 구하다
3.6 일차방정식을 LU 분해로 풀다
3.7 역행렬을 LU 분해로 구하다
3.8 LU 분해의 순서 (2) 예외가 발생한 경우
3.8.1 정렬이 필요한 상황
3.8.2 정렬해도 앞이 막혀버리는 상황
4장 고윳값, 대각화, 요르단 표준형
4.1 문제 설정: 안정성
4.2 1차원의 경우
4.3 대각행렬의 경우
4.4 대각화할 수 있는 경우
4.4.1 변수변환
4.4.2 좋은 변환을 구하는 방법
4.4.3 좌표변환으로서의 해석
4.4.4 거듭제곱으로서의 해석
4.4.5 결론: 고윳값의 절댓값 나름
4.5 고윳값, 고유벡터
4,5.1 기하학적인 의미
4,5.2 고윳값, 고유벡터의 성질
4.5.3 고윳값의 계산: 특성방정식▽
4,5.4 고유벡터의 계산
4.6 연속시간 시스템
4.6.1 미분방정식
4.6.2 1차원일 때
4.6.3 대각행렬일 때
4.6.4 대각화할 수 있는 경우
4.6.5 결론: 고윳값(실수부)의 부호
4.7 대각화할 수 없는 경우▽
4.7.1 먼저 결론
4.7.2 대각까지는 못하더라도 - 요르단 표준형
4.7.3 요르단 표준형의 성질
4.7.4 요르단 표준형으로 초깃값 문제를 풀다(폭주 판정의 최종 결론)
4.7.5 요르단 표준형 구하는 법
4.7.6 요르단 표준형으로 변환할 수 있는 것의 증명
5장 컴퓨터에서의 계산 (2)
5.1 문제 설정: 안정성
5.1.1 손 계산과 차이점
5.1.2 갈루아 이론
5.1.3 5.5 이상 행렬의 고윳값을 구하는 순서는 존재하지 않는다!
5.1.4 대표적인 고윳값 계산 알고리즘
5.2 야코비법
5.2.1 평면 회전
5.2.2 평면 회전에 의한 닮음변환
5.2.3 계산 공부
5.3 거듭제곱의 원리
5.3.1 절댓값 최대의 고윳값을 구하는 경우
5.3.2 절댓값 최소의 고윳값을 구하는 경우
5.3.3 QR 분해
5.3.4 모든 고윳값을 구하는 경우
5.4 QR법
5.4.1 QR법의 원리
5.4.2 헤센버그 행렬
5.4.3 하우스홀더 법
5.4.4 헤센버그 행렬의 QR 반복
5.4.5 원점이동, 감차
5.4.6 대칭행렬의 경우
5.5 역반복법
부록
A. 그리스 문자
B. 복소수
C. 기저에 관한 보충
D. 미분방정식의 해법
E. 내적과 대칭행렬·직교행렬
F. 애니메이션 프로그램 사용법
G. Ruby 코드 실행 방법