|
大家好,我写了如下的代码,纠结三次方程。
[Fortran] 纯文本查看 复制代码 11 | SUBROUTINE CUBIC_ROOTS ( IX , X ) |
12 | INTEGER , PARAMETER :: N = 4 |
13 | REAL , INTENT ( IN ) :: IX ( N ) |
14 | REAL , INTENT ( OUT ) :: X ( N -1 ) |
15 | REAL , PARAMETER :: PI = 3.1415926 |
23 | IXX ( I ) = IX ( I +1 ) / IX ( 1 ) |
25 | Q = ( IXX ( 1 ) * * 2 -3 * IXX ( 2 ) ) / 9 |
26 | R = ( 2 * IXX ( 1 ) * * 3 -9 * IXX ( 1 ) * IXX ( 2 ) +27 * IXX ( 3 ) ) / 54 |
29 | THETA = ACOS ( R / Q * * ( 1 / 3 ) ) |
30 | X ( 1 ) = -2 * SQRT ( Q ) * COS ( THETA / 3 ) - IXX ( 1 ) / 3 |
31 | X ( 2 ) = -2 * SQRT ( Q ) * COS ( ( THETA +2 * PI ) / 3 ) - IXX ( 1 ) / 3 |
32 | X ( 3 ) = -2 * SQRT ( Q ) * COS ( ( THETA -2 * PI ) / 3 ) - IXX ( 1 ) / 3 |
编译没有报错,但是执行不了?
这种情况怎么处理呢?
谢谢大家!!
|
|