반응형

정리에 앞서, 저는 현재 지거국 3학년으로 재학 중인 공대생입니다. 여기에 나와있는 내용들은 제가 직접 공부하고 요약해서 쓰기 때문에 정확하지 않은 정보가 있거나, 원하는 정보를 얻지 못하실 수 있습니다. 최대한 객관적이고 다양하게 준비해서 올리도록 노력하겠습니다. 자료의 출처나 내용에 대한 질문은 댓글이나 hcbeom9635@gmail.com으로 보내주시면 감사하겠습니다.

교재는 Steven C. Chapra, Applied Numerical Methods with MATLAB for Engineers and Scientists (4 th edition), McGraw-Hill, 2019의 재본판을 사용했습니다.



근(Roots)을 찾는 방법(Method)들

수치해석은 기본적으로 '해를 찾아가는 방법'들을 배우는 과목입니다. f(x) = 0 을 만족하는 x의 값을 해 또는 근 이라고 부릅니다. 우리가 수학을 배울 때는 일반적인 함수들 (ex 1차,2차,3차 함수)을 주로 다뤄서 상대적으로 해를 구하기가 쉬웠습니다. 하지만 더 복잡한 함수의 근을 구해야 할 때는 기존의 방법이 비효율적일 수 있습니다. 즉, f(x) = 0의 방정식으로 푸는 것이 아닌, 여러 과정을 통해서 근삿값을 구한 후, 점점 근에 점근하는 식으로 찾는 것입니다. 그것이 바로 수치해석의 목적입니다.

 

5장에서는 Bracketing Methods, 6장에서는 Open Method를 배우고, Bracketing Methods + Open Methods = Brent's Methods도 뒤에 나옵니다. 

 

우선 5장의 Bracketing Methods를 알아보겠습니다.

 

Bracketing Methods

Bracketing Methods는 구간을 정하고 근을 추정하는 방법입니다. 그렇기에 구간을 위한 2개의 초기값을 요구합니다.

장점은 정확하게 근을 추정할 수 있다는 것이고,

단점은 속도가 느리다는 것입니다.

 

뒤에서 배우겠지만 Open Methods는 반대로 속도가 빠르지만, 정확하지 않아서 발산할 가능성이 있습니다.

 

Bracketing Methods에는 Bisection Method와 False position Method가 있습니다.

 

 

  • 근을 추정하는 구간을 정했을 때 나타는 여러 경우들

  • (a), (b) 경우

  • (c), (d) 경우

  • 일반적으로 두 경계치 간의 함수값의 곱이 양수이면 근이 존재하지 않고, 함수값의 곱이 음수이면 근이 존재한다. 그러나 (e), (f)의 경우처럼 두 경계치의 값이 양수임에도 근이 존재할 수 있고, 음수여도 근이 존재하지 않거나 중근이 존재할 수 있다. 즉, 여러 경우에 대해 정확한 알고리즘 개발은 매우 힘든일이다. 그래서 수치해법을 사용해야 하는 것이다.

 

  • Bracketing Method에서는 주로 두 경계치를 알맞게 정했다는 가정하에 시작하므로, 두 경계치의 곱을 통해서 근을 찾아낼 수 있다. 그 방법을 Incremental search라고 한다.

 

(1). Bisection Methods

 

  • absolute error는 bisection method에서 나타나는 에러이다. 이것을 통해 원하는 횟수 n을 구할 수 있으며, 반대로 원하는 횟수 n번에 대한 에러를 찾아낼 수도 있다.

 

(2). False Position

근을 쉽게 찾기 위해 경계의 함수크기를 고려한다. 주로 Bisection보다 효과적이고, 오차가 빨리 감소하는 장점이 있다.

 

항상 bisection보다 좋은 것은 아닌데, 이렇게 심한곡률을 가진 함수는 너무 느리게 수렴하는 단점이 존재한다.

반응형

+ Recent posts