Azzera filtri
Azzera filtri

for loop of vector

3 visualizzazioni (ultimi 30 giorni)
fima v
fima v il 6 Mag 2020
Commentato: fima v il 6 Mag 2020
Hello, i have a function shown bellow called fun, i want to sample it in a 10.^-6 - 20*10.^-6 interval with 1000 samples as shown bellow.
I have tried to implement it as following with a for loop as shown bellow,but its not iterating over the range where did i go wrong?
Thanks.
c0=2.997*10.^8;
h=6.625*10.^-34;
k=1.38*10.^-23;
n=1;
T=307;
filter=linspace(1,1,1000);
fun=@(lambda)(2*pi.*h.*(c0.^2))./((lambda.^5).*(exp((h.*c0)./(k.*T.*lambda))-1));
for k=linspace(1*10.^-6,20*10.^-6,1000);
plank_vec=fun(k);
end

Risposta accettata

KSSV
KSSV il 6 Mag 2020
You need not to use loop for this:
c0=2.997*10.^8;
h=6.625*10.^-34;
k=1.38*10.^-23;
n=1;
T=307;
filter=linspace(1,1,1000);
fun=@(lambda)(2*pi.*h.*(c0.^2))./((lambda.^5).*(exp((h.*c0)./(k.*T.*lambda))-1));
k=linspace(1*10.^-6,20*10.^-6,1000);
plank_vec=fun(k);
If you want to use loop:
plank_vec = zeros(1,length(k)) ;
for i = 1:length(k) ;
plank_vec(i)=fun(k(i));
end

Più risposte (0)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by