How do I store each output of my function as an vector element?

I wrote a cross-ambiguity function (Function [tau,doppler,tau_p,doppler_p] = wgenx). There are no input arguments.
When I call my function in the command window, I get an output of four values.
I want to run my function 500 times and get 500 tau values, 500 doppler values, 500 tau_p values and 500 doppler_p values. But I want the 500 tau values in a vector (dimension 1 x 500) and 500 doppler values in a separate vector (dimension 1 x 500).
I am using on older 2010a student matlab version.
Help?

 採用された回答

Marta Salas
Marta Salas 2014 年 3 月 12 日
編集済み: Marta Salas 2014 年 3 月 12 日

0 投票

I guess there are more efficient ways to do it, but have you try a simple for loop?
for i=1:150
[tau(i),doppler(i),tau_p(i),doppler_p(i)] = wgenx;
end

その他の回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2014 年 3 月 12 日
編集済み: Andrei Bobrov 2014 年 3 月 12 日

0 投票

[tau,doppler,tau_p,doppler_p] = arrayfun(@wgenx,1:500);
ADD
[tau,doppler,tau_p,doppler_p] = arrayfun(@(x)wgenx,1:500);

2 件のコメント

Pamela Stein
Pamela Stein 2014 年 3 月 12 日
I tried your suggestion in the command window. I receive "error using ==>wgenx, too may input arguments.
Suggestions? Thank you.
Andrei Bobrov
Andrei Bobrov 2014 年 3 月 12 日
it for Octave, for MATLAB see ADD part

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

カテゴリ

ヘルプ センター および File ExchangeDetection, Range and Doppler Estimation についてさらに検索

質問済み:

2014 年 3 月 12 日

編集済み:

2014 年 3 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by