首页 > 编程知识 正文

如何求太阳高度角,matlab坐标方位角计算代码

时间:2023-05-05 20:50:42 阅读:251696 作者:1510

使用matlab计算太阳高度角 输入的变量为

year(年份)month(月份)day(日期)time(24小时制时间)latitude(纬度)

输出

hangle(即太阳高度角)

代码 function[hangle]=sunshade1(year,month,day,time,latitude)monthdays=[31 28 31 30 31 30 31 31 30 31 30 31];latitude=deg2rad(latitude)for i=1:month-1 day=day+monthdays(i);%积日endN0=79.6764+0.2422*(year-1985)-floor((year-1985)/4);%floor是向下取整函数sunangle=2*pi*(day-N0)/365.2422;//日角degangle=0.3723+23.2567*sin(sunangle)+0.1149*sin(2*sunangle)-0.1712*sin(3*sunangle)-0.758*cos(sunangle)+0.3656*cos(2*sunangle)+0.0201*cos(3*sunangle)//太阳赤纬degangle=deg2rad(degangle);//角度转弧度timeangle=deg2rad((time-12)*15);//时角hangle=asin(sin(latitude)*sin(degangle)+cos(latitude)*cos(degangle)*cos(timeangle));hangle=rad2deg(hangle)end

参考太阳高度角定义

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。