Fortran Coder

标题: 如何解决Syntax error in array constructor的问题 [打印本页]

作者: mikeyu11    时间: 2024-7-31 15:31
标题: 如何解决Syntax error in array constructor的问题
源码:
        Allocate(P_fft_cmplx((2*(NX/SS)-1+10)/2 + 1, 2*(NYs/SS)-1 + 3), &
        W_fft_cmplx((2*(NX/SS)-1+10)/2 + 1, 2*(NYs/SS)-1 + 3), &
        AK_fft_cmplx((2*(NX/SS)-1+10)/2 + 1, 2*(NYs/SS)-1+3))
        rstrides = [0, 1, 2*(NX/SS)-1+10]
        cstrides = [0, 1, (2*(NX/SS)-1+10)/2 + 1]
        dimensions = (/2*(NX/SS)-1+10,2*(NYs/SS)-1+3/)

        AK_fft_real = 0
        AK_fft_real(10+1:2*(NX/SS)-1+10,1+3:2*(NYs/SS)-1+3)=AK((/(Nx/SS)-1:1:-1,0:(Nx/SS)-1/),(/(Nys/SS)-1:1:-1,0:(Nys/SS)-1/))
        P_fft_real = 0
        P_fft_real((Nx/SS)+10:2*(Nx/SS)-1+10,(NYs/SS)+3:2*(Nys/SS)-1+3)=P((/1:NX:SS/),(/1:NN:SS,NN-1:1:-1*SS/))        



报错:.\VI_FFT.f90:55:74:

         AK_fft_real(10+1:2*(NX/SS)-1+10,1+3:2*(NYs/SS)-1+3)=AK((/(Nx/SS)-1:1:-1,0:(Nx/SS)-1/),(/(Nys/SS)-1:1:-1,0:(Nys/SS)-1/))
                                                                          1
Error: Syntax error in array constructor at (1)

希望高手能帮小白解下问题,谢谢!!!!

作者: li913    时间: 2024-7-31 16:09
等号右边不符合语法  AK((/(Nx/SS)-1:1:-1,0:(Nx/SS)-1/),(/(Nys/SS)-1:1:-1,0:(Nys/SS)-1/)) 。你想表达什么?
作者: mikeyu11    时间: 2024-7-31 16:17
这是国外上的一段程序,这段程序的应该是将计算的刚度矩阵对称赋值
作者: mikeyu11    时间: 2024-7-31 16:19
fortran语言不熟,不知道是语法上的问题还是其他问题。
作者: mikeyu11    时间: 2024-7-31 16:20
这段程度是用Fortran的数学库采用DC-FFT方法求解弹性变形
作者: fcode    时间: 2024-7-31 21:22
(/(Nx/SS)-1:1:-1,0:(Nx/SS)-1/)
这种数组构造器是 intel fortran 的扩展语法,你试试用 intel 的编译器来编译。
作者: mikeyu11    时间: 2024-8-1 10:55
fcode 发表于 2024-7-31 21:22
(/(Nx/SS)-1:1:-1,0:(Nx/SS)-1/)
这种数组构造器是 intel fortran 的扩展语法,你试试用 intel 的编译器来 ...

好的,谢谢,我换个编译器试试




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2