how to find time corresponds to peak of plot?

조회 수: 4 (최근 30일)
majid
majid 2021년 11월 30일
댓글: majid 2021년 11월 30일
Hello to everyone.
I have a signal which it is photoelectron vs. Time, I want to interpolate it with factor of 4, so I did it and derived photoelectron vs. sample. Then, I want to limit this signal just 240 sample to the right and 240 sample to the left. Now I want to know at which time I have peak? Can anyone help me? What should I do with time vector to achieve this?
Here is my codes and data of signal and time are also attached:
%% interpolation
N_interpolation=4;
signal_padd_zero=zeros(1,N_interpolation*length(lowpass_signal));
signal_padd_zero([1:N_interpolation:end])=lowpass_signal;
interpolated_signal=lowpass(signal_padd_zero,0.01);
plot(interpolated_signal, 'b.-')
axis tight
xlabel('samples')
ylabel('photoelectron')
title('interpolated signal')
%% Limited signal
% max sample
[~,index_of_interpolated_signal]=max(interpolated_signal);
sprintf('Maximum of N occurred at index position %d.',...
index_of_interpolated_signal)
% range of samples for processing
% we limit the signal in order to reduce the computation time
x1=index_of_interpolated_signal-(60*N_interpolation);
x2=index_of_interpolated_signal+(60*N_interpolation);
interpolated_signal=interpolated_signal(x1:x2);
figure;plot(interpolated_signal, 'b.-')
axis tight
xlabel('samples')
ylabel('photoelectron')
title('limited signal')
%% now how can I find the time that corresponds to the peak?
  댓글 수: 1
majid
majid 2021년 11월 30일
because I interpolate then limit the signal and also I plot the signal photoelectron vs. sample , I dont hve any idea abot time!

댓글을 달려면 로그인하십시오.

답변 (1개)

KSSV
KSSV 2021년 11월 30일
If (t,x) is your time and respective data.
[val,idx] = max(x) ;
t_maxx = t(idx)
  댓글 수: 3
KSSV
KSSV 2021년 11월 30일
편집: KSSV 2021년 11월 30일
load('time.mat')
load('signal.mat')
[val,idx] = max(lowpass_signal) ;
t_maxx = t(idx) ;
plot(t,lowpass_signal)
hold on
plot(t_maxx,val,'*r')
majid
majid 2021년 11월 30일
I want to find peak at the interpolated_signal plot, not lowpassed signal!
this-> interpolated_signal=interpolated_signal(x1:x2);

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Multirate Signal Processing에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by