MATLAB Finding Realistic Data for Bandpass Filter Program Testing

AI Thread Summary
The discussion centers on finding realistic wave data for testing a bandpass filter program. The original poster seeks infrasound data or any amplitude vs. time data that can be downloaded in txt or m format. Suggestions include generating custom test signals using sine and cosine functions to ensure the data is transformable from amplitude vs. time to amplitude vs. frequency and back. The conversation highlights the importance of using relevant data for effective testing, particularly in the context of analyzing infrasound signals. Additionally, MATLAB's built-in datasets like chirp and handel are recommended for testing purposes. The original poster expresses satisfaction upon discovering these datasets and realizes the potential for creative applications in MATLAB.
Pythagorean
Science Advisor
Messages
4,416
Reaction score
327
I want to work on a bandpass filter program, but I'd like some realistic data to try it on. There's got to be something on the web to write/test programs with.

Any suggestions?
 
Physics news on Phys.org
to be more specific, it's wave data I'm looking to transform, not image data.

Infrasound data is most relevent, but any amplitude vs. time data will do.

It doesn't even really have to be mock as long as it's downloadable and in txt or m format.
 
Why don't you just create your own test signals?

- Warren
 
chroot said:
Why don't you just create your own test signals?

- Warren

How would I generate data? I imageine using rand and sin functions, but I want to make sure that it's actually transformable, so any mistakes are in the code and not in the data I generated.
 
It's just a bandpass filter, right? So any continuous (or sampled) data of any kind would be fine. I don't know what you mean by "transformable."

- Warren
 
chroot said:
It's just a bandpass filter, right? So any continuous (or sampled) data of any kind would be fine. I don't know what you mean by "transformable."

- Warren

By transformable, I mean transformed from amplitude (pressure) vs. time, into amplitude vs. frequency, where you cut out the frequencies you don't want, then transformed back into amplitude vs. time.

I guess I should know that any continuous function can be transformed like that, I just want to make sure it's somewhat relevant to what I do at work (which is analyzing infrasound signals)

edit: I'll try throwing the rand function into a sin function unless you have a better idea that's relevant.
 
Just compose a signal that's a sum of some number of sinusoids, some of which should be attenuated by your filter.

Or, use some of MATLAB's built-in data sets like chirp or handel.

- Warren
 
Wow, didn't know about those. Thanks for your help, Warren!
 
Haaaaallelujah! :biggrin:

- Warren
 
  • #10
I feel kind of stupid after giving this a little more thought, it's as easy as:

Amp = sin(w1*t) + sin(w2*t) + sin(w3*t) + cos(w4*t) + cos(w5*t)

where t is your equally spaced time array and the Wn are simply constants.

whew, that grain of sand was tough to climb...

I have the student version of Matlab at home, don't know if chirp or handel come with it, but I can't seem to find them. I like making my own data better though!

Thanks once again!

edit: HA! I found the chirp/handel and played them, now I see where the Hallelujah! came from..
This rocks, I could totally write music in matlab...
 
Last edited:

Similar threads

Replies
5
Views
6K
Replies
1
Views
6K
Replies
4
Views
3K
Replies
5
Views
2K
Replies
10
Views
2K
Replies
1
Views
2K
Back
Top