Azzera filtri
Azzera filtri

I need to have output of qfunc as a handle function

1 visualizzazione (ultimi 30 giorni)
all,
I need to have output of qfunc as a handle function but I face following error:
error: """Error using qfunc
The argument of the Q function must be a real array."""
so does anybody know how can I use handle function in qfunction??????
myf = @(ebn0)BER32APSK(c,M,ebn0)-p;
and inside of BER32APSK I would have:
fsum = fsum + qfunc(sqrt(((d2)*(log2(M))*ebn0)/2));

Risposta accettata

Walter Roberson
Walter Roberson il 5 Dic 2017
One of d2 or log2(M) or ebn0 are not real-valued.
In particular check for the possibility that M is negative, as log of a negative number would give imaginary values.
  14 Commenti
farah arabian
farah arabian il 6 Dic 2017
hey Walter....thanks for your comment body...the problem solved by taking x0=[1 200] and I was wrong for the range because my answer is 137.7241 dB.
Walter Roberson
Walter Roberson il 6 Dic 2017
I saw values over 1200 for sure, so I would recommend you use at least 1500 as the upper bound.

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by