subroutine hec_dig_fit(ic, signal, signal_max, time_of_max) c c use digital filtering to find c the signal maximum and the corresponding time c c input: ic --> channel ic c signal --> array of time slices to be fit c output: signal_max --> maximum adc c time_of_max --> time of maximum (ns) c implicit none c include'hec_par.inc' ! shared parameters include'hec_dig_sys.inc' ! digital filtering system common c integer ic real signal(mx_dig_nslice), signal_max, time_of_max c integer i_t c c calculate the maximum adc (amplitude) c signal_max = 0. time_of_max = 0. do i_t = 1, dig_nslice signal_max = signal_max + (dig_weight_amp(ic,i_t)*signal(i_t)) time_of_max = time_of_max + (dig_weight_tim(ic,i_t)*signal(i_t)) enddo c c calculate the time of maximum c if (signal_max .ne. 0.) then time_of_max = time_of_max/signal_max else time_of_max = 0. endif c end