function handles
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hi,
I want to create a function that calculates a equation, say for example
function [n] = ns(dBcalc,wave, zL)
n = @(dBcalc,wave,zL) log(10^(dBcalc/10))/((4*pi*zL)/wave);
end
but when I try to call this by ns(14,765e-9,e-2) it does not work. I get error saying I get to many output arguments or calling the function it simply gives back the function (i.e. it prints the function n ) not the value.
I tried to also removed the @(dBcalc,wave,zL) but still I get errors. I tried some basic equation and that works but not this. Not sure where the mistake comes from?
4 Commenti
Risposta accettata
Oleg Komarov
il 30 Mag 2012
In a script define:
ns = @(dBcalc,wave,zL) log(10^(dBcalc/10))/((4*pi*zL)/wave)
ns(14,765e-9,1e-2)
Note the 1e-2.
Alternatively:
function n = ns(dBcalc,wave, zL)
n = log(10^(dBcalc/10))/((4*pi*zL)/wave);
end
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Get Started with MATLAB in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!