建立模型计算太阳影子长度和梯度下降法拟合太阳影子数据定位一.摘要本文建立了一个较为理想的几何立体模型来计算某个日期,某个时间,某个纬度的太阳高度角,从而计算太阳照射直杆的影长。并且通过对一系列按时间变化记录的数据以及部分已知参数,利用梯度下降法进行曲线拟合样本数据点,以此求出相应的未知的参数,算出数据记录时所在的可能的地点经纬度和日期。关键词:几何立体模型 拟合曲线 梯度下降法 二.正文1.建立太阳光照射地球,地球上垂直地面杆的影长模型 假设太阳光线完全平行,地球是完全标准的球体,地球公转轨道是标准圆形,且随日期变化匀速运转。1.1 建立太阳光线和地球上某一纬度 β 的上某点 X 切面所形成的太阳高度角模型O 为地球球心。设太阳光线和地球的赤道面形成的角度为∠EOC = α,纬度即∠BOA=β,根据纬度的定义显然 OB 是 β 纬度上 X 点的切面(即 X 点地面)的法向量方向。X 点的经度和太阳垂直照射点所在的经度的夹角即∠AOC 为 Θ(可以由该点的真实时间计算得到,地球每小时自转 15°,Θ=(该点真实时间-12) * 15 )。欲求太阳在 X 点的高度角,相当于求 X 点地面法向量方向 OB 和太阳光线的夹角∠BOE 的余角。假设太阳高度角为 γ,则 sinγ = cos ∠BOE。如图作 AC⊥OC,作 EC 和 BA 垂直于赤道面,BD⊥CE 于 D。设 OA 长为 z,则 OB = z / cosβ,OE=z cosΘ / cosα,BD=AC=z sinΘ,CD=AB=z tanβ,CE=z cosΘ tanα。DE = CE - CD =z cosΘ tanα - z tanβ。BE² = BD² + DE²=(z sinΘ)²+(z cosΘ tanα - z tanβ)²。根据余弦定理可得,经化简可得:cos∠BOE = sinαsinβ + cosαcosβcosΘ。即 sinγ = sinαsinβ + cosαcosβcosΘ用反三角函数即可知太阳高度角 γ。1.2 建立太阳光线和地球赤道面所成角度 α 随日期变化的模型如图,假如不考虑地球自转,则随着公转,太阳直射点将在地球上画出一个圆,这个圆所在的平面即为回归面。设 A 点为夏至日(6月 22 日)的直射点,此时∠AOB=N=23°26′,随着日期推移,直射点移到点 C,则此时∠COD=α 正是我们所要求的太阳光线和地球赤道面所成的角,而∠AOC 则是日期相对 6 月 22 日(公转导致)移动所形成的夹角,所以∠AOC=相对 6 月 22 日天数差距/365 * π(闰年为 366),其中比 6 月 22 日小则天数差距为负值。...