【发布时间】:2014-03-26 17:36:43
【问题描述】:
在做 make 时,我收到类似
的错误"Identifier swan_vv2 appeared in a USE statement but is not publicly accessible from this module."
USE Couple2Swan, ONLY : ADCIRC_ETA2 => SWAN_ETA2,
& ADCIRC_UU2 => SWAN_UU2,
& ADCIRC_VV2 => SWAN_VV2,
& ADCIRC_WX2 => SWAN_WX2,
& ADCIRC_WY2 => SWAN_WY2,
& COUPCUR, COUPWIND, COUPWLV,
& InterpoWeight
!Casey 091216: Added these variables for coupling ADCIRC Manning's n values
! as Madsen friction lengths.
& ,ADCIRC_Z0 => SWAN_Z0,
& COUPFRIC
USE 语句由“ONLY”组成,但在删除 ONLY 后,它说 ONLY 是必要的。
有人可以帮忙吗?
问候- -马克兰
添加模块文件内容:
REAL(SZ),ALLOCATABLE :: SWAN_UU2(:,:)
IF(.NOT.ALLOCATED(SWAN_UU2)) ALLOCATE(SWAN_UU2(1:NP,1:2))
SWAN_UU2 (IN,1) = 0.D0
SWAN_UU2 (IN,2) = 0.D0
SWAN_UU2 (IN,1) = SWAN_UU2 (IN,2)
SWAN_UU2 (IN,2) = UU2 (IN)
SWAN_UU2 (IN,2) = 0.D0
IF(ALLOCATED(SWAN_UU2)) DEALLOCATE(SWAN_UU2)
不是整个模块文件,是部分内容名称显示错误,在use语句中不是swan_VV2与swan_UU2。
我可以上传模块文件吗?
【问题讨论】:
-
模块 sn-p 看起来很奇怪。可执行代码是无关紧要的,而且您肯定没有显示所有重要的声明。此外,
only肯定不是重命名所必需的。 -
是
use语句中的swan_VV2还是模块中的swan_UU2?拼写错误?