Medical Instrumentation I - Report 03 - 1등 : 임승훈 2등 : 박상섭 3등 : 문희연 4등 : 박서연 5등 : 박동민 완소 3조
p를 찾기 위해 A를 1차, 2차, 3차…로 가정해가며 p를 추정 □ 최소자승오차법을 이용한 3차 함수의 추정 q는‘3차 함수 + noise’로 설정 q의 정확한 식은 모른다고 가정 p를 찾기 위해 A를 1차, 2차, 3차…로 가정해가며 p를 추정
1. 3차 함수‘y’설정 clear all %변수 초기화 clc %화면 초기화 t = 0:1:99; %t는 0~99의 1×100로 설정 t = t'; %연산을 위해 t를 Transpose y = (0.002).*(t-10).*(t-50).*(t-90); %y함수 설정 * : Matrix Product .* : Element Product
2. 3차 함수‘q’설정 noise = rand(100,1); %noise 설정 0~1사이의 무작위 숫자를 100×1만큼 생성 q = y+(10.*(noise-0.5)); %y와 noise를 이용해 임의의 3차 함수 q 설정
3. 그래프 출력 figure(1) %1번 그림 설정 plot(q,‘x’) %q함수를 ‘x’포인터로 출력 xlabel( ‘x’) %x축 텍스트 ylabel( ‘Function’) %y축 텍스트 grid on %그래프 라인 설정
4. 실제 출력 그래프 y
4. 실제 출력 그래프 random
4. 실제 출력 그래프 q
5-1. X = 1차로 가정 hold on %한 화면에 출력 X=[t ones(100,1)]; %Matrix X 설정 s=inv(X'*X)*X'*q; Fout=s(1).*X+s(2); %p값으로 1차 함수 설정 plot(Fout,'r'); %Fout 그래프 적색으로 출력 grid on 1 2 3 … 99 X =
5-1. X = 1차로 가정 불일치!!
5-2. X = 2차로 가정 기본적으로는 1차일 때와 동일 X, Fout만 다음과 같이 2차로 설정 X=[t.^2 t ones(100,1)]; Fout=p(1).*t.^2+p(2).*t.^1+p(3); 02 1 12 22 2 … 992 99 X =
5-2. X = 2차로 가정 불일치!!
5-3. X = 3차로 가정 기본적으로는 1차, 2차일 때와 동일 X, Fout만 다음과 같이 3차로 설정 X=[t.^3 t.^2 t ones(100,1)]; Fout=p(1).*t.^3+p(2).*t.^2+p(3).*t+p(4); 03 02 1 13 12 23 22 2 … 993 992 99 X =
5-3. A = 3차로 가정 일치!!
6. 최종 결과 원식 : 전개 : 결과 : 모든 계수가 소수점 아래 둘째 자리 이후에서만 차이가 나는 것을 확인할 수 있다.
Thanks for your attention!