subroutine frasetr (kode) c c part of the de rims data processing software c this subroutine prompts for the time duration of a single plot c frame, normally used in plots of data versus time instead of c the subset subroutine. c c user specifies the duration of a plot in seconds, at the moment. c the initial frame times in /fratms/ are defined with a call to c deffra. the resltn routine is used to define duration/increment c times, and the initial subperiod is also defined. c c v1.0 jfe johnson 23 jul 82 c c return kodes are kode=-1 end of file on input c kode=0 syntactically correct input c kode=1 syntactically or conceptually incorrect input c c----------------------------------------------------------------------| c | c v1.1 | c modified by r.l.west intergraph 4-dec-1984 | c commentted(c*) out line "if(ndiv*..." to allow this | c check to be done in the subroutine resltn if | c necessary | c | c----------------------------------------------------------------------| c integer*4 kode, ndiv c integer*4 iflag c real*8 run_times(4), frame_times(4), strip_times(4), * dur1, dur, inc, tmpdiv, idur1 c common /comtms/ run_times,inc,dur common /fratms/ frame_times,ndiv common /comlim/ strip_times c c transfer process times to frame times, prompt for input c kode=0 ndiv=0 c c ! get frame times c do i=1,4 frame_times(i)=run_times(i) strip_times(i)=run_times(i) end do c c c write(*,50) 50 format(' enter duration of each frame (secs), 0 if single', 1 ' frame: ',$) read(*,*)idur1 idur1=idur1*1000000.0d0 if (idur1 .lt. 0.0d0) go to 101 if (idur1 .gt. 0.0d0) go to 80 c c here duration specified zero, so calculate duration of plot from c start, stop times in /comtms/ c call diftmsr (run_times(3),run_times(4), * run_times(1),run_times(2),iflag,idur1) if (iflag .ne. 0) go to 101 c c determine number of divisions, and define first subperiod c 80 call resltnr (idur1,ndiv) dur1=idur1 if (ndiv .eq. 0) go to 101 tmpdiv=float(ndiv) inc=dur1/tmpdiv dur=inc call addtm2r (strip_times(1),strip_times(2),dur,strip_times(3), * strip_times(4)) call deffrar (kode) return c 99 kode=-1 return c 101 kode=1 return end