fortran库参考.docx

上传人:b****8 文档编号:12395814 上传时间:2023-06-05 格式:DOCX 页数:33 大小:27.23KB
下载 相关 举报
fortran库参考.docx_第1页
第1页 / 共33页
fortran库参考.docx_第2页
第2页 / 共33页
fortran库参考.docx_第3页
第3页 / 共33页
fortran库参考.docx_第4页
第4页 / 共33页
fortran库参考.docx_第5页
第5页 / 共33页
fortran库参考.docx_第6页
第6页 / 共33页
fortran库参考.docx_第7页
第7页 / 共33页
fortran库参考.docx_第8页
第8页 / 共33页
fortran库参考.docx_第9页
第9页 / 共33页
fortran库参考.docx_第10页
第10页 / 共33页
fortran库参考.docx_第11页
第11页 / 共33页
fortran库参考.docx_第12页
第12页 / 共33页
fortran库参考.docx_第13页
第13页 / 共33页
fortran库参考.docx_第14页
第14页 / 共33页
fortran库参考.docx_第15页
第15页 / 共33页
fortran库参考.docx_第16页
第16页 / 共33页
fortran库参考.docx_第17页
第17页 / 共33页
fortran库参考.docx_第18页
第18页 / 共33页
fortran库参考.docx_第19页
第19页 / 共33页
fortran库参考.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

fortran库参考.docx

《fortran库参考.docx》由会员分享,可在线阅读,更多相关《fortran库参考.docx(33页珍藏版)》请在冰点文库上搜索。

fortran库参考.docx

fortran库参考

第3章FORTRAN77和VMS内函数

本章列出了FORTRAN77f95接受的一系列内函数,旨在帮助将传统的FORTRAN77程序迁移至Fortran95。

在f95中,本章列出的所有FORTRAN77和VMS函数以及前一章列出的所有Fortran95函数都识别为内函数。

为了帮助从传统的FORTRAN77程序迁移至f95,使用-f77=intrinsics进行编译会让编译器只将FORTRAN77和VMS函数识别为内函数,但Fortran95函数不会识别为内函数。

属于Sun扩展的ANSIFORTRAN77标准的内函数标有¤符号。

使用非标准内函数和库函数的程序可能无法移植到其他平台。

内函数在接受多种数据类型的参数时,有通用名称和专用名称。

通常,通用名称返回与参数具有相同数据类型的值。

但也有一些例外,如类型转换函数(表3–2)和查询函数(表3–7)。

这些函数也可以通过函数的某个专用名称进行调用,以便处理专用参数数据类型。

对于处理多个数据项的函数(例如sign(a1,a2)),所有数据参数的类型必须相同。

下表按以下几方面列出FORTRAN77内函数:

内函数-描述函数的作用

定义-数学定义

参数数量-函数接受的参数的数量

通用名称-函数的通用名称

专用名称-函数的专用名称

参数类型-与每个专用名称关联的数据类型

函数类型-针对专用参数数据类型返回的数据类型

注–

编译器选项-xtypemap会更改变量的缺省大小,并且对内在引用产生影响。

请参见3.4备注以及《Fortran用户指南》中有关缺省大小和对齐方式的介绍。

3.1算术和数学函数

本节详细介绍算术函数、类型转换函数、三角函数以及其他函数。

“a”代表函数的单个参数,“a1”和“a2”代表两个参数函数的第一个参数和第二个参数,“ar”和“ai”代表函数的复数参数的实部和虚部。

3.1.1算术函数

表3–1Fortran77算术函数

内函数 

定义 

参数 

数量 

通用 

名称 

专用 

名称 

参数 

类型 

函数类型 

绝对值 

请参见注释(6)。

|a|= 

(ar2+ai2)1/2

ABS

IABS

ABS

DABS

CABS

QABS¤

ZABS¤

CDABS¤

CQABS¤

INTEGER

REAL

DOUBLE

COMPLEX

REAL*16

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

INTEGER

REAL

DOUBLE

REAL

REAL*16

DOUBLE

DOUBLE

REAL*16

截断 

请参见注释

(1)。

int(a) 

AINT

AINT

DINT

QINT¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

最近的整数 

如果a≥0,则为int(a+.5) 

如果a<0,则为int(a-.5) 

ANINT

ANINT

DNINT

QNINT¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

最近的整数 

如果a≥0,则为int(a+.5) 

如果a<0,则为int(a-.5) 

NINT

NINT

IDNINT

IQNINT¤

REAL

DOUBLE

REAL*16

INTEGER

INTEGER

INTEGER

余数 

请参见注释

(1)。

a1-int(a1/a2)*a2 

MOD

MOD

AMOD

DMOD

QMOD¤

INTEGER

REAL

DOUBLE

REAL*16

INTEGER

REAL

DOUBLE

REAL*16

符号传输 

如果a2≥0,则为|a1| 

如果a2<0,则为-|a1| 

SIGN

ISIGN

SIGN

DSIGN

QSIGN¤

INTEGER

REAL

DOUBLE

REAL*16

INTEGER

REAL

DOUBLE

REAL*16

正偏差 

如果a1>a2,则为a1-a2 

如果a1≤a2,则为0 

DIM

IDIM

DIM

DDIM

QDIM¤

INTEGER

REAL

DOUBLE

REAL*16

INTEGER

REAL

DOUBLE

REAL*16

两倍和四倍乘积 

a1*a2 

-

DPROD

QPROD¤

REAL

DOUBLE

DOUBLE

REAL*16

选择最大的值 

max(a1,a2,…) 

≥2 

MAX

MAX0

AMAX1

DMAX1

QMAX1¤

INTEGER

REAL

DOUBLE

REAL*16

INTEGER

REAL

DOUBLE

REAL*16

AMAX0

AMAX0

INTEGER

REAL

MAX1

MAX1

REAL

INTEGER

选择最小的值 

min(a1,a2,…) 

≥2 

MIN

MIN0

AMIN1

DMIN1

QMIN1¤

INTEGER

REAL

DOUBLE

REAL*16

INTEGER

REAL

DOUBLE

REAL*16

AMIN0

AMIN0

INTEGER

REAL

MIN1

MIN1

REAL

INTEGER

3.1.2类型转换函数

表3–2Fortran77类型转换函数

转换为 

参数数量 

通用名称 

专用 

名称 

参数类型 

函数类型 

INTEGER

请参见注释

(1)。

INT

-

INT

IFIX

IDINT

-

-

-

IQINT¤

INTEGER

REAL

REAL

DOUBLE

COMPLEX

COMPLEX*16

COMPLEX*32

REAL*16

INTEGER

INTEGER

INTEGER

INTEGER

INTEGER

INTEGER

INTEGER

INTEGER

REAL

请参见注释

(2)。

REAL

REAL

FLOAT

-

SNGL

SNGLQ¤

-

-

-

FLOATK

INTEGER

INTEGER

REAL

DOUBLE

REAL*16

COMPLEX

COMPLEX*16

COMPLEX*32

INTEGER*8

REAL

REAL

REAL

REAL

REAL

REAL

REAL

REAL

REAL*4

DOUBLE

请参见注释(3)。

DBLE

DBLE

DFLOAT

DFLOATK

DREAL¤

-

-

-

-

-

DBLEQ¤-

INTEGER

INTEGER

INTEGER*8

REAL

DOUBLE

COMPLEX

COMPLEX*16

REAL*16

COMPLEX*32REAL*16COMPLEX*32

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISION

DOUBLEPRECISIONDOUBLEPRECISION

DOUBLEPRECISION

REAL*16

请参见注释(3’)。

QREAL¤

QEXT¤

QREAL¤

QFLOAT¤

-

QEXT¤

QEXTD¤

-

-

-

-

INTEGER

INTEGER

REAL

INTEGER

DOUBLE

REAL*16

COMPLEX

COMPLEX*16

COMPLEX*32

REAL*16

REAL*16

REAL*16

REAL*16

REAL*16

REAL*16

REAL*16

REAL*16

REAL*16

COMPLEX

请参见注释(4)和(8)。

1个或2个 

CMPLX

-

-

-

-

-

-

-

INTEGER

REAL

DOUBLE

REAL*16

COMPLEX

COMPLEX*16

COMPLEX*32

COMPLEX

COMPLEX

COMPLEX

COMPLEX

COMPLEX

COMPLEX

COMPLEX

DOUBLECOMPLEX

请参见注释(8)。

1个或2个 

DCMPLX@

-

-

-

-

-

-

-

INTEGER

REAL

DOUBLE

REAL*16

COMPLEX

COMPLEX*16

COMPLEX*32

DOUBLECOMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

请参见注释(8)。

1个或2个 

QCMPLX@

-

-

-

-

-

-

-

INTEGER

REAL

DOUBLE

REAL*16

COMPLEX

COMPLEX*16

COMPLEX*32

COMPLEX*32

COMPLEX*32

COMPLEX*32

COMPLEX*32

COMPLEX*32

COMPLEX*32

COMPLEX*32

INTEGER

请参见注释(5)。

-

-

ICHAR

IACHAR¤

CHARACTER

INTEGER

CHARACTER

请参见注释(5)。

-

-

CHAR

ACHAR¤

INTEGER

CHARACTER

在ASCII平台上(包括Sun系统):

ACHAR是CHAR的非标准同义词

IACHAR是ICHAR的非标准同义词

在非ASCII平台上,ACHAR和IACHAR专门用于提供一种直接处理ASCII的方法。

3.1.3三角函数

表3–3Fortran77三角函数

内函数 

定义 

参数数量 

通用名称 

专用 

名称 

参数类型 

函数类型 

正弦 

请参见注释(7)。

sin(a) 

SIN

SIN

DSIN

QSIN¤

CSIN

ZSIN¤

CDSIN¤

CQSIN¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

正弦(度数) 

请参见注释(7)。

sin(a) 

SIND¤

SIND¤

DSIND¤

QSIND¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

余弦 

请参见注释(7)。

cos(a) 

COS

COS

DCOS

QCOS¤

CCOS

ZCOS¤

CDCOS¤

CQCOS¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

余弦(度数) 

请参见注释(7)。

cos(a) 

COSD¤

COSD¤

DCOSD¤

QCOSD¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

正切 

请参见注释(7)。

tan(a) 

TAN

TAN

DTAN

QTAN¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

正切(度数) 

请参见注释(7)。

tan(a) 

TAND¤

TAND¤

DTAND¤

QTAND¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反正弦 

请参见注释(7)。

arcsin(a) 

ASIN

ASIN

DASIN

QASIN¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反正弦(度数) 

请参见注释(7)。

arcsin(a) 

ASIND¤

ASIND¤

DASIND¤

QASIND¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反余弦 

请参见注释(7)。

arccos(a) 

ACOS

ACOS

DACOS

QACOS¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反余弦(度数) 

请参见注释(7)。

arccos(a) 

ACOSD¤

ACOSD¤

DACOSD¤

QACOSD¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反正切 

请参见注释(7)。

arctan(a) 

ATAN

ATAN

DATAN

QATAN¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

arctan 

(a1/a2) 

ATAN2

ATAN2

DATAN2

QATAN2¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

反正切(度数) 

请参见注释(7)。

arctan(a) 

ATAND¤

ATAND¤

DATAND¤

QATAND¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

arctan 

(a1/a2) 

ATAN2D¤

ATAN2D¤

DATAN2D¤

QATAN2D¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

双曲正弦 

请参见注释(7)。

sinh(a) 

SINH

SINH

DSINH

QSINH¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

双曲余弦 

请参见注释(7)。

cosh(a) 

COSH

COSH

DCOSH

QCOSH¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

双曲正切 

请参见注释(7)。

tanh(a) 

TANH

TANH

DTANH

QTANH¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

3.1.4其他数学函数

表3–4其他Fortran77数学函数

内函数 

定义 

参数数量 

通用名称 

专用名称 

参数类型 

函数类型 

复数的虚部 

请参见注释(6)。

ai 

IMAG

AIMAG

DIMAG¤

QIMAG¤

COMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

共轭复数 

请参见注释(6)。

(ar,-ai) 

CONJG

CONJG

DCONJG¤

QCONJG¤

COMPLEX

DOUBLECOMPLEX

COMPLEX*32

COMPLEX

DOUBLECOMPLEX

COMPLEX*32

平方根 

a**(1/2) 

SQRT

SQRT

DSQRT

QSQRT¤

CSQRT

ZSQRT¤

CDSQRT¤

CQSQRT¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

立方根 

请参见注释(8’)。

a**(1/3) 

CBRT

CBRT¤

DCBRT¤

QCBRT¤

CCBRT¤

ZCBRT¤

CDCBRT¤

CQCBRT¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

指数 

e**a 

EXP

EXP

DEXP

QEXP¤

CEXP

ZEXP¤

CDEXP¤

CQEXP¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

自然对数 

log(a) 

LOG

ALOG

DLOG

QLOG¤

CLOG

ZLOG¤

CDLOG¤

CQLOG¤

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

REAL

DOUBLE

REAL*16

COMPLEX

DOUBLECOMPLEX

DOUBLECOMPLEX

COMPLEX*32

常用对数 

log10(a) 

LOG10

ALOG10

DLOG10

QLOG10¤

REAL

DOUBLE

REAL*16

REAL

DOUBLE

REAL*16

误差函数 

(请参见下面的注释)

erf(a) 

ERF

ERF¤

DERF¤

REAL

DOUBLE

REAL

DOUBLE

误差函数 

1.0-erf(a) 

ERFC

ERFC¤

DERFC¤

REAL

DOUBLE

REAL

DOUBLE

误差函数:

exp(-t*t)dt从0到a的2/sqrt(pi)x整数

3.2字符函数

表3–5Fortran77字符函数

内函数 

定义 

参数数量 

专用 

名称 

参数类型 

函数类型 

转换 

请参见注释(5)。

转换为字符 

转换为整数 

另请参见:

表3–2。

CHAR

ACHAR¤

ICHAR

IACHAR¤

INTEGER

CHARACTER

CHARACTER

INTEGER

子串的索引 

字符串a1中子串a2的位置 

请参见注释(10)。

INDEX

CHARACTER

INTEGER

长度 

字符实体的长度 

请参见注释(11)。

LEN

CHARACTER

INTEGER

词法上大于或等于 

a1≥a2 

请参见注释(12)。

LGE

CHARACTER

LOGICAL

词法上大于 

a1>a2 

请参见注释(12)。

LGT

CHARACTER

LOGICAL

词法上小于或等于 

a1≤a2 

请参见注释(12)。

LLE

CHARACTER

LOGICAL

词法上小于 

a1

请参见注释(12)。

LLT

CHARACTER

LOGICAL

在ASCII平台上(包括Sun系统):

ACHAR是CHAR的非标准同义词

IACHAR是ICHAR的非标准同义词

在非ASCII平台上,ACHAR和IACHAR专门用于提供一种直接处理ASCII的方法。

3.3其他函数

其他一些函数包括按位函数、环境查询函数以及内存分配和解除分配函数。

3.3.1位操作

这些函数都不属于FORTRAN77标准。

表3–6Fortran77按位操作函数

按位操作 

参数数量 

专用名称 

参数类型 

函数类型 

补 

NOT

INTEGER

INTEGER

与 

22 

ANDIAND

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2