Visual studio 2013 Fortran语言中的和函数
我正在处理一段Fortran90代码,结果被求和函数卡住了。代码此时无法正常工作 相关代码如下所示:Visual studio 2013 Fortran语言中的和函数,visual-studio-2013,sum,fortran,gfortran,fortran90,Visual Studio 2013,Sum,Fortran,Gfortran,Fortran90,我正在处理一段Fortran90代码,结果被求和函数卡住了。代码此时无法正常工作 相关代码如下所示: subroutine barfilter(xp,neighbbar,nelem,pe) integer*4, intent(in), dimension(:,:) :: neighbbar real*8, intent(in) :: pe real*8, intent(inout), dimension(:) :: xp integer*4
subroutine barfilter(xp,neighbbar,nelem,pe)
integer*4, intent(in), dimension(:,:) :: neighbbar
real*8, intent(in) :: pe
real*8, intent(inout), dimension(:) :: xp
integer*4 :: nbar, bar
real*8 :: total
nbar = size(neighbbar,1)
do bar = 1,nbar
total = sum(xp(neighbbar(bar,:))**pe,1,neighbbar(bar,:)>0))
end do
end subroutine
我不理解和函数的构造。然而,该公式
xp(neighbbar(bar,:))
我不明白。当在MicrosoftVisualStudio2013中添加dubugging并键入时,结果只会显示“{…}”。这是什么意思?这是数组
xp
的矢量订阅,如图所示或中所示。您确定在MS Visual Studio中有gfortran吗?如果它真的起作用,我会非常惊讶。您正在使用neighbor
数组来屏蔽xp
数组。也许掩码应该是xp(neighbar(bar,:)>0
?