[matlab]을 이용하여 방정식의 근찾기(bisection, newton, secant, 고정점 반복법)

소개글

[matlab]을 이용하여 연립방정식의 근을 찾는 방법을 코드와 함께 보고서썻습니다
(bisection, newton, secant, 고정점 반복법)

또한 수렴속도 또한 구한 글입니다.

목차

없음

본문내용

bisection method을 이용하여 근사 근을 구하여라. 이때, 허용오차가 10^-6일 때 몇 번 반복하는가? 이론과 비교하여라.

☤ 문제 설명
bisection method을 이용하여 근사 근을 구하는 방식, bisection 방법은 초기 구간 값을 중간씩 잘라 나아가면서, 근사 값을 유추해 나가는 과정이다. 또한 이 문제에서는 matlab과 실제 계산간의 오차 비교하여 matlab의 계산과정에 대한 신뢰도를 측정하는 문제이다.

☤ 코드
a=0.5; % 초기값 1
b=1.0; % 초기값 2
n=0.0; % 실행 횟수
toler = 1e-6; % 오차
zero = 1e-14; % 0 표시
while(abs(b - a) >= 2*toler && abs(func_1((b - a)/2) >= zero))
% 절대값 |b-a|가 허용오차보다 작거나
% 근이 0일 때는 중지한다.
c= (a+b)/2; % STEP 1 중간값 계산
if(func_1(b)*func_1(c) < 0 ) % STEP 2 func(b)가 0보다 작으면
a = c;
elseif(func_1(a)*func_1(c) < 0 ) % STEP 2 func(a)가 0보다 크면
b = c;
else % STEP 2 같을 경우 중지
break
end
n= n+1; % 횟수 Update
end
c % 최종 값
func_1(c)
n % 횟수

☤ 데이터
c(최종 값) =
0.66666603088379
ans(확인) =
-1.801380858523771e-005
n(횟수) =
18

☤ 분석
이론상 구간이 a가 0.5이고, b가 1일 때 근사값이 0.66이라고 나왔다. 이 근사 값을 확인하기 위해 실제 함수에다가 근사 값을 대입했더니 0을 근사하는 것을 보아서 근사 값이 비교적 정확하다는 것을 알 수 있다. 또한 횟수는 18번 나왔는데, 이론상 구간이 a가 0.5이고, b가 1일 때 값은 =17.93이다. 분석한 n이 18이기 때문에 이론과 실제 n값이 서로 일치 하는 것을 알 수 있다. 또한 구간을 변경하여 a=0, b=0.5로 바꿀 경우 근사 값이 0.33으로 수렴하는 것 또한, 알 수 있었다.

추천도서

  • 이 자료에 대해 평가하신 회원이 없습니다.
저작시기
2008.10
등록일
2008.12.05
파일형식
한글 (hwp)
페이지
18페이지
가격
2,500원
2주간 다운받은 회원 학교정보안내
최근 본 자료더보기