63 subroutine read_header(headerfile,gridfile,matefile,mpifile,monfile,bkpfile,sdoffile, &
64 time_step,start_time,stop_time,&
69 depth_search_mon_pgm,ndt_mon_pgm,n_pgm,&
70 rotation_angle_mon_pgm,monfile_pgm,&
71 depth_search_mon_lst,n_lst,monfile_lst, &
72 depth_search_sys_lst,s_lst,sysfile_lst,&
73 dg_c,pen_c, scheme, order, stages, testmode, &
74 ntime_err, time_err, damping_type, &
75 n_testcase, tag_testcase, &
76 b_failoncoeffs, b_setuponly, b_failCFL, b_instabilitycontrol, instability_maxval)
83 character*70 :: headerfile,gridfile,matefile,mpifile,monfile,bkpfile
85 character*10 :: scheme
86 character*8 :: keyword
87 character*3 :: deltat_fixed
89 integer*4 :: testmode, trestart
90 integer*4 :: status, dummy
91 integer*4 :: ileft,iright, order, stages
93 integer*4 :: i,j,im,is
94 integer*4 :: ndt_monitor
95 integer*4 :: ndt_mon_pgm,n_pgm
96 integer*4 :: monfile_pgm
97 integer*4 :: n_lst, s_lst, ntime_err, itime, n_testcase, tag_testcase
98 integer*4 :: monfile_lst, sysfile_lst, damping_type
99 integer*4 :: file_row = 0
101 integer*4,
dimension (6) :: option_out_var
103 real*8 :: val,dg_c, pen_c
104 real*8 :: time_step,start_time,stop_time
105 real*8 :: depth_search_mon_pgm
106 real*8 :: rotation_angle_mon_pgm
107 real*8 :: depth_search_mon_lst, depth_search_sys_lst
110 real*8,
dimension(ntime_err) :: time_err
113 logical :: b_fail_unset_args = .false.
117 real*8 :: instability_maxval
118 logical :: b_instabilitycontrol
119 logical :: b_failoncoeffs, b_setuponly, b_failCFL
122 im = 0; is = 0; itime = 0;
123 n_pgm = 0; monfile_pgm = 0
124 n_lst = 0; monfile_lst = 0
131 open(40,file=headerfile)
134 read(40,
'(A)',iostat = status) inline
135 file_row = file_row + 1
137 if (status.ne.0)
exit
140 if (inline(1:1) .eq.
' ')
then
146 iright = len_trim(inline)
150 if (inline(i:i) .eq.
' ')
exit
153 keyword = inline(1:(ileft-2))
156 arglen = len_trim(inline(ileft:iright))
164 if (arglen .eq. 0)
then
165 write(*,
'(A,I3,A,A,A)')
'FATAL in SPEED.input, row', file_row
': no argument given for command "''"'
171 select case (keyword)
174 read(inline(ileft:iright),*) gridfile
177 read(inline(ileft:iright),*) dg_c
180 read(inline(ileft:iright),*) pen_c
183 read(inline(ileft:iright),*) time_step
186 read(inline(ileft:iright),*) start_time
189 read(inline(ileft:iright),*) stop_time
193 read(inline(ileft:iright),*) trestart
196 read(inline(ileft:iright),*) time_step
200 read(inline(ileft:iright),*) ndt_monitor
203 read(inline(ileft:iright),*) scheme, order, stages
209 read(inline(ileft:iright),*) matefile
212 read(inline(ileft:iright),*) mpifile
215 read(inline(ileft:iright),*) monfile
218 read(inline(ileft:iright),*) bkpfile
221 read(inline(ileft:iright),*) sdoffile
224 read(inline(ileft:iright),*) option_out_var(1),option_out_var
225 option_out_var(3), option_out_var(4),option_out_var
232 read(inline(ileft:iright),*) time_err(itime)
235 read(inline(ileft:iright),*) damping_type
240 read(inline(ileft:iright),*) depth_search_mon_pgm, &
241 ndt_mon_pgm,rotation_angle_mon_pgm,monfile_pgm
245 read(inline(ileft:iright),*) depth_search_mon_lst,monfile_lst
249 read(inline(ileft:iright),*) depth_search_sys_lst,sysfile_lst
257 read(inline(ileft:iright),*) tag_testcase
263 read(inline(ileft:(ileft+arglen)),
'(L)') b_failcfl
267 read(inline(ileft:iright),*) b_instabilitycontrol
271 read(inline(ileft:iright),*) b_setuponly
276 read(inline(ileft:iright),*) b_failoncoeffs
280 read(inline(ileft:iright),*) instability_maxval
285 write(*,
'(A,I3,A,A)')
'In SPEED.input, row', file_row,
': ignored field '
288 read(inline(ileft:iright),*) dummy
292 write(*,
'(A,I3,A,A)')
'FATAL in SPEED.input, row', file_row,
': unknown keyword '
317 end subroutine read_header
integer, parameter exit_syntax_error
Contains parameters for MDOF.
integer *4, dimension(3) sdofout
displ, acc, f_react
integer *4 flag_outatalldofs