검색어 입력폼

Fortran: Runge-Kutta 법 인코딩 예 및 결과

저작시기 2005.09 |등록일 2008.09.12 워드파일MS 워드 (doc) | 7페이지 | 가격 1,000원

소개글

본 보고서는 Fortran으로 Runge-Kutta 법을 직접 인코딩 해보고 그 결과를 정리하였다.

목차

Question 7.1(a), Runge-Kutta 법
Question 7.3(b), Runge-Kutta 법
Question 7.5, Runge-Kutta 법

본문내용

C Differentail Equation Analysis by Runge-Kutta Method
C
READ(5,*) X0, Y0, XF, H0, HOUT
READ(5,*) ITMAX, EPS
NOUT = (XF - X0) / HOUT
NINT = HOUT / H0
H = 0.0
WRITE(6, 200)
200 FORMAT(10X, `H`, 14X, `X`, 11X, `Y`)
DO 10 I = 1, NOUT
DO 20 J = 1, NINT
K = 1
CALL RUNKUT(X0, Y0, YOLD, H0, K)
DO 30 L = 1, ITMAX
K = K * 2
H = H0 / K
CALL RUNKUT(X0, Y0, Y, H, K)
IF(YOLD .EQ. 0.0) YOLD = 1.0
IF(ABS((Y - YOLD)/YOLD) .LE. EPS) GOTO 1000
YOLD = Y


반응식이 A+B=C+D (정 반응속도계수: R1, 역 반응속도계수:R2)로서, 초기농도값이 A(0)=B(0)=1이다. 여기서 반응식이 모두 1:1:1:1 반응이므로, 왼쪽은 한 화합물로 보고, 오른쪽은 또 다른 한 화합물로 취급을 해서 계산한다. 즉, E=F라는 반응식에 대해서 풀면 된다. (E=A+B, F=C+D) 결과값으로 나오는 농도값에 0.5를 곱해주면, 각각의 화합물에 대한 농도값을 계산할 수 있을 것이다.

DIMENSION Y(2)
READ(5,*) N, H
READ(5,*) X, Y10, Y20
Y(1) = Y10
Y(2) = Y20
DO 10 I = 1, 10
CALL RUNKUT(N, X, Y, H)
WRITE(6,200) I, X, Y(1), Y(2)
200 FORMAT(8X, I2,1X, 3(8X, F6.3))
10 CONTINUE
STOP
END

참고 자료

없음
다운로드 맨위로