我有以下最小示例:
program main
double precision, dimension(3) :: rankone
double precision, dimension(3,1) :: ranktwo
double precision, dimension(3) :: output
rankone = 1
ranktwo = 2
output = rankone + ranktwo
print *, 'output: ', output
end program main
是否有像squeeze
Matlab 中那样从变量中删除单例维度的函数ranktwo
。我正在寻找类似的东西
output = rankone + squeeze(ranktwo)
如果没有,此设置是否有任何解决方法?
对于这个问题,不同版本的 Fortran 有什么不同吗?