这里有一个 PSA 算法的实现:
http://www.psa.es/sdg/sunpos.htm
我将此测试代码添加到 sunpos.cpp 以计算 2008 年 8 月 6 日 6:00 慕尼黑的太阳位置。但我得到无用的结果,输出是:
天顶角:71.034037 方位角:86.052150
#include <stdio.h>
main(){
cTime t = {2008, 8, 6, 6.0, 0.0, 0.0};
cLocation l = {11.6, 48.1};
cSunCoordinates s;
sunpos(t, l, &s);
printf("%f %f\n", s.dZenithAngle, s.dAzimuth);
}
有人对这个算法有经验吗?