Fortran 90 Lectures

Notice on Copying and Using this material


The following page is designed to provide quick access to the various sections of the lecture notes for the class. Timing of topics is only approximate, and assigments listed for lectures more than one week beyond the current date may be leftover from last year.

For specific descriptions of FORTRAN Statements or Functions see the


Date Lec. Reci-
tation
Topics covered:
1/13 1
Introduction to the Class, Computers, and Computing



Syllabus



Why learn Programming



Why learn Fortran



History of Computing



People in the history of computing



How a computer works



More on computer structure and operation



The hexadecimal number system



Floating Point Numbers
1/15 2
Fundamentals of Fortran, Programming Principles



Creating and Modifying Programs



Compiling your program



A word on standard versions of Fortran



Rules on the format of Fortran statements



Fortran 90 Free Format
1/15
2 Computer Operating Systems, Unix



Functions of an operating system



Unix



The "man" command



Unix file system



Useful Unix File System Commands: ls, mkdir, cd, pwd



Shells



Ending your interactive computer session
1/20 3
A First Program



A Simple form of the program



A Modular form of the program
1/22 4
Next Step, Arithmetic Assignment Statements



Simple Arithmetic Operators



Precedence of Operations



A fine point on the use of parentheses



Integer and Mixed Integer/Real Arithmetic



Floating Point Constants



Two other ways to assign values to Variables
1/22
4 More on Unix



More commands: cp, mv, rm, rmdir



Creating your own text files with the vi editor



Some special files in Unix



File Redirection



Stopping Programs



Ending your session
1/27 5
Introduction to Fortran's Intrinsic Functions



Some basic INTRINSIC FUNCTIONS (LIST)



Some comments on speed



A sample program using intrinsic functions
1/29 6
Writing your own Functions and Subroutines



What happens when you use a function



Subroutines
1/29
6 The program turns ugly, using DBX



Getting some practice
2/3 7
Logical Structures



Logical relational operators



Boolean Operators



Precedence
2/5 8
Using Logic, If statements
2/5
8 Use of IF statements for Interpolation



Interpolation and Weighted Transitions
2/10 9
More ways to use branching



SELECT CASE statements



Computed GO TO statments



DO WHILE statements
2/12 10
Linearization and Newton Iteration



Solution of an equation by Newton Iteration (Postscript)
2/12
10 Examples of Newton Iteration
2/17 11
DO Loops
2/19 12
Introduction to Arrays



Declaration of arrays



FORMAT statement
2/19
12 Review for Exam 1
2/24 13
More on Arrays



Array Initialization



Mathematica



Mathematica quick reference



Some basic Mathematica
2/26 14
Allocating space for a problem



Using Array space in subprograms



Dynamic Allocation of Array Space
2/26
14 Data Types and Data Representation



Derived Type
3/3 15
Input/Output



READ and WRITE



END=[label], READ option



Unformatted I/O



OPEN and CLOSE options



INQUIRE



REWIND



BACKSPACE



ENDFILE
3/5 16
Character Variables



Fortran 77



CHARACTER intrinsic functions



Using CHARACTER Variables in I/O



Relational Operators and CHARACTER variables
3/5
16 Using the FORMAT statement
3/17 17
Fortran 90 CHARACTER intrinsic functions
3/19 18
Test Problems
3/19
18 Applications of CHARACTERs



ASCII character set
3/24 19
Interpolation



EXTERNAL and INTRINSIC type statements



Linear and Quadratic Interpolation
3/26 20
Introduction to Multidimensional Arrays



Bivariate Interpolation (Postscript)
3/26
20 Sorting



Selection Sort



Bubble Sort



Insertion Sort



Using Isolated Subroutines in Unix
3/31 21
Fortran and Linear Algebra



Notation for Linear Algebra: Matrices
4/2 22
Array Intrinsic Functions and INTERFACE Structures



Writing your own array valued functions
4/2
22 Review for Second Exam
4/7 23
Optimizing Code



STATEMENT FUNCTIONS and INTERNAL FUNCTIONS
4/9 24
Least Squares Fits
4/9
24 Application of Least Squares



Least Squares Fit of a Straight t Line to Data



Least Squares Fit of a Quadratic Curve to Data



Least Squares Fit of a General Polynomial to Data
4/14 25
Numerical Integration



Trapezoidal and Simpson's Rules (Postscript)
4/16 26
Basic Numerical Differentiation



Numerical Evaluation of Derivatives



COMMON



Important features of COMMON



INCLUDE



More on MODULEs
4/16
26 The Secant Method for Solving Non-linear Equations



Secant Method (Postscript)
4/21 27
Computer Solutions to ODEs



Computer Solutions to ODEs (Postscript)
4/23 28
Fortran 90 Pointer Data Type
4/23
28 Practice Solving ODEs
4/28 29
Gauss Elimination and LU Decomposition



Gauss Elimination and LU Decomposition (Postscript)
4/30 30 30 Review for the Final Exam

Back to the 201 Homepage