수치해석을 보면 좀 뭐랄까 =_= 아리송한 기분이 되요.

jephir의 이미지

그냥 겉핥기로만 배우긴 했지만... 예전에 수치해석을 아주 쬐....금 배운적이 있는데...
pi값을 계산할 일이 있어서 원의 넓이를 이용해 구하고 있는데요. 그냥 학교 과제라서요 =ㅅ=
근데 그 과정에서 제곱근을 구해야되는데... 이것도 근사값 -_-
근사값을 구하기 위해 근사값을 이용하게 되는데.. 어차피 끝까지 계산이 안되니까 그려러니 하는데

pi값의 정밀도를 올리기 위해 제곱근의 정밀도를 올려야 되는데
제곱근의 정밀도를 올리기 위해 방법을 고민하다가
수치해석책을 다시 펼쳐서 뭐가 괜찮을까 살펴봤습니다만.

newton-raphson법.. 이걸 봤는데
예를들면 2의 제곱근을 구하기 위해서 다른 수의 제곱근 값을 알아야 되더군요 =_=
제곱근을 구하기 위해서 제곱근을 구해야 된다니... 어쩌라는거지... =_=;;

여튼 이리저리 고민하다가 뭐.. 이름은 모르겠는데 곱하기 빼기로 구하는 방법인가..
그걸 찾았는데 그거로 한번 해봐야겠네요.
그냥 뭔가 아리송한 기분이었습니다. 아직 지식이 짧아서 그런건지;;

sblade의 이미지

왜 다른 수의 제곱근을 알아야 하죠?

x_n+1 = x_n - f(x_n)/f'(x_n) 만 반복하면 quadratic convergence 가 보장되지 않나요?

jephir의 이미지

제가 아직 무식해서 그런가 ㅠ_ㅠ

(x_n+1) = (x_n) - f(x_n)/f'(x_n) 을 이용하고...

a라는 수의 제곱근을 구하려면 f(x) = sqrt(x) - a <-요 방정식의 해를 구하고..
f'(x) = 1/(2*sqrt(x))이니까...

f(x_n)/f'(x_n) = (sqrt(x_n) - a) / (1/(2*sqrt(x_n))
= 2*(x_n) - 2*a*sqrt(x_n)

이렇게 나오고..
요골 첫식에 넣으면

(x_n+1) = 2*a*sqrt(x_n) - (x_n)

이렇게 나오니까
sqrt(2)를 구한다고 하고(a=2), 첫 근을 0.5로 가정하면

n=0 f(x)=0.5
n=1 f(x)=2*2*sqrt(0.5) - 0.5
....
이렇게 되서... 뭐야? 0.5의 제곱근을 또 구해야되잖아?!?! 그럼 다음번엔 n=1에서 나온 값의 제곱근을 또 구해야되?
이런 생각에 때려쳤는데; 제가 잘못 생각한건가요 =_=;; 사실 틀렸을까봐 더 걱정인;;

octaphial의 이미지

a의 제곱근이 해로 나오는 방정식은

f(x) = x^2 - a = 0

이지요. 첫 방정식이 틀렸으니 뒷 부분은 알아서 해 보시기를 바랍니다.

jephir의 이미지

켁 헐키.. ㅋㅋㅋㅋ;; 맙소사네요
당장해봐야겠어요

jaco의 이미지

은 안되나요 ㅋㅋ