1 *****************************************************************************
3 subroutine open_gamma_impulses_file
4 + (unit_number,file_name,open_status)
5 * open_status = 1 - new
6 * open_status <> 1 - old
8 integer unit_number, open_status, flag
9 character*(*) file_name
11 if( open_status.EQ.1 ) then
12 open(unit=unit_number,form='unformatted',name=file_name,
13 + status='new',err=1,iostat=flag)
15 open(unit=unit_number,form='unformatted',name=file_name,
16 + status='old',err=1,iostat=flag)
20 1 write (*,*) 'Error in openning gammas file. flag=',flag
24 *****************************************************************************
26 subroutine close_gamma_impulses_file(unit_number)
32 *****************************************************************************
34 subroutine save_gamma_impulse(unit_number,event_number,
35 + gammas_amount,gamma_impulse)
39 integer*2 event_number__high_bytes, event_number__low_bytes
41 integer gammas_amount, i,j
42 real gamma_impulse(3,*)
44 event_number__high_bytes = event_number/32767
45 event_number__low_bytes = event_number -
46 + event_number__high_bytes*32767
48 write(unit_number,err=1),
49 + event_number__high_bytes, event_number__low_bytes,
51 write(unit_number,err=1),
52 + ((gamma_impulse(i,j),i=1,3),j=1,gammas_amount)
55 1 stop 'Error in writing to gammas file.'
58 *****************************************************************************
60 subroutine read_gamma_impulse(unit_number,event_number,
61 + gammas_amount,gamma_impulse)
63 integer gammas_amount, i,j, unit_number
65 integer*2 event_number__high_bytes, event_number__low_bytes
66 real gamma_impulse(3,*)
68 read(unit_number,err=1,end=2)
69 + event_number__high_bytes, event_number__low_bytes,
71 read(unit_number,err=1)
72 + ((gamma_impulse(i,j),i=1,3),j=1,gammas_amount)
74 event_number = event_number__high_bytes
75 event_number = event_number*32767 + event_number__low_bytes
82 1 stop 'Error in reading from gammas file.'
85 *****************************************************************************