making a data series with 2 or 3 discrete pulse, rest are zero

1 visualización (últimos 30 días)
Asim Biswas
Asim Biswas el 22 de Ag. de 2011
Hello, I am new to matlab. I want to prepare a data series of say 1024, with 2 or 3 sharp pulses at discrete positions. I want rest points to be zero (preferable) or very small values, so that I can really identify the pulses. Later, if I want to add a normally distributed random noise, how I can do that. thanks a lot in advance. regards. asim

Respuestas (1)

Fangjun Jiang
Fangjun Jiang el 22 de Ag. de 2011
Series=zeros(1024,1);
RandPos=[10,13,50];
PulseHeight=2;
Series(RandPos)=PulseHeight;
Noise=rand(1024,1);
Signal=Series+Noise;
plot(Signal);
  6 comentarios
Asim Biswas
Asim Biswas el 22 de Ag. de 2011
Thanks Jiang. I appreciate it.
lets say, 0.1 sec interval from 0.1 to 10.24 sec. I want a resonable frequency and say unit magnitude. However, I want to see the pulse for a very short period but high magnitude. It should look like a peak in the middle of no where.
I wonder if I can make the question clear.
thanks a lot.
regards.
asim
Fangjun Jiang
Fangjun Jiang el 22 de Ag. de 2011
All right,the point here is to show you the method, not give you the complete solution. From the above example, I hope you start to understand how easy MATLAB can enable you to do this. To define time, t=0:0.1:10.24. To generate a unit sine wave with frequency f, f=2; Data=sin(2*pi*t); You can use the same method to generate the pulse signal with high frequency and high magnitude. Then to add them together at a certain time spot, you can use for example: Data(51:60)=Data(51:60)+PulseSignal(1:10). Note that your sample time is 0.1sec, which means 10Hz, you can't really represent any signal with frequency high than 5Hz

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by