Numerical Analysis Programs Using Fortran 90 - University of ...
Numerical Analysis Programs Using Fortran 90 - University of ...
Numerical Analysis Programs Using Fortran 90 - University of ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Problem:<br />
Write a program to determine the parameters A & B so that<br />
1<br />
f ( x)<br />
= , fits the following data in least squares sense.<br />
A x + B<br />
( ) 2<br />
X 0.5 2 3.5 4.1 5 6.2 7.5 9.2<br />
y 3.3 2 1.4 1.2 1 0.8 0.64 0.5<br />
program List_Square_Fitting<br />
dimension x(20),y(20),f(20)<br />
n=8<br />
data (x(i), i=1,8)/.5,2,3.5,4.1,5,6.2,7.5,9.2/<br />
data (y(i), i=1,8)/3.3,2,1.4,1.2,1,.8,.64,.5/<br />
sx=0; sxx=0;sy=0;sxy=0<br />
do i=1,n<br />
sx=sx+x(i)<br />
sy=sy+(y(i))**(-.5)<br />
sxx=sxx+x(i)**2<br />
sxy=sxy+x(i)*(y(i))**(-.5)<br />
enddo<br />
print *,'sx=',sx<br />
print *,'sxx=',sxx<br />
print *,'sy=',sy<br />
print *,'sxy=',sxy<br />
d=n*sxx-sx**2<br />
a1=(sxx*sy-sx*sxy)/d<br />
a2=(n*sxy-sx*sy)/d<br />
a=a2; b=a1<br />
print*,'A=',a<br />
print*,'B=',b<br />
s=0<br />
do i=1,n<br />
f(i)=1/(a*x(i)+b)**2<br />
s=s+(y(i)-f(i))**2<br />
enddo<br />
print*,'Standerd Deviation=',s<br />
end<br />
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^<br />
A= 9.919496 E-02<br />
B= 5.035566 E-01<br />
S= 2.275830 E-03<br />
32