24小时热门版块排行榜    

查看: 1647  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

lijunjiexm

铁虫 (小有名气)

[求助] 求助一个简单程序的错误(2),谢谢

编译如下程序,在22行处CHARACTER*(*) STR
出错:

    PROGRAM MOVIE1

C *** Program to draw velocity profiles.
C
      IMPLICIT     REAL*4(A-H,O-Z)
      PARAMETER   (NUMEL = 1920, NUMNP = 2047,NDMB = 1000,NTIME1 = 140)
      REAL*8       QUADX (4,NUMEL), QUADY (4,NUMEL)
      REAL*8       QUADVX(4,NUMEL), QUADVY(4,NUMEL)
      INTEGER*4    BLACK(3)
      INTEGER*4    GREEN(3),RED(3),BLUE(3),WHITE(3),YELLOW(3)
      INTEGER*4    PALEGREEN(3), GREY(3)
      REAL*4       COORD(2), X1, X2, Y1, Y2, PARRAY(2,4)
      REAL*4       VARRAY(2,22)
      INTEGER*4    STATUS1, WINOPE, IDUM, NPOINT, LENGTH
      INTEGER*4    HORPROP, VERPROP
      REAL*4       X(NDMB,NTIME1), Y(NDMB,NTIME1)
      REAL*4       VX(NUMNP, NTIME1), VY(NUMNP, NTIME1)
      REAL*4       XNODE(NUMNP), YNODE(NUMNP)
      CHARACTER*13 MESSAGE1, LINE
      CHARACTER*50 MESSAGE2,MESSAGE3,MESSAGE4,MESSAGE5
      CHARACTER*80 DUM
      CHARACTER*(*) STR
      LOGICAL*1    GRID, VEL
C
C *** Prepare for the graphics:
C
      DATA (BLACK(I),       I=1,3)  /0,0,0/
      DATA (RED(I),         I=1,3)  /256,20,20/
      DATA (GREEN(I),       I=1,3)  /50,256,50/
      DATA (PALEGREEN(I),   I=1,3)  /10,86,10/
      DATA (BLUE(I),        I=1,3)  /100,100,256/
      DATA (WHITE(I),       I=1,3)  /256,256,256/
      DATA (YELLOW(I),      I=1,3)  /256,256,0/
C
      OPEN (7 , FILE = '../eval/ns2dev.msh')
      OPEN (8 , FILE = '../eval/ns2dev.trc')
      OPEN (10, FILE = '../eval/ns2dev.ve2')
      OPEN (11, FILE = '../mesh/mesh.dat')
C
C *** WINDOW
C
C       XMIN =     0.17
      XMIN =   0.0
C       XMAX =    0.19
      XMAX =    0.36
      YMIN =    -0.03
      YMAX =    0.03
C       YMAX =    0.02
      HORPROP = INT(1000. * XMAX) - INT(1000. * XMIN)
      VERPROP = INT(1000. * YMAX) - INT(1000. * YMIN)
      CALL KEEPAS ( ABS(HORPROP),  ABS(VERPROP))
      CALL KEEPAS (1,1)
      CALL PREFSI(1200, 200)
      MESSAGE1 = 'movie1'
      STATUS1 = WINOPE(MESSAGE1,6)
C
      CALL ORTHO2 (XMIN, XMAX, YMIN, YMAX)
      CALL LINEWI (1)
      CALL RGBMOD
      CALL DOUBLE
      CALL LSETDE (0,19)
      CALL GCONFI
      CALL C3I (BLACK)
      CALL CLEAR
      CALL ZBUFFE (.TRUE.)
      CALL ZCLEAR
      CALL SWAPBU
      CALL SLEEP(1)
      CALL ZBUFFE (.TRUE.)
      CALL ZCLEAR
c
c read mesh
c
      DO I = 1, NUMEL
        READ(7,*) IDUM, (QUADX(II,I),II=1,4),  (QUADY(II,I),II=1,4)
      ENDDO
c
c read tracer particles
c
      DO I = 1 , NTIME1
        READ(8,*) IDUM, TIME
        DO II=1, NDMB
          READ(8, *, END = 300) X(II , I), Y(II , I)
        ENDDO
      ENDDO
c
c read velocity field
c
      READ(10,*,END=300) IDUM, DUM1
      DO I = 1 , NTIME1
        READ(10,*,END=300) IDUM, DUM1
        DO II = 1, NUMNP
          READ(10,*,END=300) IDUM, VX(II , I), VY(II , I)
        ENDDO
      ENDDO
c
c read nodes (mesh again)
c
      READ(11,*,END=300) IDUM, DUM1
      DO I = 1 , NUMNP
        READ(11, *, END = 300) IDUM, XNODE(I), YNODE(I)
      ENDDO
C
C loop
C
      DO IBIGLOOP = 1 , 1000
      DO ITIME = 1 , NTIME1
        CALL C3I (BLACK)
        CALL CLEAR
        IF (ITIME .EQ. 1) THEN
          DO II = 1 , 1000
            DUMMY = II ** 0.2342
          ENDDO
        ENDIF
C
C *** Grid
C
        GRID = .FALSE.
        IF (GRID) THEN
          CALL LINEWI (1)
          CALL C3I (BLUE)
          DO II = 1 , NUMEL
            CALL BGNLIN
            DO III = 1 , 4
              COORD(1) = QUADX(III, II)
              COORD(2) = QUADY(III, II)
              PARRAY(1 , III) = QUADX(III, II)
              CALL V2F(COORD)
            ENDDO
            CALL ENDLIN
          ENDDO
          CALL C3I (RED)
          CALL LINEWI (1)
        ENDIF
C
C *** Velocity field
C
        VEL = .FALSE.
        IF (VEL) THEN
          DO I = 1 , NUMNP
            CALL C3I (GREEN)
            X1 = XNODE(I)
            Y1 = YNODE(I)
            X2 = XNODE(I) + VX(I,ITIME) * 1
            Y2 = YNODE(I) + VY(I,ITIME) * 1
            CALL MOVE2 (X1,Y1)
            CALL DRAW2 (X2,Y2)         
            CALL C3I (RED)
            CALL DRAW2 (X2,Y2)
          ENDDO
        ENDIF
c
c *** x-axis
c
C        CALL C3I (RED)
C        CALL LINEWI (1)
C        X1 = -11.
C        Y1 =  0.
C        X2 =  11.
C        Y2 =  0.
C        CALL MOVE2 (X1,Y1)
C        CALL DRAW2 (X2,Y2)
C
c *** y-axis
c
        X1 =  0.
        Y1 = -11
        X2 =  0.
        Y2 =  11
        CALL MOVE2 (X1,Y1)
        CALL DRAW2 (X2,Y2)
C        DO I = 1 , 1000
C          DUMMY = I ** 3.3
C        ENDDO
C
C *** Dumbbells
C
        DO I = 1 , 1
          CALL LINEWI (1)
          CALL C3I (YELLOW)
          CALL BGNPOI
          DO II = 1, NDMB
            COORD(1) = X(II, ITIME)
            COORD(2) = Y(II, ITIME)
            CALL V2F(COORD)
            COORD(2) = - Y(II, ITIME)
            CALL V2F(COORD)
          ENDDO
          CALL ENDPOI
C          CALL C3I (RED)
C          COORD(1) = X(346, ITIME)
C          COORD(2) = Y(346, ITIME)
C          CALL CIRCF(COORD(1), COORD(2), 0.0001)
C          CALL C3I (GREEN)
C          COORD(1) = X(1116, ITIME)
C          COORD(2) = Y(1116, ITIME)
C          CALL CIRCF(COORD(1), COORD(2), 0.0001)
C          CALL C3I (BLUE)
C          COORD(1) = X(319, ITIME)
C          COORD(2) = Y(319, ITIME)
C          CALL CIRCF(COORD(1), COORD(2), 0.0001)
        ENDDO
C         READ(5,*) LINE
        CALL SWAPBU
      ENDDO
      ENDDO
300  STOP
      END
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖


lijunjiexm(金币+10): 谢谢,应该是删了就可以,不影响,我就是觉得f77程序,在VF调用时经常出现原来没问题的隐式申明,但在VF中就出问题了,是这样吗? 2011-07-18 09:54:06
jjdg(金币+1): 感谢参与 2011-07-18 14:49:03
引用回帖:
Originally posted by lijunjiexm at 2011-07-18 08:56:41:
那应该如何呢?把它删了??

好像在程序中也没有用到,就删了好了……
如果用到了,就直接给个特定的长度,如 character*80 str 也可以……
6楼2011-07-18 09:21:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

lijunjiexm

铁虫 (小有名气)


dubo(金币+1): 欢迎常来程序语言版讨论 2011-07-31 13:28:39
编译错误信息如下(请帮忙指点,谢谢):
--------------------Configuration: sucontr - Win32 Debug--------------------
Compiling Fortran...
G:\Program Files\sucontr\eval\movie1.f
G:\Program Files\sucontr\eval\movie1.f(22) : Error: This passed length character name has been used in an invalid context.   [STR]
      CHARACTER*(*) STR
--------------------^
Error executing df.exe.

movie1.obj - 1 error(s), 0 warning(s)
2楼2011-07-18 01:19:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖


jjdg(金币+1): 感谢参与 2011-07-18 14:48:49
CHARACTER*(*) STR

这个只能用在子程的参数中,也就是说 STR 只能是 dummy argument

gfortran 给出的提示信息可能更清楚一些:
引用回帖:
      CHARACTER*(*) STR                                                
                      1
Error: Entity with assumed character length at (1) must be a dummy argument or a PARAMETER

3楼2011-07-18 08:30:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lijunjiexm

铁虫 (小有名气)

那应该如何呢?把它删了??
4楼2011-07-18 08:56:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 YLHlRHNwYkce 2026-09-02 6/300 2026-09-03 15:23 by T0rGB46095mJ
[硕博家园] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 rFEsUBKXRll0 2026-09-02 5/250 2026-09-03 15:10 by T0rGB46095mJ
[考研] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 ero8OE6tv9cu 2026-09-02 9/450 2026-09-03 14:48 by T0rGB46095mJ
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 ero8OE6tv9cu 2026-09-02 8/400 2026-09-03 14:48 by T0rGB46095mJ
[基金申请] 国社科又开始会评了,不知道这次命运如何 +10 雨打竹帘 2026-08-30 14/700 2026-09-03 13:17 by qsd10086
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 YLHlRHNwYkce 2026-09-02 8/400 2026-09-03 12:03 by T0rGB46095mJ
[基金申请] 麻烦专家们看看评委们的意见(F口面上) +8 gdd2018 2026-08-28 13/650 2026-09-03 06:22 by 羽毛枫f
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ero8OE6tv9cu 2026-09-02 4/200 2026-09-03 03:14 by rM1TE0WVDIIY
[基金申请] 科研人应该花精力去思考如何解决问题,而不是去凝练问题 +7 瞬息宇宙 2026-09-01 14/700 2026-09-02 17:33 by ma0526
[基金申请] 学科评审组评审是指会评吗? +5 瞬息宇宙 2026-08-31 5/250 2026-09-02 10:13 by 雨冰共舞
[基金申请] 面上函评意见出来了,像什么等级? 20+4 Tsingking1 2026-08-27 17/850 2026-09-01 19:51 by 超级无敌华子
[论文投稿] 小白求助 投论文要求的highlights应该如何写 5+3 l1963982152 2026-08-29 4/200 2026-09-01 09:04 by 北京莱茵编辑
[基金申请] 面上意见出来了 +12 黄鸟于飞Chao 2026-08-29 23/1150 2026-08-31 18:57 by 黄鸟于飞Chao
[基金申请] 能否申诉? +7 echo8914667 2026-08-30 8/400 2026-08-31 17:00 by yihongxu
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 29号明天会评吗 +4 笨笨唐 2026-08-28 4/200 2026-08-31 09:30 by huixian257
[基金申请] 为什么到现在没收到通知? +5 tannykie 2026-08-29 5/250 2026-08-30 21:05 by purplejack
[考博] 找导师 +6 yuanjiabao 2026-08-29 7/350 2026-08-30 14:40 by 生科新手
[基金申请] 我就是申请一个面上项目而已,这评审意见是按照杰青的条件评的吧? +6 gouxfjh 2026-08-28 11/550 2026-08-30 07:57 by gouxfjh
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
信息提示
请填处理意见