Sample a waveform at rate of 1pico second

1 view (last 30 days)
I had the waveform for a time duration 0f 2.5micro sec (attached). I need to sample this waform for every 1 pico second and store the data in matrix form of size 50 by 50000. Kindly suggest a solution to this problem.

Answers (1)

Arthi Sathyamurthi
Arthi Sathyamurthi on 23 Mar 2021
Based on the information you have shared; I believe you acquired the waveform by plotting a workspace variable. Then it should contain a set of values, since computation takes place on a discrete set of values. In case it contains more than 2.5e6 values you can retrieve values for every 1 ps. But in case it is less than that, interpolate the signal such that it has minimum number of discrete values in the data and then try to sample (retrieve) the values. You can use the interpolation function, interp1 to do a 1-D data interpolation. In case you are getting it from a continuous signal source also, Matlab gets the value and stores it as a data. Try to find the variable and then try to sample for every picosecond.
If this is not what you are looking for could you, please provide a detailed explanation on how you got the waveform along with the code you have tried so that we can replicate the issue.
  3 Comments
Arthi Sathyamurthi
Arthi Sathyamurthi on 26 Mar 2021
The simplest way to find the non-zero value present in the csv file is by using the find function. This function returns the indices of the non-zero values. Find the non-zero values present using the indices as array(indices). If the values in the csv file aren’t exactly zero, compare the array to a minimum threshold and then find the indices.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!