fortran 90 - جامعة بابل | university of babylon fortran 90 lecturer : rafel hekmat hameed...
TRANSCRIPT
-
FORTRAN 90
LLeeccttuurreerr :: RRaaffeell HHeekkmmaatt HHaammeeeedd UUnniivveerrssiittyy ooff BBaabbyylloonn
SSuubbjjeecctt :: FFoorrttrraann 9900 CCoolllleeggee ooff EEnnggiinneeeerriinngg
YYeeaarr :: SSeeccoonndd BB..SScc.. MMeecchhaanniiccaall EEnnggiinneeeerriinngg DDeepp..
SSSpppeeeccciiiaaalll FFFooorrrmmmsss ooofff MMMaaatttrrriiiccceeesss
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 where k is a scalar.
A scalar matrix with2 2, 33 , and 44
The transpose of a matrixwhen the rows and
A symmetric matrixmatrix A is the samebelow.
DDDeeettteeerrrmmmiiinnnaaannEvery square matrix has a value called a
matrices have defined determinants.
The determinant of a 2x2diagonals.
A diagonal matrix is called a scalar matrix, if a11 = a22 = . The matrix D below is a scalar matrix with k
A scalar matrix with k=1 , is called an identity matrix . Shown below are4 identity matrices.
transpose of a matrix A, denoted as AT, is the matrix
columns of matrix A are interchanged.
symmetric matrix A , is one such that AT=A , that is, the transpose of a
is the same as A . An example of a symmetric matrix is shown
annntttsss Every square matrix has a value called a determinant
ices have defined determinants.
2 square matrix is the difference of the products of the
= a33 = = ann = k The matrix D below is a scalar matrix with k=4.
. Shown below are
, is the matrix that is obtained are interchanged.
, that is, the transpose of a . An example of a symmetric matrix is shown
determinant, and only square
square matrix is the difference of the products of the
-
The "down" diagonal is in red and the "diagonals are always subtracted from the than a 2 x 2 matrix become a little determinant but the same rules apply. When finding the determinant of a columns to the right side of the matrix like so
A fortran 90 program to find the determinant of
Program determinant
Integer, parameter::n
Integer, dimension (n,m):: a
Read(*,*) ((a(I,j),j=1,n)
Do i=1,n ; do j
a(i,n+j)=a(I,j) ; enddo
do i=1,n ;det1=1
do j=1,n
det1=det1*a(j,i+j-1) ;
det=det+det1-det2 ;
write(*,6) "determinant
" diagonal is in red and the "up" diagonal is in blue. The diagonals are always subtracted from the down diagonals. Matrices that are larger
matrix become a little more complicated when finding the but the same rules apply. Let's find
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
program to find the determinant of 33 matrix
Program determinant ; implicit none
n=3, m=5
dimension (n,m):: a ; Integer:: i, j, det1, det
),i=1,n)
do j=1,n-1
enddo ; enddo
1 ; det2=1
; det2=det2*a(j,2*n-j-i+1) ;enddo
; enddo
determinant=", det ;6 format(2x,a,2x,i8);
" diagonal is in blue. The up diagonals. Matrices that are larger
more complicated when finding the
matrix it is helpful to write the first two
matrix.
det2, det
;enddo
end
-
If the matrix has more than three columns, then the determinant be determined, as illustrated by example below
3 6 8 6 4 7 7 7 3 1 5 2 5 2 4 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
A=
-
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