# Sun_direction **Repository Path**: cryingn/sun_direction ## Basic Information - **Project Name**: Sun_direction - **Description**: 基于定日镜计算太阳高度角与太阳方位角的python库 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-09-15 - **Last Updated**: 2023-10-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Sun_direction 基于定日镜计算太阳高度角与太阳方位角的python库 ## 使用案例 2023年数学建模A组调用脚本演算2023年各月21日9:00, 10:30, 12:00, 13:30, 15:00五个时间点北纬纬度为39.4°时的太阳位置: ```python import Sun_direction as sd # 距离春分的时间段 days = [-59,-28,31,61,92,122,153,184,214,245,275] # 当地纬度 phi = 39.4 # 当地时间 STs = [9,10.5,12,13.5,15] sd.print_message = False for day in days: for ST in STs: datas = sd.太阳高度角(day, phi, ST) print(round(datas[0],3),round(datas[1],3)) ``` ## 函数与变量 | 关键字 | 类型 | 用法 | 变量 | | :----------------------------------------: | :--- | :------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------- | | print_message | bool | 默认打开, 进行测试时会输出各个变量的值以验证是否合理, 当完成调试后可使用`sd.print_message = False`关闭参数打印 | | | 太阳高度角(Day, phi, direction_time) | def | 太阳高度角(Day, phi, direction_time)[0]为sin值, 太阳高度角(Day, phi, direction_time)[1]为cos值. | Day-为春分为第0天计算天数; phi-为当地纬度(北纬为正); ST(direction_time)-当地时间 | | 太阳方位角(Day, phi, direction_time) | def | 太阳方位角(Day, phi, direction_time)[0]为sin值, 太阳方位角(Day, phi, direction_time)[1]为cos值. | Day-为春分为第0天计算天数; phi-为当地纬度(北纬为正); ST(direction_time)-当地时间 | | transform_tri(old_data) | def | 将数据的sin(cos)值转换为cos(sin)值 | 三角函数值(-1 <= old_data <= 1) | | sun_declination_angle(Day) | def | 得到太阳赤纬角的sin值 | Day-距离春分的天数 | | sun_time_angle(direction_time) | def | 计算得到太阳时角(°) | ST(direction_time)-当地时间 | | direction_angle(sin_delta, sin_alpha, phi) | def | 太阳方位角, 但是需要自行计算, 同样[0]为sin值, [1]为cos值 | | | high_angle(sin_delta, phi, omiga) | def | 太阳高度角, 但是需要自行计算, 同样[0]为sin值, [1]为cos值 | |