铁木辛柯上单 发表于 2022-5-28 23:13:43

Fortran 语法问题

错误报告如下:
00MMC(1)-Exp-psi-phi.for(57): error #5082: Syntax error, found REAL_CONSTANT '0.121' when expecting one of: <IDENTIFIER> %FILL
      real(kind=8)::0.121
----------------------^
00MMC(1)-Exp-psi-phi.for(69): error #5082: Syntax error, found IDENTIFIER 'EXP' when expecting one of: .EQV. .NEQV. .XOR. .OR. .AND. .LT. < .LE. <= .EQ. == .NE. /= .GT. > ...
          phi_dot = 31+(phi_p_dot-31)exp(-((gama_p-gama_pp)/0.121)**2)

请问各位大佬,改如何修改源代码?

铁木辛柯上单 发表于 2022-5-28 23:14:27

这个Fortran中的自然指数应该如何计算?

kyra 发表于 2022-5-29 08:46:41

real(kind=8)::0.121这句是在想表达啥意思?
不能这样写的哟

如果你需要kind8 的 0.121 常数,可以写成 0.121_8

kyra 发表于 2022-5-29 08:48:09

phi_dot = 31+(phi_p_dot-31)exp(-((gama_p-gama_pp)/0.121)**2)
phi_dot = 31+(phi_p_dot-31)*exp(-((gama_p-gama_pp)/0.121)**2)

少了个乘号,注意编程语句不能像数学表达书那要,省略乘号

铁木辛柯上单 发表于 2022-5-29 10:44:45

kyra 发表于 2022-5-29 08:48
phi_dot = 31+(phi_p_dot-31)exp(-((gama_p-gama_pp)/0.121)**2)
phi_dot = 31+(phi_p_dot-31)*exp(-((gama ...

感谢您的帮助!!!

铁木辛柯上单 发表于 2022-5-29 10:52:32

kyra 发表于 2022-5-29 08:46
real(kind=8)::0.121这句是在想表达啥意思?
不能这样写的哟



请问,还是上面的代码,报了以下的错误,是怎么回事呢?需要标量表达是什么意思呢?
error #6512: A scalar-valued expression is required in this context.
      if (Q.gt.10) then

kyra 发表于 2022-5-29 11:51:35

Q如何定义的,是数组还是单变量?

铁木辛柯上单 发表于 2022-5-29 16:36:11

kyra 发表于 2022-5-29 11:51
Q如何定义的,是数组还是单变量?

明白了,给了定义之后就不报错了!谢谢您的帮助!
页: [1]
查看完整版本: Fortran 语法问题