Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Math 解释X02AJF(0.D0)的含义_Math_Fortran - Fatal编程技术网

Math 解释X02AJF(0.D0)的含义

Math 解释X02AJF(0.D0)的含义,math,fortran,Math,Fortran,如果我在fortran中有这个函数 DOUBLE PRECISION FUNCTION X02AJF() ! RETURNS (1/2)*B**(1-P) IF ROUNDS IS .TRUE. ! RETURNS B**(1-P) OTHERWISE DOUBLE PRECISION X02CON DATA X02CON / 2.D-3 / ! .. Executable Statements ..

如果我在fortran中有这个函数

DOUBLE PRECISION FUNCTION         X02AJF()


 !     RETURNS  (1/2)*B**(1-P)  IF ROUNDS IS .TRUE.


!     RETURNS  B**(1-P)  OTHERWISE
 
      DOUBLE PRECISION X02CON 

      DATA X02CON / 2.D-3 /

!     .. Executable Statements ..

      X02AJF = X02CON

      RETURN

      END
那么这个变量的值是多少

EPS=X02AJF(0.D0)

我不知道这是什么意思

X02AJF(0.D0)

它的意思是EPS=0吗

我不知道这是什么意思

X02AJF(0.D0)

严格按照FORTRAN语言,这是一个错误的函数调用

这是否意味着每股收益=0

否。EPS==2.D-3,但这是未定义的行为


非正式地说,在Fortran 90的可选属性出现之前,很多人经常违反匹配参数数量的要求。例如,System V ABI AMD64将对FORTRAN函数的调用定义为与对C函数的调用类似。因此,在这种情况下,X02AJF(0.D0)的结果将与X02AJF()相同。

根据NAG,
X02AJF
不接受参数/参数,因此它应该被称为
X02AJF()
,但有许多程序使用这个表达式EPS=X02AJF(0.D0)例如,下面链接
X02AJF
中的该程序是在NAG库的Mark 12中引入的。我找不到那么旧版本的文档。返回mark 19的Internet可访问NAG库文档显示
X02AJF
没有参数。一些使用
X02AJF
的程序员可能会感到困惑,因为同一部分中的旧函数采用了伪参数,例如
X02AHF
。我的问题是:您的代码实际使用的是NAG库,还是它提供了自己的自制软件来替代
X02AJF