Fortran Programming
Numerical Methods
- Bisection Method
- Regula Falsi (False Position)
- Newton Raphson Method
- Secant method
- Newton Raphson – Non-Linear Equations
- Gauss Elimination Method
- Gauss Elimination Method (With Pivoting)
- Gauss Jordan Method
- Gauss Elimination – Determinant
- Gauss Jordan – Inverse Matrix
- Lagrange Interpolation
- Newton Divided Interpolation
- Newton Forward Interpolation
- Least Square Fitting
- Trapezoidal Rule
- Simpson 1/3rd Rule
- Simpson 3/8 Rule
- Euler’s Method
- Euler’s Modified Method
- Runge Kutta’s (2nd Order)
- Runge Kutta’s (4th Order)
NOTE – CREATE the ‘data.txt’ file in your program folder before running the program.
data.txt
100 10.63 150 13.03 200 15.04 250 16.81 300 18.42 350 19.90 400 21.27
Fortran Code
PROGRAM difference_table
IMPLICIT NONE
INTEGER::i,j,n,ierror,k=1
REAL::x(20),y(20),dt(20,20),t,s=0.0,p
OPEN(UNIT=1, FILE='data.txt', STATUS='UNKNOWN', ACTION='READ', IOSTAT=ierror)
PRINT *, "============================================"
PRINT *, "Program for Newton divided interpolation method - [BY - www.BottomScience.com]"
PRINT *, "============================================"
PRINT *,'DIFFERENCE TABLE'
PRINT *,'Number of values?'
READ(*,*)n
PRINT *,'Value at which we want calculation?'
READ(*,*)t
PRINT *,'Storing values in x and y arrays....'
READ(1,*)(x(i),y(i),i=1,n)
CLOSE(1)
CALL diff_table(x,y,dt,n)
!PRINTING
DO j=1,n-1
WRITE(*,*)(dt(j,i),i=1,n-j)
END DO
!VALUE OF FUNCTION
s=y(k)
DO i=1,n-1
p=1.0
DO j=1,i
p=p*(t-x(j))
END DO
s=s+p*dt(k,i)
END DO
PRINT *,"=================================================="
PRINT *,"CALCULATED VALUE OF DIVIDED DIFFERENCE AT",t,"-",s
END PROGRAM
!CALCULATING DIVIDED DIFFERENCES
SUBROUTINE diff_table(x1,y1,dt1,n1)
INTEGER::i1,j1,n1
REAL::x1(20),y1(20),dt1(20,20)
DO j1=1,n1-1
DO i1=1,n1-j1
IF(j1==1) THEN
dt1(i1,j1)=(y1(i1+1)-y1(i1))/(x1(i1+1)-x1(i1))
ELSE
dt1(i1,j1)=(dt1(i1+1,j1-1)-dt1(i1,j1-1))/(x1(i1+j1)-x1(i1))
END IF
END DO
END DO
RETURN
END SUBROUTINEFortran Programming
Numerical Methods
- Bisection Method
- Regula Falsi (False Position)
- Newton Raphson Method
- Secant method
- Newton Raphson – Non-Linear Equations
- Gauss Elimination Method
- Gauss Elimination Method (With Pivoting)
- Gauss Jordan Method
- Gauss Elimination – Determinant
- Gauss Jordan – Inverse Matrix
- Lagrange Interpolation
- Newton Divided Interpolation
- Newton Forward Interpolation
- Least Square Fitting
- Trapezoidal Rule
- Simpson 1/3rd Rule
- Simpson 3/8 Rule
- Euler’s Method
- Euler’s Modified Method
- Runge Kutta’s (2nd Order)
- Runge Kutta’s (4th Order)