상세 컨텐츠

본문 제목

C언어 수치계산 미분방정식 오일러법, 4차 룽게 쿠타법 알고리즘

IT/C

by J KIMS 2020. 9. 5. 14:49

본문

반응형

위 미분방정식의 초기값 문제를 오일러법과 4차 룽게 쿠타법을 이용해 풀어보겠습니다.

 

📣 오일러법의 알고리즘

1. f(x,y), a, b, c, n을 지정 (구간 [a,b]를 n등분, c는 초기값)

2. h = (b-a)/n, x0 =a, y0 = c

3. j=0, ,1, 2, ..., n에 대해서 다음 계산을 실행

오일러 방법으로 푸는 알고리즘은 euler 함수 안에 구현함

 

📣 4차 룽게 쿠타법의 알고리즘

1. f(x,y), a, b, c, n을 입력

2. h=(b-a)/n, x0 = a, y0 = c

3. j = 0,1,2,...,n 에 대해서 다음 계산을 실행

 

 

룽게 쿠타법을 이용한 풀이는 runge 함수안에 구현함

 

n값이 20인 이유는 구간을 나눈 폭(= h값)을 0.1로 설정하기 위해서임 (0~2 구간을 20으로 나누면 0.1)

 

🚩 출력결과

 

x[i]             euler             runge              exact
  0.00        0.500000        0.500000        0.500000
  0.10        0.575000        0.575021        0.575021
  0.20        0.650063        0.650166        0.650166
  0.30        0.725312        0.725557        0.725558
  0.40        0.800870        0.801312        0.801312
  0.50        0.876852        0.877541        0.877541
  0.60        0.953369        0.954344        0.954344
  0.70        1.030519        1.031812        1.031812
  0.80        1.108391        1.110026        1.110026
  0.90        1.187063        1.189051        1.189051
  1.00        1.266597        1.268942        1.268942
  1.10        1.347045        1.349740        1.349740
  1.20        1.428443        1.431475        1.431475
  1.30        1.510818        1.514165        1.514165
  1.40        1.594180        1.597816        1.597816
  1.50        1.678533        1.682426        1.682426
  1.60        1.763867        1.767982        1.767982
  1.70        1.850166        1.854465        1.854465
  1.80        1.937404        1.941851        1.941851
  1.90        2.025552        2.030109        2.030109
  2.00        2.114573        2.119203        2.119203

 

 

알고리즘 출처 : サイエンス社 数値計算入門 140p, 144p

프로그램은 내가 직접 작성. 잘못된 부분 있으면 덧글로 알려주세요.

반응형

관련글 더보기

댓글 영역