File: step.f

package info (click to toggle)
nastran 0.1.95-2
  • links: PTS, VCS
  • area: non-free
  • in suites: bookworm, bullseye, sid
  • size: 122,540 kB
  • sloc: fortran: 284,409; sh: 771; makefile: 324
file content (40 lines) | stat: -rw-r--r-- 1,159 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
      SUBROUTINE STEP (U2,U1,U0,P,IBUF)
C
C     STEP WILL INTEGRATE FORWARD ONE TIME STEP
C
C     THIS ROUTINE IS SUITABLE FOR SINGLE PRECISION OPERATION
C
      INTEGER         FILE(7)  ,SQR     ,RSP     ,DUM     ,IBUF(1)
      DIMENSION       U2(1)    ,U1(1)   ,U0(1)   ,P(1)
      COMMON /TRDXX / DUM(21)  ,ISCR1   ,ISCR2   ,ISCR3   ,ISCR4   ,
     1                ISCR5    ,ISCR6   ,IOPEN   ,ISYM
      COMMON /NAMES / DUMM(7)  ,RSP     ,DUMN(3) ,SQR
      COMMON /INFBSX/ IFIL(7)  ,IFILU(7)
C
      FILE(1) = ISCR1
      FILE(2) = DUM(2)
      FILE(4) = SQR
C
C     TELL MATVEC/INTFBS FILES ARE OPEN
C
      IOPEN = 1
C
C     FORM R.H.S. OF THE INTEGRATION EQUATION
C
      CALL MATVEC (U1(1),P(1),FILE,IBUF)
      FILE(1) = ISCR4
      CALL MATVEC (U0(1),P(1),FILE,IBUF)
C
C     CALL INTFBS/FBSINT TO DO THE FORWARD/BACKWARD PASS
C
      IFIL(1)  = ISCR2
      IFILU(1) = ISCR3
      CALL RDTRL (IFIL)
      CALL RDTRL (IFILU)
      IFIL(5)  = RSP
      IFIL(3)  = DUM(2)
      IF (ISYM .EQ. 1) CALL INTFBS (P(1),U2(1),IBUF)
      IF (ISYM .EQ. 0) CALL FBSINT (P(1),U2(1))
      IOPEN = 0
      RETURN
      END