How to create matrix using for loop and if statment

2 views (last 30 days)
How Can I create for loop to fix "Matrix dimensions must agree." problem by picking a number from range 1 to 24 and simulate it.
clc
clear all
number_of_the_yearly_day = 1:1:365; %n
T=1:1:24;
declination=23.45.*sin((2.*pi.*(number_of_the_yearly_day-80))./(365));%?
latitude=31.963158; %?
Zenith_angle=latitude-declination; %??
tilt_angle=Zenith_angle;%?
altitude=1-Zenith_angle; %?
w=15.*(12-T);
Y=acosd(sin(altitude).*sin(latitude)-sin(declination)./(cos(altitude).*cos(latitude)));
X=asind(sin(declination).*sin(latitude)+cos(latitude).*cos(declination).*cos(w));
plot (X,Y)
when I simulate this it gives me "Matrix dimensions must agree.".

Answers (1)

KSSV
KSSV on 3 Aug 2021
number_of_the_yearly_day = 1:1:365; %n
T=1:1:24;
declination=23.45.*sin((2.*pi.*(number_of_the_yearly_day-80))./(365));%?
latitude=31.963158; %?
Zenith_angle=latitude-declination; %??
tilt_angle=Zenith_angle;%?
altitude=1-Zenith_angle; %?
w=15.*(12-T);
[declination,w] = meshgrid(declination,w) ;
Y=acosd(sin(altitude).*sin(latitude)-sin(declination)./(cos(altitude).*cos(latitude)));
X=asind(sin(declination).*sin(latitude)+cos(latitude).*cos(declination).*cos(w));
plot(X',Y')

Categories

Find more on Loops and Conditional Statements 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!