Slow simulation when using asind

2 次查看(过去 30 天)
Eleni.T
Eleni.T 2020-6-11
评论: Eleni.T 2020-6-11
hello!
I am trying t model a sun position algorithm in simulink and i used the embedded matlab function. My simulation time is 10*3600s. The function includes:
function [altitude, azimuth]= fcn(N, SL, LL, L, LST)
B=(N-81)*360/364;
ET=9.87*sind(2*B)-7.53*cosd(B)-1.5*sind(B);
AST=LST*60+ET+4*(SL-LL);
h=(AST/60-12)*15;
delta=(23.45*sind(360/365*(284+N)));
altitude=asind(sind(L)*sind(delta)+cosd(L)*cosd(delta)*cosd(h));
azimuth=asind(cosd(delta)*sind(h)/cosd(altitude));
However, when i use the 'asind' instead of 'asin' for the 'azimuth=asind(cosd(delta)*sind(h)/cosd(altitude))' equation, the simulation becomes extremely slow and i never get an answer. When i use asin I get an answer very quickly, though it is not correct since it is in radians instead of degrees. Does anyone know any potential reason for this extremely slow running?
Thank you
  2 个评论
darova
darova 2020-6-11
you can convert radians to degree manually
a2 = a1*180/pi; % convert angle a1 (radius) to degrees
Eleni.T
Eleni.T 2020-6-11
I tried that too but running is still very slow

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Simulink 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by