课程结业论文课程名称:计算物理基础院系专业:物理学系物理学学号:201211141928姓名:马宏志用MATLAB模拟近地行星的视运动作者:马宏志(201211141928)单位:北京师范大学物理系【摘要】地球和其他行星围绕太阳近似做圆周运动,在地球上观察行星运行的轨迹,行星的轨迹有什么特点?本文用MATLAB模拟的方法表现行星相对太阳的的视运动,做出在地球上观察行星视运动的动画,发现行星的视运动轨迹是有规律的螺旋线,行星视运动具有周期性。行星大部分时间在天球上自西向东运动,与太阳在天球上周年视运动方向一致,称为顺行,小部分时间自东向西运动,称为逆行。由于不同行星距离太阳的远近和运行速度的不同,它们的视运动曲线相差较大。【关键词】近地行星、视运动、MATLAB模拟【引言】人类很早就发现行星在天空中的视运动轨迹是螺旋曲线。“地心说”认为行星一方面以“均轮”---圆形轨道,绕地球转动,又在此基础上,以此时刻在“均轮”上所处的位置为中心做小半径转动,叫做“本轮”,行星的运动轨迹是二者的叠加,所以是螺旋线。“日心说”认为地球和其他行星均绕着太阳做近似的圆周运动,所以行星的视运动轨迹是由于行星、地球和太阳之间的相对运动导致的。行星的视运动是地球和行星绕太阳公转而出现的表面现象,哥白尼的日心体系揭示了行星视运动的实质,行星的视运动为哥白尼等人的“日心说”理论提供了有力的证据。为了对行星的运动做出更加直观详尽的描述,本文通过运用物理学和天文学的相应理论,并结合作者所学的MATLAB的相关知识,对行星的运动进行了详细的数学表达和客观的图像描述,简洁而深刻。希望能为读者提供一条认识行星运行规律的捷径。【理论分析】如A图所示,设行星P绕太阳S运动的半径为r、周期为T,其角速度为ω=2π/T(1)行星绕太阳运行的向心力来源于的万有引力,太阳的质量为MS=1.99×1030kg,设行星的质量为m,则得2S2GMmmrr其中G=6.67×10-11N•m2/kg2是万有引力常量,因此3S224πGMrkT(2)其中k为太阳常数。可见:行星轨道半径的三次方与周期的平方成正比。这是开普勒第三定律的特殊情况。行星运动的周期为3/Trk(3)角速度由(1)式决定。地球E绕太阳S运行的半径为rE=1.5×1011m,其周期为2EE/Trk(4)以地球为中心,这也是太阳绕地球的运行的周期,角速度用ωE表示。如B图所示,以地球为中心,太阳绕着地球转,行星绕着太阳转,角速度为ω。假设开始时地球、太阳和和行星在一条直线上,经过时间t,太阳在地球坐标系中的坐标为x'=rEcosωEt,y'=rEsinωEt(5)行星在太阳坐标系中的坐标为x=rcosωt,y=rsinωt(6)由此可确定行星在地球坐标系中的坐标xP=x'+x,yP=y'+y(7)沿着EP方向,行星投影在穹顶上,地球上的人观察的就是行星在穹顶上的轨迹。行星的视角为pparctanarctanyyyxxx(8)穹顶本意是无穷远处的天顶,对于行星来说,它到地球的距离永远不可能大于太阳到地球的距离加上行星到太阳的距离,所以不妨取R=rE+r为穹顶半径,行星在穹顶上投影的坐标为X=Rcosθ=(rE+r)cosθ,Y=Rsinθ=(rE+r)sinθ(9)【计算方法】取地球到太阳的距离为一个天文单位,则太阳在地球坐标系中的坐标可表示为A图rSPB图rEEPxSyOx'y'O'SωtωEtθPR(X,Y)*EEcosxxtr,*EEsinyytr(5*)行星在太阳坐标系中的坐标可表示为**Ecosxxrtr,**Esinyyrtr(6*)其中,r*=r/rE。行星在地球坐标系中的坐标可表示为xP*=x'*+x*,yP*=y'*+y*(7*)行星的视角可表示为****arctanyyxx(8*)由于行星在四个象限中运行,因此要用第二个反正切函数求角度atan2。行星在穹顶投影的坐标可表示为X*=(1+r*)cosθ,Y*=(1+r*)sinθ(9*)【程序】%行星相对地球运行的动画clear%清除变量i=input('Pleasechooseaplanet:1(水星)2(金星)3(火星)4(木星)5(土星):');%键盘输入行星编号ifi1|i5return,end%非编号则返回r=[0.579,1.0810,2.28,7.78,14.294]*1e11;%行星到太阳的距离向量r=r(i);%取半径planet={'水星','金星','火星','木星','土星'};%行星名称元胞MS=1.99e30;%太阳质量G=6.67e-11;%引力常数k=G*MS/4/pi^2;%太阳常数T=sqrt(r^3/k);%行星绕太阳的周期w=2*pi/T;%行星绕太阳的角速度rE=1.496e11;%地球到太阳的距离TE=sqrt(rE^3/k);%地球绕太阳周期wE=2*pi/TE;%地球绕太阳的角速度(太阳绕地球的角速度)r=r/rE;%距离化为天文单位R=1+r;%穹顶半径th=linspace(0,2*pi);%角度向量fg=figure;%创建图形窗口并取句柄plot(0,0,'g.','markersize',15)%画地球plot(cos(th),sin(th),'r--')%画太阳轨迹holdon%保持图像plot(R*cos(th),R*sin(th),'k--')%画天穹s=plot(1,0,'r.','markersize',20,'erasemode','xor');%画太阳并取句柄p=plot(R,0,'*','markersize',16,'erasemode','xor');%画行星并取句柄xs=r*cos(th);ys=r*sin(th);%行星绕太阳圆的坐标ps=plot(1+xs,ys,'--','markersize',2,'erasemode','xor');%画行星绕太阳的轨迹并取句柄x0=R;y0=0;%行星初始坐标pl=plot([0,x0],[0,0],'-m.','erasemode','xor');%画地球和天穹的连线并取句柄axisequal%坐标刻度相等gridon%加网格fs=16;%字体大小xlabel('\itx/r\rm_E','fontsize',fs)%加横坐标标签ylabel('\ity/r\rm_E','fontsize',fs)%加纵坐标标签title('在地球上观察行星绕地球太阳的运行的轨迹','fontsize',fs)%加标题text(0,0,'地球','fontsize',fs)%显示地球文本text(-1-r,(1+r)/2,'穹顶','fontsize',fs)%显示穹顶文本stext=text(1,0,'太阳','fontsize',fs);%显示太阳文本并取句柄ptext=text(x0,0,planet{i},'fontsize',fs);%显示行星文本并取句柄text(-r-1,0,['\itr/r\rm_E='num2str(r)],'fontsize',fs)%显示行星到太阳的距离pause%暂停t=0;%时间清零dt=TE/200;%时间间隔ifi2dt=dt*2;end%外行星的时间间隔加倍whileget(fg,'CurrentCharacter')~=char(27)%不按ESC键循环char(27)是esc键的sck码%while%Ifget(gcf,'CurrentCharacter')==char(27),break,end(6.5版本)%按ESC键循环t=t+dt;%下一时刻xE=cos(wE*t);yE=sin(wE*t);%太阳坐标x=r*cos(w*t);y=r*sin(w*t);%行星相对太阳的坐标set(s,'xdata',xE,'ydata',yE);%设置太阳的位置set(p,'xdata',xE+x,'ydata',yE+y);%设置行星的位置set(ps,'xdata',xE+xs,'ydata',yE+ys);%设置行星绕太阳的轨迹th=atan2(y+yE,x+xE);%行星的角度X=R*cos(th);Y=R*sin(th);%行星在穹顶上投影的坐标set(pl,'xdata',[0,X],'ydata',[0,Y])%画地球与行星在穹顶上的投影的连线set(stext,'position',[xE,yE]);%设置太阳文本set(ptext,'position',[xE+x,yE+y]);%设置行星文本plot([x0,xE+x],[y0,yE+y])%画行星绕地球的轨迹x0=xE+x;y0=yE+y;%保留坐标drawnow%刷新屏幕end%结束循环【图像】abcde甲乙图a、b、c、d、e分别是水星、金星、火星、木星和土星视运动的轨迹图,图甲和图乙分别是地内行星(水星、金星、火星)和地外行星(木星、土星等行星)相对地球和太阳位置变化图像。地内行星,即地球轨道以内的水星和金星,由于它们运行速度比地球大,所以在地球上看到他们总是在太阳附近来回摆动,角距离有一定范围,水星的角距离一般为28度,金星的为45~48度之间;地外行星,即地球轨道以外的火星、木星、土星等行星,由于他们的运行速度小于地球,所以它们和太阳的角距离不受任何限制。【理论解释】(1)地内行星相对恒星的视运动地内行星离太阳比地球离太阳近,它们的轨道比地球的轨道小。按照开普勒定律,行星运动的平均角速度ω=360°/T,所以地内行星公转的角速度比地球的公转角速度大,在地内行星绕太阳公转一周的时间内,地球只走过一段弧。从地球上看去,由于地内行星和地球都在绕太阳公转,并且轨道面有一定的夹角,地内行星在天球上恒星中间就走了一个打圈的路线,出现了顺行、留、逆行、留、又顺行的视运动现象,而且,地内行星逆行发生在下合前后。(2)地外行星相对恒星的视运动地外行星比地球离太阳更远,它们的轨道在地球轨道的外面按照开普勒定律,地外行星的公转周期比地球长,当地球在轨道上公转一周时,地外行星只在轨道上走一段弧。由于地球比地外行星公转周期短,地球轨道速度比地外行星轨道速度大,所以从地球上看去在冲前后地外行星逆行,顺行与逆行之间转变阶段称为留,这样地外行星的视运动就出现了顺行、留、逆行、留、又顺行的有规律的现象。【结论】行星相对恒星的视运动特点有:(1)行星有时向着赤经增加方向运动,与太阳周年视运动方向一致,叫做顺行,而有时又向着赤经减少的方向运动,称为逆行。(2)顺行的时间长,而逆行的时间短。(3)由顺行转为逆行或由逆行转为顺行,要经过留,行星在视运动路线上的运动不是均匀的,在留的前后移动较慢,似乎是相对静止不动的。(4)行星视运动的不同特点的出现都具有周期性,各行星的周期长短不等,所以视运动轨迹也各不相同。【参考文献】[1]《探索宇宙奥秘》李良主编河南科学技术出版社2002-10-1[2]《亲近宇宙》中国科学院紫金山天文台主编中央广播电视大学出版社2004-2[3]《简明天文学教程》第二版余明主编科学出版社2011-1-17[4]《计算物理基础》彭芳麟编高等教育出版社2010-1