Essentials of Fortran-90/95/2003
Contents
[Return to Math 60 Homepage |
Return to Notes Listing Page]
- 1.1 History
- 1.2 Arranging Program Code
- 1.3 Free Source Form
- 1.4 Fixed Source Form
- 1.5 PROGRAM Header Statement and
Program Skeleton
- 1.6 The STOP Statement
- 1.7 Sample Program: Free Source Form
- 1.8 Sample Program: Fixed Source Form
- 1.9 Good, Bad, and Differences
- 2.1 Variable Identifier Length
- 2.2 Data Types, Default Typing, Declarations
- 2.3 Type Attributes, Parameters (Constants)
- 2.4 Initializations in Declaration Statements
- 2.5 IMPLICIT Type Statement
- 2.6 IMPLICIT NONE Statement
- 2.7 Constants
- 2.8 Arithmetic Operations
- 2.9 Note on Division
- 2.10 Assignment Statements
- 2.11 Type Conversion
- 3.1 Overview
- 3.2 Input/Output Commands
- 3.3 'Format-Free' Input and Output
- 3.4 FORMAT Statements
- 3.5 Basic Field Descriptors
- 3.6 Brief Examples
- 3.7 Carriage Control
- 3.8 Examples
- 3.9 Specifying FORMAT in
Input/Output
- 3.10 Repetition Factors
- 3.11 Checking for the End of the Input File
- 3.12 OPEN, CLOSE and INQUIRE
Statements
- 4.1 Additional Format Field Descriptors
- 4.2 Multiple Repetitions
- 4.3 Input Format
- 4.4 Input Format Example
- 4.5 Formats: Underuse and the Colon Field Separator
- 4.6 Formats: Overuse
- 4.7 'Format Free' Input and Output
- 4.8 Other Input and Output Commands
- 5.1 Logical Expressions and Operators
- 5.2 Simple Choice: IF Statement
- 5.3 One Line IF
- 5.4 What Happens If ... ?
- 6.1 Fortran 90/95/2003 DO Loop
- 6.2 Loop Operation
- 6.3 Short Example, Labeling Loops
- 6.4 CONTINUE Statement
- 6.5 FORTRAN 77 DO Loop
- 6.6 Historical Changes in the DO Loop
- 6.7 Example
- 6.8 Warning
- 6.9 Nested DO Loops
- 6.10 Example: Complete Fortran Programs
- 6.11 Other Fortran-90/95/2003 Loops
- 6.12 Loops and Detecting End of Input Files
- 7.1 Overview
- 7.2 Table of More Commonly-Used Intrinsic Functions
- 7.3 Examples
- 8.1 Overview
- 8.2 Declaring One Dimension Arrays
- 8.3 Accessing Array Elements
- 8.4 Sample Program Segment
- 8.5 Warning: Misleading Error Messages
- 8.6 Higher Dimensional Arrays
- 8.7 Storage of Multi-Dimensional Arrays
- 8.8 One-Dimension Arrays and Input and Output
- 8.9 Multi-Dimensional Arrays and Input and Output
- 8.10 Overuse of Formats With Arrays
- 8.11 Using Arrays in Fortran 90/95
- 8.12 The WHERE Construct
- 8.13 New Array Functions
- 8.14 Allocatable Arrays
- 8.15 Additional Features
- 9.1 Overview of Modules
- 9.2 Simple Example
- 9.3 Common Uses
- 9.4 Public and Private Attributes
- 9.5 Additional Features
- 9.6 Overview of Interfaces
- 10.1 Overview
- 10.2 Subroutines
- 10.3 Location of Subprogram Code
- 10.4 Subroutine Example
- 10.5 Arrays As Parameters
- 10.6 Fortran User-Defined Functions
- 10.7 Parameter Passing in Fortran
- 10.8 One Statement FUNCTIONS
- 10.9 Functions as Arguments; External and Intrinsic Statements
- 10.10 Multiple Entry Points
- 10.11 SAVE Statement
- 11.1 Recursion
- 11.2 Recursive Subroutines
- 11.3 Recursive Functions
- 12.1 Argument "Intent"
- 12.2 Optional and Labeled Arguments
- 12.3 Generic Subprograms
- 13.1 Declaring Character Variables
- 13.2 Assignments
- 13.3 Input/Output
- 13.4 Assignments of Different Length
- 13.5 Concatenation Operator
- 13.6 Other Character Operations: Functions for Character Data
- 13.7 Comparing Character Data
- 13.8 Substrings
- 14.1 Double Precision Variables and Constants
- 14.2 Complex Variables and Constants
- 14.3 Conversion Functions
- 14.4 Extended Numeric Precision and KIND
- 15.1 Overview
- 15.2 Defining a Derived Type
- 15.3 Declaring Variables of a Derived Type
- 15.4 Accessing Components of Derived Type Variable
- 15.5 Using Modules for Type Definition
- 15.6 Modules and Data Encapsulation
- 16.1 Select
- 16.2 Example
- 16.3 Interfaces and Operator Definition
- 16.4 Interfaces and Assignment Definition
- 17.1 Fortran-90/95/2003 Pointers
- 17.2 Declaring Simple Pointer Variables
- 17.3 Assignment of Pointer Variables
- 17.4 Using Pointer Variables for Linked Structures
- 17.5 Sample Program for Linked List
- 17.6 Cautions for Passing Pointer Variables to Subprograms
- 17.7 Sample Code: using CONTAINS
- 17.8 Sample Code: using an INTERFACE Block
- 17.9 Pointers and Matrices
- 17.10 Caution
- 18.1 Overview
- 18.2 GO TOs
- 18.3 Arithmetic IF
- 18.4 Two Value Logical IF
- 18.5 DATA Statements
- 18.6 COMMON
- 18.7 Block DATA Subprograms
- 18.8 EQUIVALENCE
- 18.9 PARAMETER Statements
- 18.10 DIMENSION Statements
- 18.11 Order of Specification Statements
- 19.1 Obsolescent Features
- 19.2 New Fortran-95 Features
- 19.3 New Fortran-2003 Features
- 19.4 HPF
This page is maintained by Dennis C. Smolarski, S.J.
dsmolarski@math.scu.edu
© Copyright 1999-2005 Dennis C. Smolarski, SJ, All rights
reserved.
Last changed: 29 June 2005.