Notice
잘못된 내용 지적은 언제나 환영합니다.
Recent Posts
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Java
- Inkscape
- html5
- 위키
- python
- 오늘의 문제
- 자바스크립트
- javascript
- html
- 수학
- C언어
- ┌─┐
- 확률
- 선형대수학
- 프로그래밍
- Nemeth Braille
- LaTeX
- HTML5.
- C
- IT
- 점자
- 글이_점점_짧아지고_있습니다.
- 물리학
- 프로그래밍 언어
- CSS
- C++
- 리브레위키
- 나무위키
- css3
- matlab
- Today
- Total
SturdyCobble's Study Note
LDU Decomposition By MATLAB 본문
NOTICE : 독학인 만큼, 잘못된 내용이 있을 수 있습니다. 내용 지적은 언제나 환영합니다.
더 이상 이 블로그에는 글을 올리지는 않을 예정입니다. 그렇지만 댓글을 달아주시면 최대한 답변드리고자 노력하겠습니다.
(LDU Decomposition만을 진행하며, 예외 처리 등은 없는 코드입니다. 직접 작성해 오류나 비효율적인 부분이 존재할 수 있습니다.)
function [L,D,U] = decomLDU(A)
% Decompose the given matrix A as LDU form
i = 1;
j = 1;
[R, C] = size(A); % square matrix A
if (R == C)
N = R; % since A is N by N. Maybe redundant.
L = eye(N);
D = eye(N);
while i <= N && j <= N
L(i,j) = A(i,j);
D(i,j) = A(i,j);
A(i,j:N) = A(i,j:N)./A(i,j);
for k = [i+1:N]
L(k,j) = A(k,j);
A(k,j:N) = A(k,j:N) - A(k,j).*A(i,j:N);
end
i = i + 1;
j = j + 1;
end
U = A;
L = L/D;
else
L = NaN;
end
end
'프로그래밍 > MATLAB' 카테고리의 다른 글
[MATLAB] 10. 기초 연산 & 특수문자 (0) | 2019.09.08 |
---|---|
MATLAB으로 (Reduced) Row Echelon Form 구하기 (0) | 2019.09.04 |
[MATLAB] 09. 데이터 처리와 파일 입출력 (0) | 2019.09.02 |
[MATLAB] 08. 함수 (0) | 2019.09.01 |
MATLAB으로 벡터장 표시하기 (0) | 2019.08.30 |
Comments