Why do i get this error when i run the code?

3 views (last 30 days)
prem kumar
prem kumar on 29 Jan 2022
Commented: prem kumar on 29 Jan 2022
Hello there friends i tried to run this code in matlab r2021b
dn=1:1:365;
x=(360/365*(dn+284));
sdelta=23.45*(sind(x)*pi/180);
L=(0:20:80);
k=(0:0.5:24);
lamda=15*(12-k);
solar_altitude=asind(sind(sdelta)*sind(L)+cosd(sdelta)*cosd(L)*cosd(lamda));
but the system shows this error ...can anybody help me out.Thank you.
Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches
the number of rows in the second matrix. To perform elementwise multiplication, use '.*'.
Error in p2 (line 43)
solar_altitude=asind(sind(sdelta)*sind(L)+cosd(sdelta)*cosd(L)*cosd(lamda));

Accepted Answer

Walter Roberson
Walter Roberson on 29 Jan 2022
dn=1:1:365;
x=(360/365*(dn+284));
sdelta=23.45*(sind(x)*pi/180);
L=(0:20:80);
k=(0:0.5:24);
lamda=15*(12-k);
whos
Name Size Bytes Class Attributes L 1x5 40 double dn 1x365 2920 double k 1x49 392 double lamda 1x49 392 double sdelta 1x365 2920 double x 1x365 2920 double
solar_altitude=asind(sind(sdelta)*sind(L)+cosd(sdelta)*cosd(L)*cosd(lamda));
Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the number of rows in the second matrix. To perform elementwise multiplication, use '.*'.
sdeleta is 1 x 365 so sind(sdelta) is also 1 x 365
L is 1 x 5 so sind(L) is 1 x 5
(1 x 365) * (1 x 5) is an invalid operation.
It looks to me as if you want a result that is per-latitude and per-day -- so a 2D result. For long term graphing purposes it is probably easiest to have connect all of the days for a particular latitude, so you probably want one line per latitude (ignoring the other factors for now), so you should arrange for sdelta to be a column.
  5 Comments
prem kumar
prem kumar on 29 Jan 2022
but i looked at solar radiation conference book this is the same equation he used...but is it possible if to make like only for the hundredth day dn=100 instead of dn=1:200?

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!