Find data in specific range

2 views (last 30 days)
Ahmad Rizal
Ahmad Rizal on 31 Dec 2011
Dear all,
I'm quite new in using Matlab. I've wrote a script to determine estimation of solar declination, sd by day number, dn. I would like to know how I can find and fprintf on which dn when -0.2<= sd <= 0.2 with script below. Please help me
fout = fopen('Project_2_Matlab.res','w');
% day number, dn
dn = [1:1:365];
% Solar declination, sd
sd = 23.45*sind(360*(dn+284)/365);
for i=1:1:36
j=i*10;
fprintf(fout,'%3d %3.3f \n',j, sd(j));
end

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 31 Dec 2011
out = dn(sd >= -.2 & sd <= .2);

More Answers (1)

Jose Jeremias Caballero
Jose Jeremias Caballero on 31 Dec 2011
Hi.
clear all
dn = 1:365;
sd = 23.45*sind(360*(dn+284)/365);
fout1 = fopen('Project_2_Matlab.res','w');
fprintf(' i dn(i) sd(i)\n');
for i=1:length(sd)
if sd(i)>=-0.2 && sd(i)<=0.2
fprintf(fout1,'%3d %3d %6.3f\n',i,dn(i),sd(i));
end
end
fclose(fout1);
type Project_2_Matlab.res
EXECUTION.
>> Untitled7
i dn(i) sd(i)
81 81 0.000

Categories

Find more on Solar Power in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!