You are on page 1of 5

FORTRAN 90

Lecturer : Rafel Hekmat Hameed Subject : Fortran 90 Year : Second B.Sc. University of Babylon College of Engineering Mechanical Engineering Dep.

S Sp pe ec ciia all F Fo or rm ms so of fM Ma at tr riic ce es s


A square matrix is said to be upper triangular when all the elements below the diagonal are zero. The matrix below is an upper triangular matrix.

In an upper triangular matrix, not all elements above the diagonal need to be non-zero. A square matrix is said to be lower triangular, when all the elements above the diagonal are zero. The matrix below is a lower triangular matrix.

In a lower triangular matrix, not all elements below the diagonal need to be non-zero. A square matrix is said to be diagonal, if all elements are zero, except those in the diagonal. The matrix below is a diagonal matrix.

A diagonal matrix is called a scalar matrix, if a11 = a22 = a33 = = ann = k where k is a scalar. . The matrix D below is a scalar matrix with k=4. k

A scalar matrix with k=1 , is called an identity matrix . Shown below are 2 2, 33 , and 44 identity matrices.

The transpose of a matrix A, denoted as AT, is the matrix that is obtained when the rows and columns of matrix A are interchanged.

A symmetric matrix A , is one such that AT=A , that is, the transpose of a matrix A is the same as A . An example of a symmetric matrix is shown below.

Determina nts an
Every square matrix has a value called a determinant, and only square matrices ices have defined determinants. The determinant of a 2x2 2 square matrix is the difference of the products of the diagonals.

The "down" " diagonal is in red and the "up" " " diagonal is in blue. The up diagonals are always subtracted from the down diagonals. Matrices that are larger than a 2 x 2 matrix become a little more complicated when finding the determinant but the same rules apply. Let's find

When finding the determinant of a 3 x 3 matrix it is helpful to write the first two columns to the right side of the matrix like so

A fortran 90 program to find the determinant of 33 matrix. matrix


Program determinant ; implicit none

Integer, parameter::n n=3, m=5 Integer, dimension (n,m):: a Read(*,*) ((a(I,j),j=1,n) ),i=1,n) Do i=1,n ; do j=1,n-1 j enddo ; ; enddo det2=1 ; Integer:: i, j, det1, det2, det det

a(i,n+j)=a(I,j) ; do i=1,n do j=1,n

;det1=1 1

det1=det1*a(j,i+j-1) ; det=det+det1-det2 ;

det2=det2*a(j,2*n-j-i+1) enddo ;6 format(2x,a,2x,i8);

;enddo

write(*,6) "determinant determinant=", det

end

If the matrix has more than three columns, then the determinant be determined, as illustrated by example below 3 4 3 5

A=

6 7 1 2

8 7 5 4

6 7 2 3

Det A =


  

Det A= (-138*-9) ( -180*-9) = -378


IMPLICIT NONE INTEGER ,DIMENSION (4,4)::A INTEGER,DIMENSION (1:3,1:3)::B INTEGER::I, J, N DATA A/3,4,3,5,6,7,1,2,8,7,5,4,6,7,2,3/ DO N=4, 2 ,-1 DO I=1, N-1 DO J=1,N-1 B(I,J)=A(1,1)*A(I+1,J+1)-A(1,J+1)*A(I+1,1) ENDDO ; ENDDO

DO I=1,N-1 DO J=1,N-1 A(I,J)=B(I,J) ENDDO;ENDDO DO I=1,N-1 PRINT*,(B(I,J),J=1,N-1) ENDDO PRINT *, ' ******************************************* ' ENDDO END

You might also like