function avedir = DM(ECG_1) % find peak values peaks = r_peaks(ECG_1); % get the peak value and the 10 indices before it (total of 11 points) peakreg_ind = [peaks(1)-10:1:peaks(1); peaks(2)-10:1:peaks(2); peaks(3)-10:1:peaks(3)]; time_diff = 0.008; ioi = 0.08; grads = [gradient(ECG_1(peakreg_ind(1,:))',time_diff); gradient(ECG_1(peakreg_ind(2,:))',time_diff); gradient(ECG_1(peakreg_ind(3,:))',time_diff)]; for x=1:1:3 if ~isempty(find(grads(x,:) < 0, 1)) grads(x,:) = grads(x,:) - min(grads(x,:)); end end avedir = mean(grads);