Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home

HP Fortran 90 Programmer's Reference: HP Fortran 90 Programmer's Reference

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

HP Part Number: B3908-90002

Edition: First Edition

Published: October 1998


Table of Contents

Preface
New in HP Fortran 90 V2.0
Scope
Notational conventions
Command syntax
Associated documents
1 Introduction to HP Fortran 90
HP Fortran 90 features
Source format
Data types
Pointers
Arrays
Control constructs
Operators
Procedures
Modules
I/O features
Intrinsics
2 Language elements
Character set
Lexical tokens
Names
Program structure
Statement labels
Statements
Source format of program file
Free source form
Fixed source form
INCLUDE line
3 Data types and data objects
Intrinsic data types
Type declaration for intrinsic types
Implicit typing
Constants
Character substrings
Character strings as automatic data objects
Derived types
Defining a derived type
Sequence derived type
Structure component
Declaring a derived type-object
Structure constructor
Alignment of derived-type objects
A derived-type example
Pointers
Pointer association status
4 Arrays
Array fundamentals
Array declarations
Explicit-shape arrays
Assumed-shape arrays
Deferred-shape arrays
Assumed-size arrays
Array sections
Subscript triplet
Vector subscripts
Array-valued structure component references
Array constructors
Array expressions
Array-valued functions
Intrinsic functions
User-defined functions
Array inquiry intrinsics
5 Expressions and assignment
Expressions
Operands
Operators
Special forms of expression
Assignment
Assignment statement
Pointer assignment
Masked array assignment
6 Execution control
Control constructs and statement blocks
CASE construct
DO construct
IF construct
Flow control statements
CONTINUE statement
CYCLE statement
EXIT statement
Assigned GO TO statement
Computed GO TO statement
Unconditional GO TO statement
Arithmetic IF statement
Logical IF statement
PAUSE statement
STOP statement
7 Program units and procedures
Terminology and concepts
Program units
Procedures
Scope
Association
Main program
External procedures
Procedure definition
Procedure reference
Returning from a procedure reference
Alternate entry points
Internal procedures
Statement functions
Arguments
Argument association
Keyword option
Optional arguments
Duplicated association
INTENT attribute
%VAL and %REF built-in functions
Procedure interface
Interface blocks
Generic procedures
Defined operators
Defined assignment
Modules
Module program unit
USE statement
Program example
Block data program unit
8 I/O and file handling
Records
Formatted records
Unformatted records
End-of-file record
Files
External files
Internal files
Connecting a file to a unit
Connecting to an external file
Performing I/O on internal files
Preconnected unit numbers
Automatically opened unit numbers
File access methods
Sequential access
Direct access
Nonadvancing I/O
I/O statements
Syntax of I/O statements
I/O specifiers
I/O data list
ASA carriage control
Example programs
Internal file
Nonadvancing I/O
File access
9 I/O formatting
FORMAT statement
Format specification
Edit descriptors
Character string ('...' or "...") edit descriptor
Newline ($) edit descriptor
Slash (/) edit descriptor
Colon (:) edit descriptor
A and R (character) edit descriptors
B (binary) edit descriptor
BN and BZ (blank) edit descriptors
D, E, EN, ES, F, G, and Q (real) edit descriptors
H (Hollerith) edit descriptor
I (Integer) edit descriptor
L (Logical) edit descriptor
O (Octal) edit descriptor
P (scale factor) edit descriptor
Q (bytes remaining) edit descriptor
S, SP, and SS (plus sign) edit descriptors
T, TL, TR, and X (tab) edit descriptors
Z (hexadecimal) edit descriptor
Embedded format specification
Nested format specifications
Format specification and I/O data list
10 HP Fortran 90 statements
Attributes
Statements and attributes
ACCEPT (extension)
ALLOCATABLE (statement and attribute)
ALLOCATE
ASSIGN
AUTOMATIC (extension)
BACKSPACE
BLOCK DATA
BUFFER IN (extension)
BUFFER OUT (extension)
BYTE (extension)
CALL
CASE
CHARACTER
CLOSE
COMMON
COMPLEX
CONTAINS
CONTINUE
CYCLE
DATA
DEALLOCATE
DECODE (extension)
DIMENSION (statement and attribute)
DO
DOUBLE COMPLEX (extension)
DOUBLE PRECISION
ELSE
ELSE IF
ELSEWHERE
ENCODE (extension)
END
END (construct)
END (structure definition, extension)
END INTERFACE
END TYPE
ENDFILE
ENTRY
EQUIVALENCE
EXIT
EXTERNAL (statement and attribute)
FORMAT
FUNCTION
GO TO (assigned)
GO TO (computed)
GO TO (unconditional)
IF (arithmetic)
IF (block)
IF (logical)
IMPLICIT
INCLUDE
INQUIRE
INTEGER
INTENT (statement and attribute)
INTERFACE
INTRINSIC (statement and attribute)
LOGICAL
MAP (extension)
MODULE
MODULE PROCEDURE
NAMELIST
NULLIFY
ON (extension)
OPEN
OPTIONAL (statement and attribute)
OPTIONS (extension)
PARAMETER (statement and attribute)
PAUSE
POINTER (Cray-style extension)
POINTER (statement and attribute)
PRINT
PRIVATE (statement and attribute)
PROGRAM
PUBLIC (statement and attribute)
READ
REAL
RECORD (extension)
RETURN
REWIND
SAVE (statement and attribute)
SELECT CASE
SEQUENCE
STATIC (statement, attribute, extension)
STOP
STRUCTURE (extension)
SUBROUTINE
TARGET (statement and attribute)
TASK COMMON (extension)
TYPE (declaration)
TYPE (definition)
TYPE (I/O) (extension)
UNION (extension)
USE
VIRTUAL (extension)
VOLATILE (extension)
WHERE (statement and construct)
WRITE
11 Intrinsic procedures
Basic terms and concepts
Availability of intrinsics
Subroutine and function intrinsics
Generic and specific function names
Classes of intrinsics
Optimized intrinsic functions
Nonstandard intrinsic procedures
Data representation models
Data representation model intrinsics
The Bit Model
The Integer Number System Model
The Real Number System Model
Functional categories of intrinsic procedures
Intrinsic procedure specifications
ABORT()
ABS(A)
ACHAR(I)
ACOS(X)
ACOSD(X)
ACOSH(X)
ADJUSTL(STRING)
ADJUSTR(STRING)
AIMAG(Z)
AINT(A, KIND)
ALL(MASK, DIM)
ALLOCATED(ARRAY)
AND(I, J)
ANINT(A, KIND)
ANY(MASK, DIM)
ASIN(X)
ASIND(X)
ASINH(X)
ASSOCIATED(POINTER, TARGET)
ATAN(X)
ATAN2(Y, X)
ATAN2D(Y, X)
ATAND(X)
ATANH(X)
BADDRESS(X)
BIT_SIZE(I)
BTEST(I, POS)
CEILING(A)
CHAR(I, KIND)
CMPLX(X, Y, KIND)
CONJG(Z)
COS(X)
COSD(X)
COSH(X)
COUNT(MASK, DIM)
CSHIFT(ARRAY, SHIFT, DIM)
DATE(DATESTR)
DATE_AND_TIME(DATE, TIME, ZONE, VALUES)
DBLE(A)
DCMPLX(X,Y)
DFLOAT(A)
DIGITS(X)
DIM(X, Y)
DNUM(I)
DOT_PRODUCT(VECTOR_A, VECTOR_B)
DPROD(X, Y)
DREAL(A)
EOSHIFT(ARRAY, SHIFT, BOUNDARY, DIM)
EPSILON(X)
EXIT(STATUS)
EXP(X)
EXPONENT(X)
FLOOR(A)
FLUSH(LUNIT)
FNUM(UNIT)
FRACTION(X)
FREE(P)
FSET(UNIT, NEWFD, OLDFD)
FSTREAM(UNIT)
GETARG(N, STRING)
GETENV(VAR, VALUE)
GRAN()
HFIX(A)
HUGE(X)
IACHAR(C)
IADDR(X)
IAND(I, J)
IARGC()
IBCLR(I, POS)
IBITS(I, POS, LEN)
IBSET(I, POS)
ICHAR(C)
IDATE(MONTH, DAY, YEAR)
IDIM(X, Y)
IEOR(I, J)
IGETARG(N, STR, STRLEN)
IJINT(A)
IMAG(A)
INDEX(STRING, SUBSTRING, BACK)
INT(A, KIND)
INT1(A)
INT2(A)
INT4(A)
INT8(A)
INUM(I)
IOMSG(N, MSG)
IOR(I, J)
IQINT(A)
IRAND()
IRANP(X)
ISHFT(I, SHIFT)
ISHFTC(I, SHIFT, SIZE)
ISIGN(A, B)
ISNAN(X)
IXOR(I, J)
IZEXT(A)
JNUM(I)
JZEXT(A)
KIND(X)
KZEXT(A)
LBOUND(ARRAY, DIM)
LEN(STRING)
LEN_TRIM(STRING)
LGE(STRING_A, STRING_B)
LGT(STRING_A, STRING_B)
LLE(STRING_A, STRING_B)
LLT(STRING_A, STRING_B)
LOC(X)
LOG(X)
LOG10(X)
LOGICAL(L, KIND)
LSHFT(I, SHIFT)
LSHIFT(I, SHIFT)
MALLOC(SIZE)
MATMUL(MATRIX_A, MATRIX_B)
MAX(A1, A2, A3, ...)
MAXEXPONENT(X)
MAXLOC(ARRAY, MASK)
MAXVAL(ARRAY, DIM, MASK)
MCLOCK()
MERGE(TSOURCE, FSOURCE, MASK)
MIN(A1, A2, A3, ...)
MINEXPONENT(X)
MINLOC(ARRAY, MASK)
MINVAL(ARRAY, DIM, MASK)
MOD(A, P)
MODULO(A, P)
MVBITS(FROM, FROMPOS, LEN, TO, TOPOS)
NEAREST(X, S)
NINT(A, KIND)
NOT(I)
OR(I, J)
PACK(ARRAY, MASK, VECTOR)
PRECISION(X)
PRESENT(A)
PRODUCT(ARRAY, DIM, MASK)
QEXT(A)
QFLOAT(A)
QNUM(I)
QPROD(X, Y)
RADIX(X)
RAN(ISEED)
RAND()
RANDOM_NUMBER(HARVEST)
RANDOM_SEED(SIZE, PUT, GET)
RANGE(X)
REAL(A, KIND)
REPEAT(STRING, NCOPIES)
RESHAPE(SOURCE, SHAPE, PAD, ORDER)
RNUM(I)
RRSPACING(X)
RSHFT(I, SHIFT)
RSHIFT(I, SHIFT)
SCALE(X, I)
SCAN(STRING, SET, BACK)
SECNDS(X)
SELECTED_INT_KIND(R)
SELECTED_REAL_KIND(P, R)
SET_EXPONENT(X, I)
SHAPE(SOURCE)
SIGN(A, B)
SIN(X)
SIND(X)
SINH(X)
SIZE(ARRAY, DIM)
SIZEOF(A)
SPACING(X)
SPREAD(SOURCE, DIM, NCOPIES)
SQRT(X)
SRAND(ISEED)
SUM(ARRAY, DIM, MASK)
SYSTEM(STR)
SYSTEM_CLOCK(COUNT, COUNT_RATE, COUNT_MAX)
TAN(X)
TAND(X)
TANH(X)
TIME(TIMESTR)
TINY(X)
TRANSFER(SOURCE, MOLD, SIZE)
TRANSPOSE(MATRIX)
TRIM(STRING)
UBOUND(ARRAY, DIM)
UNPACK(VECTOR, MASK, FIELD)
VERIFY(STRING, SET, BACK)
XOR(I, J)
ZEXT(A)
12 BLAS and libU77 libraries
Calling libU77 and BLAS routines
Compile-line options
Year-2000 compatibility
Declaring library functions
Declaring library routines as EXTERNAL
Man pages
libU77 routines
BLAS routines
A I/O runtime error messages
Runtime I/O errors
Glossary

List of Tables

2-1 Fortran 90 character set
2-2 Statement order in a program unit
2-3 Statements allowed in scoping units
2-4 Keywords allowing optional spacing
3-1 Intrinsic data types
3-2 Attributes in type declaration statement
3-3 Escape characters
3-4 Example of structure storage
4-1 Array inquiry intrinsic functions
5-1 Logical operators
5-2 Operator precedence
5-3 Examples of operator precedence
5-4 Initialization and specification expressions
5-5 Conversion of variable=expression
7-1 Specification statements
7-2 Executable statements
8-1 Input values for list-directed I/O
8-2 Format of list-directed input data
8-3 Format of list-directed output data
8-4 Data transfer statements
8-5 File positioning statements
8-6 Auxiliary statements
8-7 I/O statements and specifiers
8-8 ASA carriage-control characters
9-1 Edit descriptors
9-2 Character string edit descriptor output examples
9-3 Contents of character data fields on input
9-4 Contents of character data fields on output
9-5 A and R edit descriptors: input examples
9-6 A and R Edit descriptors: output examples
9-7 B Edit descriptor: input examples
9-8 B Edit descriptor: output examples
9-9 BN and BZ edit descriptors: input examples
9-10 D, E, F, and G edit descriptors: input examples
9-11 D and E edit descriptors: output examples
9-12 EN and ES edit descriptors: output examples
9-13 F edit descriptor: output examples
9-14 G edit descriptor: output examples
9-15 H edit descriptor: output examples
9-16 I edit descriptor: input examples
9-17 I edit descriptor: output examples
9-18 L edit descriptor: input examples
9-19 L edit descriptor: output examples
9-20 O edit descriptor: input examples
9-21 O edit descriptor: output examples
9-22 P edit descriptor: input and output examples
9-23 Z edit descriptor: input examples
9-24 Z edit descriptor: output examples
9-25 Format control and nested format specifications
10-1 Attribute compatibility
10-2 Exceptions handled by the ON statement
11-1 Intrinsic functions and data representation models
11-2 Intrinsic procedures by category
11-3 Truth table for AND intrinsic
11-4 Default values for the BOUNDARY argument
11-5 Truth table for IAND intrinsic
11-6 Truth table for IEOR intrinsic
11-7 Truth table for IOR intrinsic
11-8 Truth table for IXOR intrinsic
11-9 Truth table for NOT intrinsic
11-10 Truth table for OR intrinsic
12-1 libU77 naming conflicts
12-2 Categories of libU77 routines
12-3 libU77 routines
12-4 BLAS routines
A-1 Runtime I/O errors
Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© Hewlett-Packard Development Company, L.P.