000 18992cam a22006137a 4500
001 17249145
005 20170324113454.0
008 120410s2011 enka 001 0 eng d
010 _a 2012360954
015 _aGBB0D3276
_2bnb
015 _aGBB0D3276
_2dnb
020 _a9780199601424 (pbk.)
020 _a9780199601424
020 _a0199601429 (pbk.)
020 _a9780199601417
020 _a0199601410
035 _a(OCoLC)ocn712556031
040 _aEQO
_cEQO
_dYDXCP
_dCDX
_dHLS
_dBTCTA
_dDEBBG
_dINU
_dG7G
_dMIX
_dIAD
_dOCLCA
_dDLC
_dBYT
042 _alccopycat
050 0 0 _aQA76.73.F235
_bM48 2011
082 0 4 _a005.342
_222
084 _aST 250
_2rvk
084 _aST 256
_2rvk
100 1 _aMetcalf, Michael,
245 1 0 _aModern Fortran explained /
_cMichael Metcalf, John Reid and Malcolm Cohen.
260 _aOxford ;
_aNew York :
_bOxford University Press ;
_c2011.
300 _axx, 488 p. :
_billustrations ;
_c24 cm.
490 1 _aNumerical mathematics and scientific computation
500 _aPrevious ed.: published as Fortran 95/2003 explained. 2004. Includes index.
505 0 0 _gMachine generated contents note:
_g1.
_tWhence Fortran? --
_g1.1.
_tIntroduction --
_g1.2.
_tFortran's early history --
_g1.3.
_tThe drive for the Fortran 90 standard --
_g1.4.
_tLanguage evolution --
_g1.5.
_tFortran 95 --
_g1.6.
_tExtensions to Fortran 95 --
_g1.7.
_tFortran 2003 --
_g1.8.
_tFortran 2008 --
_g1.9.
_tConformance --
_g2.
_tLanguage elements --
_g2.1.
_tIntroduction --
_g2.2.
_tFortran character set --
_g2.3.
_tTokens --
_g2.4.
_tSource form --
_g2.5.
_tConcept of type --
_g2.6.
_tLiteral constants of intrinsic type --
_g2.6.1.
_tInteger literal constants --
_g2.6.2.
_tReal literal constants --
_g2.6.3.
_tComplex literal constants --
_g2.6.4.
_tCharacter literal constants --
_g2.6.5.
_tLogical literal constants --
_g2.7.
_tNames --
_g2.8.
_tScalar variables of intrinsic type --
_g2.9.
_tDerived data types --
_g2.10.
_tArrays of intrinsic type --
_g2.11.
_tCharacter substrings --
_g2.12.
_tObjects and subobjects --
_g2.13.
_tPointers --
_g2.14.
_tSummary --
_g3.
_tExpressions and assignments --
_g3.1.
_tIntroduction --
_g3.2.
_tScalar numeric expressions --
_g3.3.
_tDefined and undefined variables
505 0 0 _g3.4.
_tScalar numeric assignment --
_g3.5.
_tScalar relational operators --
_g3.6.
_tScalar logical expressions and assignments --
_g3.7.
_tScalar character expressions and assignments --
_g3.8.
_tStructure constructors and scalar defined operators --
_g3.9.
_tScalar defined assignments --
_g3.10.
_tArray expressions --
_g3.11.
_tArray assignment --
_g3.12.
_tPointers in expressions and assignments --
_g3.13.
_tThe nullify statement --
_g3.14.
_tSummary --
_g4.
_tControl constructs --
_g4.1.
_tIntroduction --
_g4.2.
_tThe if construct and statement --
_g4.3.
_tThe case construct --
_g4.4.
_tThe do construct --
_g4.5.
_tThe go to statement --
_g4.6.
_tSummary --
_g5.
_tProgram units and procedures --
_g5.1.
_tIntroduction --
_g5.2.
_tMain program --
_g5.3.
_tThe stop statement --
_g5.4.
_tExternal subprograms --
_g5.5.
_tModules --
_g5.6.
_tInternal subprograms --
_g5.7.
_tArguments of procedures --
_g5.7.1.
_tPointer arguments --
_g5.7.2.
_tRestrictions on actual arguments --
_g5.7.3.
_tArguments with the target attribute --
_g5.8.
_tThe return statement --
_g5.9.
_tArgument intent --
_g5.10.
_tFunctions --
_g5.10.1.
_tProhibited side-effects --
_g5.11.
_tExplicit and implicit interfaces
505 0 0 _g5.12.
_tProcedures as arguments --
_g5.13.
_tKeyword and optional arguments --
_g5.14.
_tScope of labels --
_g5.15.
_tScope of names --
_g5.16.
_tDirect recursion --
_g5.17.
_tIndirect recursion --
_g5.18.
_tOverloading and generic interfaces --
_g5.19.
_tAssumed character length --
_g5.20.
_tThe subroutine and function statements --
_g5.21.
_tSummary --
_g6.
_tArray features --
_g6.1.
_tIntroduction --
_g6.2.
_tZero-sized arrays --
_g6.3.
_tAssumed-shape arrays --
_g6.4.
_tAutomatic objects --
_g6.5.
_tAllocation of data --
_g6.5.1.
_tThe allocatable attribute --
_g6.5.2.
_tThe allocate statement --
_g6.5.3.
_tThe deallocate statement --
_g6.5.4.
_tAllocatable dummy arguments --
_g6.5.5.
_tAllocatable functions --
_g6.5.6.
_tAllocatable components --
_g6.5.7.
_tAllocatable arrays vs. pointers --
_g6.6.
_tElemental operations and assignments --
_g6.7.
_tArray-valued functions --
_g6.8.
_tThe where statement and construct --
_g6.9.
_tThe forall statement and construct --
_g6.10.
_tPure procedures --
_g6.11.
_tElemental procedures --
_g6.12.
_tArray elements --
_g6.13.
_tArray subobjects --
_g6.14.
_tArrays of pointers --
_g6.15.
_tPointers as aliases
505 0 0 _g6.16.
_tArray constructors --
_g6.17.
_tMask arrays --
_g6.18.
_tSummary --
_g7.
_tSpecification statements --
_g7.1.
_tIntroduction --
_g7.2.
_tImplicit typing --
_g7.3.
_tDeclaring entities of differing shapes --
_g7.4.
_tNamed constants and constant expressions --
_g7.5.
_tInitial values for variables --
_g7.5.1.
_tInitialization in type declaration statements --
_g7.5.2.
_tThe data statement --
_g7.5.3.
_tPointer initialization and the function null --
_g7.5.4.
_tDefault initialization of components --
_g7.6.
_tThe public and private attributes --
_g7.7.
_tThe pointer, target, and allocatable statements --
_g7.8.
_tThe intent and optional statements --
_g7.9.
_tThe save attribute --
_g7.10.
_tThe use statement --
_g7.11.
_tDerived-type definitions --
_g7.12.
_tThe type declaration statement --
_g7.13.
_tType and type parameter specification --
_g7.14.
_tSpecification expressions --
_g7.14.1.
_tSpecification functions --
_g7.15.
_tThe namelist statement --
_g7.16.
_tSummary --
_g8.
_tIntrinsic procedures --
_g8.1.
_tIntroduction --
_g8.1.1.
_tKeyword calls --
_g8.1.2.
_tCategories of intrinsic procedures --
_g8.1.3.
_tThe intrinsic statement
505 0 0 _g8.1.4.
_tArgument intents --
_g8.2.
_tInquiry functions for any type --
_g8.3.
_tElemental numeric functions --
_g8.3.1.
_tElemental functions that may convert --
_g8.3.2.
_tElemental functions that do not convert --
_g8.4.
_tElemental mathematical functions --
_g8.5.
_tElemental character and logical functions --
_g8.5.1.
_tCharacter-integer conversions --
_g8.5.2.
_tLexical comparison functions --
_g8.5.3.
_tString-handling elemental functions --
_g8.5.4.
_tLogical conversion --
_g8.6.
_tNon-elemental string-handling functions --
_g8.6.1.
_tString-handling inquiry function --
_g8.6.2.
_tString-handling transformational functions --
_g8.7.
_tNumeric inquiry and manipulation functions --
_g8.7.1.
_tModels for integer and real data --
_g8.7.2.
_tNumeric inquiry functions --
_g8.7.3.
_tElemental functions to manipulate reals --
_g8.7.4.
_tTransformational functions for kind values --
_g8.8.
_tBit manipulation procedures --
_g8.8.1.
_tInquiry function --
_g8.8.2.
_tElemental functions --
_g8.8.3.
_tElemental subroutine --
_g8.9.
_tTransfer function --
_g8.10.
_tVector and matrix multiplication functions --
_g8.11.
_tTransformational functions that reduce arrays
505 0 0 _g8.11.1.
_tSingle argument case --
_g8.11.2.
_tOptional argument dim --
_g8.11.3.
_tOptional argument mask --
_g8.12.
_tArray inquiry functions --
_g8.12.1.
_tAllocation status --
_g8.12.2.
_tBounds, shape, and size --
_g8.13.
_tArray construction and manipulation functions --
_g8.13.1.
_tThe merge elemental function --
_g8.13.2.
_tPacking and unpacking arrays --
_g8.13.3.
_tReshaping an array --
_g8.13.4.
_tTransformational function for replication --
_g8.13.5.
_tArray shifting functions --
_g8.13.6.
_tMatrix transpose --
_g8.14.
_tTransformational functions for geometric location --
_g8.15.
_tTransformational function for pointer disassociation --
_g8.16.
_tNon-elemental intrinsic subroutines --
_g8.16.1.
_tReal-time clock --
_g8.16.2.
_tCPU time --
_g8.16.3.
_tRandom numbers --
_g8.17.
_tSummary --
_g9.
_tData transfer --
_g9.1.
_tIntroduction --
_g9.2.
_tNumber conversion --
_g9.3.
_tI/O lists --
_g9.4.
_tFormat definition --
_g9.5.
_tUnit numbers --
_g9.6.
_tInternal files --
_g9.7.
_tFormatted input --
_g9.8.
_tFormatted output --
_g9.9.
_tList-directed I/O --
_g9.10.
_tNamelist I/O --
_g9.11.
_tNon-advancing I/O --
_g9.12.
_tEdit descriptors
505 0 0 _g9.12.1.
_tRepeat counts --
_g9.12.2.
_tData edit descriptors --
_g9.12.3.
_tCharacter string edit descriptor --
_g9.12.4.
_tControl edit descriptors --
_g9.13.
_tUnformatted I/O --
_g9.14.
_tDirect-access files --
_g9.15.
_tExecution of a data transfer statement --
_g9.16.
_tSummary --
_g10.
_tOperations on external files --
_g10.1.
_tIntroduction --
_g10.2.
_tPositioning statements for sequential files --
_g10.2.1.
_tThe backspace statement --
_g10.2.2.
_tThe rewind statement --
_g10.2.3.
_tThe endfile statement --
_g10.2.4.
_tData transfer statements --
_g10.3.
_tThe open statement --
_g10.4.
_tThe close statement --
_g10.5.
_tThe inquire statement --
_g10.6.
_tSummary --
_g11.
_tFloating-point exception handling --
_g11.1.
_tIntroduction --
_g11.2.
_tThe IEEE standard --
_g11.3.
_tAccess to the features --
_g11.4.
_tThe Fortran flags --
_g11.5.
_tHalting --
_g11.6.
_tThe rounding mode --
_g11.7.
_tThe underflow mode (Fortran 2003 only) --
_g11.8.
_tThe module ieee%5Fexceptions --
_g11.8.1.
_tDerived types --
_g11.8.2.
_tInquiry functions for IEEE exceptions --
_g11.8.3.
_tSubroutines for the flags and halting modes --
_g11.8.4.
_tSubroutines for the whole of the floating-point status
505 0 0 _g11.9.
_tThe module ieee%5Farithmetic --
_g11.9.1.
_tDerived types --
_g11.9.2.
_tInquiry functions for IEEE arithmetic --
_g11.9.3.
_tElemental functions --
_g11.9.4.
_tNon-elemental subroutines --
_g11.9.5.
_tTransformational function for kind value --
_g11.10.
_tExamples --
_g11.10.1.
_tDot product --
_g11.10.2.
_tCalling alternative procedures --
_g11.10.3.
_tCalling alternative in-line code --
_g11.10.4.
_tReliable hypotenuse function --
_g11.10.5.
_tAccess to IEEE arithmetic values --
_g12.
_tInteroperability with C --
_g12.1.
_tIntroduction --
_g12.2.
_tInteroperability of intrinsic types --
_g12.3.
_tInteroperability with C pointer types --
_g12.4.
_tInteroperability of derived types --
_g12.5.
_tInteroperability of variables --
_g12.6.
_tThe value attribute --
_g12.7.
_tInteroperability of procedures --
_g12.8.
_tInteroperability of global data --
_g12.9.
_tInvoking a C function from Fortran --
_g12.10.
_tInvoking Fortran from C --
_g12.11.
_tEnumerations --
_g13.
_tType parameters and procedure pointers --
_g13.1.
_tIntroduction --
_g13.2.
_tDeferred type parameters --
_g13.3.
_tType parameter enquiry --
_g13.4.
_tParameterized derived types --
_g13.4.1.
_tDefining a parameterized derived type
505 0 0 _g13.4.2.
_tAssumed and deferred type parameters --
_g13.4.3.
_tDefault type parameter values --
_g13.4.4.
_tDerived type parameter enquiry --
_g13.5.
_tAbstract interfaces --
_g13.6.
_tProcedure pointers --
_g13.6.1.
_tProcedure pointer variables --
_g13.6.2.
_tProcedure pointer components --
_g13.6.3.
_tThe pass attribute --
_g14.
_tObject-oriented programming --
_g14.1.
_tIntroduction --
_g14.2.
_tType extension --
_g14.2.1.
_tType extension and type parameters --
_g14.3.
_tPolymorphic entities --
_g14.3.1.
_tEstablishing the dynamic type --
_g14.3.2.
_tLimitations on the use of a polymorphic variable --
_g14.3.3.
_tPolymorphic arrays and scalars --
_g14.3.4.
_tUnlimited polymorphic entities --
_g14.3.5.
_tPolymorphic entities and generic resolution
505 0 0 _g14.4.
_tThe associate construct --
_g14.5.
_tThe select type construct --
_g14.6.
_tType-bound procedures --
_g14.6.1.
_tSpecific type-bound procedures --
_g14.6.2.
_tGeneric type-bound procedures --
_g14.6.3.
_tType extension and type-bound procedures --
_g14.7.
_tDeferred bindings and abstract types --
_g14.8.
_tFinalization --
_g14.8.1.
_tType extension and final subroutines --
_g14.9.
_tProcedure encapsulation example --
_g14.10.
_tType inquiry functions --
_g15.
_tEstablishing and moving data --
_g15.1.
_tIntroduction --
_g15.2.
_tMixed component accessibility --
_g15.3.
_tStructure constructors --
_g15.4.
_tThe allocate statement --
_g15.4.1.
_tTyped allocation and deferred type parameters --
_g15.4.2.
_tPolymorphic variables and typed allocation --
_g15.4.3.
_tSourced allocation --
_g15.5.
_tAllocatable entities --
_g15.5.1.
_tAllocatable scalars --
_g15.5.2.
_tAssignment to an allocatable array --
_g15.5.3.
_tTransferring an allocation --
_g15.6.
_tPointer assignment --
_g15.7.
_tMore control of access from a module
505 0 0 _g15.8.
_tRenaming operators on the use statement --
_g15.9.
_tArray constructor syntax --
_g15.10.
_tSpecification and constant expressions --
_g16.
_tMiscellaneous enhancements --
_g16.1.
_tIntroduction --
_g16.2.
_tPointer intent --
_g16.3.
_tThe volatile attribute --
_g16.3.1.
_tVolatile semantics --
_g16.3.2.
_tVolatile scoping --
_g16.3.3.
_tVolatile arguments --
_g16.4.
_tThe import statement --
_g16.5.
_tIntrinsic modules --
_g16.6.
_tAccess to the computing environment --
_g16.6.1.
_tEnvironment variables --
_g16.6.2.
_tInformation about the program invocation --
_g16.7.
_tSupport for internationalization --
_g16.7.1.
_tCharacter sets --
_g16.7.2.
_tASCII character set --
_g16.7.3.
_tISO 10646 character set --
_g16.7.4.
_tUTF-8 files --
_g16.7.5.
_tDecimal comma for input/output --
_g16.8.
_tLengths of names and statements --
_g16.9.
_tBinary, octal, and hexadecimal constants --
_g16.10.
_tOther changes to intrinsic procedures --
_g16.11.
_tError message retrieval --
_g16.12.
_tEnhanced complex constants --
_g16.13.
_tInterface block extensions --
_g16.14.
_tPublic entities of private type --
_g17.
_tInput/output enhancements
505 0 0 _g17.1.
_tIntroduction --
_g17.2.
_tNon-default derived-type input/output --
_g17.3.
_tAsynchronous input/output --
_g17.4.
_tThe asynchronous attribute --
_g17.5.
_tInput and output of IEEE exceptional values --
_g17.6.
_tStream access input/output --
_g17.7.
_tRecursive input/output --
_g17.8.
_tThe flush statement --
_g17.9.
_tComma after a P edit descriptor --
_g17.10.
_tThe iomsg= specifier --
_g17.11.
_tThe round= specifier --
_g17.12.
_tThe sign= specifier --
_g17.13.
_tKind type parameters of integer and logical specifiers --
_g17.14.
_tMore specifiers in read and write statements --
_g17.15.
_tIntrinsic functions for I/O status testing --
_g17.16.
_tSome inquire statement enhancements --
_g17.17.
_tNamelist enhancements --
_g18.
_tEnhanced module facilities --
_g18.1.
_tIntroduction --
_g18.2.
_tSubmodules --
_g18.2.1.
_tSeparate module procedures --
_g18.2.2.
_tSubmodules of submodules --
_g18.2.3.
_tSubmodule entities --
_g18.2.4.
_tSubmodules and use association --
_g18.3.
_tThe advantages of submodules --
_g19.
_tCoarrays --
_g19.1.
_tIntroduction --
_g19.2.
_tReferencing images --
_g19.3.
_tThe properties of coarrays
505 0 0 _g19.4.
_tAccessing coarrays --
_g19.5.
_tThe sync all statement --
_g19.6.
_tCoarrays in procedures --
_g19.7.
_tAllocatable coarrays --
_g19.8.
_tCoarrays with allocatable or pointer components --
_g19.8.1.
_tData components --
_g19.8.2.
_tProcedure pointer components --
_g19.9.
_tCoarray components --
_g19.10.
_tReferences to polymorphic subobjects --
_g19.11.
_tVolatile and asynchronous attributes --
_g19.12.
_tInteroperability --
_g19.13.
_tSynchronization --
_g19.13.1.
_tExecution segments --
_g19.13.2.
_tThe sync images statement --
_g19.13.3.
_tThe lock and unlock statements --
_g19.13.4.
_tCritical sections --
_g19.13.5.
_tThe sync memory statement and atomic subroutines --
_g19.13.6.
_tThe stat= and errmsg= specifiers in synchronization statements --
_g19.13.7.
_tThe image control statements --
_g19.14.
_tProgram termination --
_g19.15.
_tInput/Output --
_g19.16.
_tIntrinsic procedures --
_g19.16.1.
_tInquiry functions --
_g19.16.2.
_tTransformational functions --
_g20.
_tOther Fortran 2008 enhancements --
_g20.1.
_tTrivial syntactic conveniences --
_g20.1.1.
_tImplied-shape arrays --
_g20.1.2.
_tImplied-do loops in data statements
505 0 0 _g20.1.3.
_tType-bound procedures --
_g20.1.4.
_tStructure constructors --
_g20.1.5.
_tSemicolons --
_g20.1.6.
_tThe stop statement --
_g20.1.7.
_tExit from nearly any construct --
_g20.2.
_tLimitation changes --
_g20.2.1.
_t64-bit integer support --
_g20.2.2.
_tMaximum array rank --
_g20.3.
_tt
505 0 0 _g20.7.1.
_tRecursive input/output --
_g20.7.2.
_tThe newunit= specifier --
_g20.7.3.
_tWriting comma-separated values --
_g20.8.
_tIntrinsic procedures --
_g20.9.
_tMathemetical intrinsic functions --
_g20.9.1.
_tChanges to trigonometric functions --
_g20.9.2.
_tNew hyperbolic trigonometic functions --
_g20.9.3.
_tNew special mathematical functions --
_g20.9.4.
_tEuclidean norms --
_g20.10.
_tBit manipulation --
_g20.10.1.
_tBitwise (unsigned) comparison --
_g20.10.2.
_tDouble-width shifting --
_g20.10.3.
_tBitwise reductions --
_g20.10.4.
_tCounting bits --
_g20.10.5.
_tProducing bitmasks --
_g20.10.6.
_tMerging bits --
_g20.10.7.
_tAdditional shift operations --
_g20.11.
_tMiscellaneous intrinsic procedures --
_g20.11.1.
_tProcedures supporting coarrays --
_g20.11.2.
_tExecuting another program --
_g20.11.3.
_tCharacter comparison --
_g20.11.4.
_tArray searching --
_g20.11.5.
_tLogical parity --
_g20.11.6.
_tDecimal arithmetic support --
_g20.11.7.
_tSize of an object in memory --
_g20.12.
_g20.12.1.
_tCompilation information --
_g20.12.2.
_tNames for common kinds --
_g20.12.3.
_tKind arrays
505 0 0 _g20.12.4.
_tCoarray support facilities --
_g20.13.
_tChanges to other standard intrinsic modules --
_g20.13.1.
_tThe iso%5Fc%5Fbinding module --
_g20.13.2.
_tThe ieee%5Farithmetic module --
_g20.14.
_tPrograms and procedures --
_g20.14.1.
_tSaved module entities --
_g20.14.2.
_tAutomatic pointer targetting --
_g20.14.3.
_tDenoting absent arguments --
_gA.
_tIntrinsic procedures --
_gB.
_tDeprecated features --
_gB.1.
_tIntroduction --
_gB.2.
_tStorage association --
_gB.2.1.
_tStorage units --
_gB.2.2.
_tThe equivalence statement --
_gB.2.3.
_tThe common block --
_gB.2.4.
_tThe block data program unit --
_gB.2.5.
_tCoarrays and storage association --
_gB.3.
_tShape and character length disagreement --
_gB.4.
_tThe include line --
_gB.5.
_tOther forms of loop control --
_gB.5.1.
_tThe labelled do construct --
_gB.5.2.
_tThe do while --
_gB.6.
_tDouble precision real --
_gB.7.
_tThe dimension, codimension, and parameter statements --
_gB.8.
_tSpecific names of intrinsic procedures --
_gB.9.
_tNon-default mapping for implicit typing --
_gB.10.
_tFortran 2008 deprecated features --
_gB.10.1.
_tThe sync memory statement and atomic subroutines
505 0 0 _gB.10.2.
_tComponents of type c%5Fptr or c%5Ffunptr --
_gB.10.3.
_tType declarations --
_gB.10.4.
_tRedundant contains statement --
_gB.10.5.
_tThe end statement --
_gB.10.6.
_tReferencing atan2 by the name atan --
_gC.
_tObsolescent features --
_gC.1.
_tObsolescent in Fortran 95 --
_gC.1.1.
_tFixed source form --
_gC.1.2.
_tComputed go to --
_gC.1.3.
_tCharacter length specification character --
_gC.1.4.
_tData statements among executables --
_gC.1.5.
_tStatement functions --
_gC.1.6.
_tAssumed character length of function results --
_gC.1.7.
_tArithmetic if statement --
_gC.1.8.
_tShared do-loop termination --
_gC.1.9.
_tAlternate return --
_gC.2.
_tFeature obsolescent in Fortran 2008: Entry statement --
_gC.3.
_tFeature deleted in Fortran 2003: Carriage control --
_gC.4.
_tFeatures deleted in Fortran 95 --
_gD.
_tAvoiding compilation cascades --
_gE.
_tObject-oriented list example --
_gF.
_tFortran terms --
_gG.
_tSolutions to exercises.
650 0 _aFORTRAN (Computer program language)
700 1 _aReid, John Ker.
700 1 _aCohen, Malcolm,
830 0 _aNumerical mathematics and scientific computation.
906 _a7
_bcbc
_ccopycat
_d2
_encip
_f20
_gy-gencatlg
942 _2ddc
_cLIBRO
955 _bxh58 2012-04-10 z-processor
_ixh58 2012-04-10 ; to BCCD
999 _c2730