수치해석 c++,matlab 프로그래밍
- 최초 등록일
- 2013.05.24
- 최종 저작일
- 2009.07
- 46페이지/ 한컴오피스
- 가격 3,000원
목차
ⅰ) 문제의 정의 및 정리
ⅱ) 이론
ⅲ) 수행계획 및 알고리즘
ⅳ) 프로그램 및 출력화면
ⅴ) 결과분석
ⅵ) 자료출처
본문내용
1) 문제의 정의 및 정리
Question. 다음 초기값 상미분방정식의 해를 Runge-Kutta 방법을 이용하여 구하라.
여기서 해는 의 구간에서 구한다. 또한 알고리즘의 정확도와 차분화 간격 등의 변화에 따라 해에 미치는 영향을 분석하라.
Runge-Kutta 방법을 이용한 경우가 얼마나 정확한지, 그리고 각종 변인들에 의한 영향이 어떠한지 비교하기 위해 우선 해석적 방법을 통해 exact solution을 구한다. 1차 선형 미분방정식의 해는 다음의 과정을 통해 구할 수 있다.
① 주어진 미분방정식 을 형태의 표준형으로 바꿔준다.
② (2)식의 P(x)를 이용하여, integrating factor(이하 I.F)를 구해준다. 이때, I.F=이다.
③ I.F를 (2)식에 곱해준 뒤, 식을 정리하면 다음과 같다.
④ (3)식을 양변 적분하여 y값을 구한다.
위의 과정을 거쳐서 문제에 주어진 미분방정식을 풀면 다음과 같다.
<중 략>
[고찰]
이번 프로젝트의 프로그래밍은 다른 프로젝트에서의 프로그래밍보다 전체적으로 코딩하는데 많은 시간이 걸리지 않았는데, 그 이유는 프로그램의 알고리즘이 쉬워서 라기 보다는 하나의 프로그램, 예를 들어 2차 기법의 프로그램의 코딩 하나만 끝내면 3차와 4차 기법은 핵심이 되는 지배방정식만 for문 내 에서 바꿔주면 되기 때문이다. 각각의 지배방정식도 그리 길지 않아서 바꿔주는데 어려움이 없었다. 다만 코딩하면서 조금 막혔던 부분은 exact solution과 각 기법들을 통해 구한 해의 비교를 위해 한 그래프 상에 그리는 것이었는데, for문 내 에서 기법의 해와의 오차를 구하기 위해 구한 exact solution 값들을 그래프를 그리는 데도 이용하려고 하니 N이 적은 경우(N=2 또는 5인 경우), 그 데이터 값이 충분치 않아 그래프가 곡선이 아니라 직선으로 나타났고 정확한 함수 형을 그리지 못했다. 따라서 이 문제를 해결하기 위해 for문 밖에 충분한 데이터 수를 가지는 exact solution에 대한 값들을 계산하여 그래프를 그리는데 활용하였다.
참고 자료
MATLAB을 이용한 수치해석(용호택 저, 다성출판사, 2000)
수치해석과 MATLAB(양원영 저, 교우사, 2000)
MATLAB을 이용한 수치해석 및 그래프(김민찬, 윤도영 공역, 도서출판 아진, 2001)