Lecture:  Topics covered: 
1  Introduction to the Class 
 Syllabus 
 Why learn Programming 
 Why learn Fortran 
 Netscape 
 Setting your Password 
2  Introduction to Computers and Computing

 History 
 How a computer works and key elements 
 More on computer structure and operation 
 People in the history of computing 
 The hexadecimal number system 
 Floating Point Numbers 
3  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 
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 
5  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 
 A first program 
 A Simple form of the
program 
 A Modular form of the
program 
6  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 
7  Introduction to Fortran's Intrinsic Functions 
 Some basic INTRINSIC FUNCTIONS (LIST) 
 Some comments on speed 
 A sample program using intrinsic functions 
8  Writing your own Functions and Subroutines 
 What happens when you use a function 
 Subroutines 
9  The program turns ugly, using DBX 
 Getting some practice 
10  Logical Structures 
 Logical relational operators 
 Boolian Operators 
 Precedence 
11  Using Logic, If statements 
12  More ways to use branching 
 SELECT CASE statements 
 Computed GO TO statments 
 DO WHILE statements 
13  Use of IF statements for Interpolation 
 Interpolation and Weighted Transitions 
14  Linearization and Newton Iteration 
 Solution of an equation by Newton Iteration (Postscript) 
15  DO Loops 
16  Review for exam 1 
17  Spreadsheets 
18  Introduction to Arrays 
 Declaration of arrays 
 FORMAT statement 
19  More on Arrays, and use of Mathematica 
 Array Initialization 
 Mathematica 
 Mathematica quick reference 
 Some basic Mathematica 
20  Allocating space for a problem 
 Using Array space in subprograms 
 Dynamic Allocation of Array Space 
21  Data Types and Data Representation 
 Derived Type 
22  Input/Output 
 READ and WRITE 
 END=[label], READ option 
 Unformatted I/O 
 OPEN and CLOSE options 
 INQUIRE 
 REWIND 
 BACKSPACE 
 ENDFILE 
23  Using the FORMAT statement 
24  Laboratory Practice with I/O 
25  Character Variables 
 Fortran 77 
 CHARACTER intrinsic functions 
 Using CHARACTER Variables in I/O 
 Relational Operators and CHARACTER variables 
26  Fortran 90 CHARACTER intrinsic functions 
27  Applications of CHARACTERs 
 ASCII character set 
28  Sorting 
 Selection Sort 
 Bubble Sort 
 Insertion Sort 
 Using Isolated Subroutines in Unix 
29  Interpolation 
 Digression to EXTERNAL and INTRINSIC type statements 
 Interpolation 
31  Review for Second Exam 
32  Introduction to Multidimensional Arrays 
 Bivariate Interpolation
(Postscript) 
33  Fortran and Linear Algebra 
 Notation for Linear Algebra: Matrices (Postscript) 
34  Least Squares Fits 
35  Least Squares Fit of a Straight t Line to Data (Postscript) 
 Least Squares Fit of a Quadratic Curve to Data (Postscript) 
 Least Squares Fit of a General Polynomial to Data (Postscript) 
36  Array Intrinsic Functions and INTERFACE Structures 
 Writing your own array valued functions 
37  Optimizing Code 
 STATEMENT FUNCTIONS and INTERNAL FUNCTIONS 
38  Numerical Integration 

Trapezoidal and Simpson's Rules (Postscript) 
39  Basic Numerical Differentiation 
 Numerical Evaluation of
Derivatives (Postscript) 
 COMMON 
 Important features of COMMON 
 INCLUDE 
 MODULEs 
4041  Computer Solutions to ODEs 
 Computer Solutions to ODEs (Postscript) 
42  The Secant Method, Fortran90 POINTERs 
 The Secant Method for Solving Nonlinear Equations 
 The Secant Method (Postscript) 
 Fortran 90 Pointers 
 Array Pointers 
43  Gauss Elimination and LU Decomposition 
 Gauss Elimination and LU Decomposition (Postscript) 
44  Review for the Final Exam 