我正在尝试将fortran代码转换为matlab,我想知道是否有人可以帮助我完成这个子程序。 我特别问这些线条中冒号的含义是什么?
SUB Taper (a(), co(), Re(), Im())
FOR nd = 0 TO 31
n1 = 8 * nd: n2 = a(n1 + 4): n1 = a(n1): n0 = 255 - nd
a = .5 * (1 - co(n1)): b = .5 * (1 - co(n2))
Re(nd) = a * Re(nd): Im(nd) = b * Im(nd)
Re(n0) = b * Re(n0): Im(n0) = a * Im(n0)
NEXT
END SUB
答案 0 :(得分:2)
您问题中的代码片段没有有效的Fortran语法。它是VB,冒号用作statement separator
答案 1 :(得分:-1)
Fortran90及以上版本允许您在给定索引的情况下访问单个数组值,并在给定一系列以冒号分隔的索引的情况下访问子数组。
Fortran = Beginning : End : Increment
MatLab = Beginning : Increment : End
此doc的第5页底部有一个表格,显示了Fortran和MatLab的等价物。