Reducing four parllel program calls into one

1 回表示 (過去 30 日間)
C Meek
C Meek 2012 年 2 月 9 日
Hi everyone,
I'm doing a mini-project on a reverberation unit, and part of the signal chain has the signal run through four parallel filters simultaneously and then combine their outputs.
This is easily done by having four separate program calls (one for each filter), then adding the outputs. But what I would like to do is design a program call which does all the relevant calculations at once.
At the minute my intuition is to try this with matricies, but I'm unsure on how to get about this. Anyone got any suggestions?
If I need to clarify more just let me know!
Thanks
Craig

回答 (2 件)

Jason Ross
Jason Ross 2012 年 2 月 9 日
If you have the Parallel Computing Toolbox, look into spmd. It would allow you to send calculations to four different labs. You can use the "labIndex" property to control what happens on each one.
Make sure to look at the "Limitations", as there are some things that may may this not work for you.
  1 件のコメント
Walter Roberson
Walter Roberson 2012 年 2 月 10 日
I think the real question has nothing to do with PCT. I think the real question is whether and how multiple filters that are added together can be combined in to a single filter.

サインインしてコメントする。


C Meek
C Meek 2012 年 2 月 12 日
Yea, Walter is right. I'll try elaborate a little bit more!
I have a signal y, which has to get fed into four parallel feed-forward comb filters. So y is fed into each, and the respective outputs are all added together.
I have already made the filters as another function call, feedforcomb(y,b,M). b is decay and M is delay, and have different values for each filter.
So, this is quite easy to do:
M=4799; b=0.742; y1=feedforcomb(y,b,M);
M=4999; b=0.733; y2=feedforcomb(y,b,M);
M=5399; b=0.715; y3=feedforcomb(y,b,M);
M=5801; b=0.697; y4=feedforcomb(y,b,M);
And then the output signal is y=y1+y2+y3+y4;
Essentially, my question is indeed if this can be combined into a single filter, with one program call performing all the necessary calculations at once.
I have been thinking about using matricies, but am not getting that far. Does anyone have any ideas?
Thanks!
Craig

カテゴリ

Help Center および File ExchangeFourier Analysis and Filtering についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by