OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
get_file_name_info.F File Reference
#include "implicit_f.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine get_file_name_info (input, leni, rootname, lenr, runn, fvers, is_dyna)

Function/Subroutine Documentation

◆ get_file_name_info()

subroutine get_file_name_info ( character input,
integer leni,
character rootname,
integer lenr,
integer runn,
integer fvers,
integer is_dyna )

Definition at line 31 of file get_file_name_info.F.

34C-----------------------------------------------
35C I m p l i c i t T y p e s
36C-----------------------------------------------
37#include "implicit_f.inc"
38C-----------------------------------------------
39C D u m m y A r g u m e n t s
40C-----------------------------------------------
41 CHARACTER INPUT*256
42 CHARACTER ROOTNAME*80
43 INTEGER LENI,LENR,RUNN,FVERS,IS_DYNA
44C-----------------------------------------------
45C L o c a l V a r i a b l e s
46C-----------------------------------------------
47 INTEGER ERR,FST,LST,V4RNUM,rd
48 CHARACTER ARUN*4,EXT*4,EXT3*3,V4LETTER,V5LETTER
49C-----------------------------------------------
50 IF (leni < 4) GOTO 1000
51
52 WRITE(ext,'(A)') input(leni-3:leni)
53 IF ( lle(ext,'.rad') .AND. lge(ext,'.rad')) THEN
54 IF (leni < 10 ) GOTO 1000
55C Run number
56 READ(input(leni-7:leni-4),fmt='(I4)',err=1000) runn
57C Rootname
58 WRITE(rootname,fmt='(A)',err=1000) input(1:leni-9)
59 lenr=len_trim(rootname)
60C Dataset letter
61 WRITE(v5letter,'(A)') input(leni-8:leni-8)
62 IF ( v5letter=='_') THEN
63 fvers = 5
64 ELSE
65 GOTO 1000
66 ENDIF
67 ELSEIF ( input(leni-1:leni) == '.k' ) THEN
68C Rootname
69 WRITE(rootname,fmt='(A)',err=1000) input(1:leni-2)
70 lenr=len_trim(rootname)
71 is_dyna = 1
72 runn = 0
73 ELSEIF ( input(leni-3:leni) == '.key' .OR.
74 . input(leni-3:leni) == '.dyn.OR.'
75 . INPUT(LENI-3:LENI) == '.dyn' ) THEN
76C Rootname
77 WRITE(ROOTNAME,FMT='(a)',ERR=1000) INPUT(1:LENI-4)
78 LENR=LEN_TRIM(ROOTNAME)
79 IS_DYNA = 1
80 RUNN = 0
81 ELSE
82C Run number
83 READ(INPUT(LENI-1:LENI),FMT='(i2)',ERR=1000) RUNN
84C Rootname
85 WRITE(ROOTNAME,FMT='(a)',ERR=1000) INPUT(1:LENI-3)
86 LENR=LEN_TRIM(ROOTNAME)
87C Dataset letter
88 WRITE(V4LETTER,'(a)') INPUT(LENI-2:LENI-2)
89 IF ( V4LETTER=='d') THEN
90 FVERS=4
91 ELSE
92 GOTO 1000
93 ENDIF
94
95 ENDIF
96
97
98 RETURN
99
100 1000 CONTINUE
101 WRITE(6,'(a)') ' '
102 WRITE(6,'(a,a)') '*** error : wrong radioss input file name: ',
103 * INPUT(1:LENI)
104 WRITE(6,'(a)') ' '
105 CALL PRHELPINFO()
106 CALL MY_EXIT(2)
program radioss
Definition radioss.F:34