1. MATLAB 배열/행렬
ㅇ MATLAB에서 사용되는 가장 기본적인 데이터형은, 배열 또는 행렬 임
2. MATLAB 배열/행렬의 규칙적인 생성
ㅇ 간격을 갖는 배열/행렬 생성 ☞ MATLAB 배열 행렬 참조
- linspace(하한,상한,원소수) : 등 간격으로 배열 생성
. 원소수 : 하한 ~ 상한 포함 양단간 원소 개수 (미지정시 원소수 100)
- logspace(하한,상한,원소수) : 로그 간격으로 배열 생성
. 원소수 : 10하한 ~ 10상한 포함 양단간 원소 개수 (미지정시 원소수 50)
ㅇ 특수한 형태의 배열/행렬 생성 함수 : ones(), zeros(), eye(), rand()
- 例) ones(1,N) : N개의 요소들이 모두 `1`을 갖는 행벡터
ones(m) : m x m인 `1` 행렬
ones(m,n) : m x n인 `1` 행렬
- 例) zeros(1,N) : N개의 요소들이 모두 `0`을 갖는 행벡터
zeros(m) : m x m인 `0` 행렬
zeros(m,n) : m x n인 `0` 행렬
- 例) eye(3) : 3 x 3 단위행렬 (주대각선성분 만 모두 `1`) 생성
- 例) rand(m) : 요소들이 모두 의사 난수로써 생성된 m x m인 정방행렬
ㅇ 대각 행렬
- 생성 : diag(v)
- 대각 요소 추출 : diag(A), diag(A,k)
3. MATLAB 배열/행렬의 특성 파악
ㅇ 배열/행렬 특성 파악
- size(A) : 배열/행렬(행 x 열,m x n)의 크기 (행과 열의 개수를 [m n] 형태로 반환)
- length(A) : 배열/행렬(행 x 열,m x n)의 길이 (n,m 중 더 큰 하나의 수 만 반환)
- numel(A) : 배열/행렬 내 요소들의 총 개수
- ndims(A) : 배열/행렬의 차원을 보여줌
- find(A)
. 0 이 아닌 원소들의 인덱스(자리) 번호
. 또한, 주어진 조건(논리식)을 만족하는 원소들의 인덱스 번호
. 例) find( height > 180 )
4. MATLAB 배열/행렬의 단순 계산
ㅇ 배열/행렬 원소들 간의 단순 계산
- sum(A) : 배열 내 각 열의 원소들을 모두 합하고, 이를 행 벡터로 반환
. A가 벡터이면, 모든 원소들의 합을 하나의 스칼라로써 반환
- prod(A) : 배열 내 각 열의 원소들을 모두 곱하고, 이를 행 벡터로 반환
. A가 벡터이면, 모든 원소들의 곱을 하나의 스칼라로써 반환
ㅇ 배열/행렬 원소들의 정렬
- sort(A) : 각 열을 증가(ascend)하는 순서로 정렬하고, 그 결과를 배열로 반환
ㅇ 최대값/최소값,0이 아닌 원소들 찾기
- max(A),min(A) : 배열 내 제일 큰/작은 원소 ☞ MATLAB 확률 통계 함수 참조
. 벡터 내 최대값/최소값 및 그 위치를 반환
. 행렬 내 각 열에서 최대값/최소값을 찾고, 이를 행 벡터로 반환
- find(A) : 배열 내 0(영)이 아닌 원소들의 인덱스를 [m n] 형태로 반환
5. MATLAB에서 벡터 연산,행렬 연산
ㅇ 벡터,행렬 연산 주요 함수
- norm(x) : 벡터 x의 크기를 구함 ☞ 노름(Norm) 참조
- dot(x,y) : 두 벡터 x,y 사이의 내적을 구함 ☞ 내적(Dot Product) 참조
. dot(A,B) = sum(A.*B) : 같은 위치의 원소끼리 곱한 결과를 모두 더한 것
- cross(x,y) : 두 벡터 x,y 사이의 외적을 구함 ☞ 외적(Cross Product) 참조
- transpose() ☞ 전치(Transposition) 참조
- kron(), surfnorm(), tril(), triu(), 등
ㅇ 기약행사다리꼴 : rref()
- 가우스 조르단 소거법 사용
ㅇ 선형연립방정식 풀이에 유용한 함수
- det() : 행렬식 계산 ☞ 행렬식(Determinant) 참조
- inv() : 역행렬 계산 ☞ 역행렬(Inverse Matrix) 참조
- rank : 랭크 계산 ☞ Rank(행렬의 계수) 참조
- size() : 행렬 크기 계산
. 출력이 두 개로 행 및 열의 갯수로 표시됨
- [L,U] = lu(A) ☞ LU 분해 참조