Matlab动画模拟太阳系行星运动_第1页
Matlab动画模拟太阳系行星运动_第2页
Matlab动画模拟太阳系行星运动_第3页
Matlab动画模拟太阳系行星运动_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-.z.Matlab动画模拟太阳系行星运动figure('name','星系演示');%设置标题名字pausetime=.02;%设置暂停时间set(gca,'*lim',[-5050],'ylim',[-5030],'zlim',[-5050]);set(gcf,'doublebuffer','on')%消除抖动*label('*轴'),ylabel('y轴'),zlabel('z轴');a*isequal;gridon;view([352]);holdona=[8.512.5203050608010090];b=[81218264555709030];omga=[41.2510.50.10.050.250.1251];r=[0.350.80.80.532.51.51.50.35];%长轴,短轴,角速度,球体半径c=sqrt(a.^2-b.^2);h=pi/18;h1=pi/10;f=pi/9;g=pi/8;aby=[hh0;h1h0;hh0;hh0;hh0;hh0;hg0;hhh;g0g];%每个轨道平面倾斜角度,偏移设置%colo={'y','m','b','m','r','c','b','b'};[*,Y,Z]=sphere(40);surf(5**,5*Y,5*Z);colormap(autumn)%设置太阳light('position',[102],'style','infinite')lightingphongmaterialshinyt=0:0.01*pi:50*pi;t';num=length(a);forn=1:num*(:,n)=a(n)*cos(omga(n)*t)+c(n);y(:,n)=b(n)*sin(omga(n)*t);z(:,n)=0*t;%计算未经轨道平面角度倾斜的轨道位置*uanz(:,:)=[100;0cos(aby(n,1))-sin(aby(n,1));0sin(aby(n,1))cos(aby(n,1))]*[cos(aby(n,2))0sin(aby(n,2));010;-sin(aby(n,2))0cos(aby(n,2))]*[cos(aby(n,3))-sin(aby(n,3))0;sin(aby(n,3))cos(aby(n,3))0;001];%每个轨道平面倾斜计算*yz(:,:)=[*(:,n)y(:,n)z(:,n)]**uanz(:,:);*(:,n)=*yz(:,1);y(:,n)=*yz(:,2);z(:,n)=*yz(:,3);%计算轨道平面倾斜后的轨道位置p(n)=surf(r(n)**+*(1,n),r(n)*Y+y(1,n),r(n)*Z+z(1,n));shadinginterp%画出每个行星plot3(*(:,n),y(:,n),z(:,n),'-k');%画出所有轨迹线endset(p(1),'facecolor','y');set(p(2),'facecolor','m');set(p(3),'facecolor','b');set(p(4),'facecolor','m');set(p(5),'facecolor','r');set(p(6),'facecolor','c');set(p(7),'facecolor','b');set(p(8),'facecolor','b');set(p(9),'facecolor','r');%设置所有行星的颜色form=1:5000%旋转计算forn=1:length(a)set(p(n),'*data',r(n)**+*(m,n),'ydata',r(n)*Y+y(m,n),'zdata',r(n)*Z+z(m,n));%所有行星的即时位置设置endpause(pausetime);%暂停一会drawnowend下面是更加复杂的动画模拟figure('name','星系演示');%设置标题名字pausetime=.01;%设置暂停时间set(gca,'*lim',[-5050],'ylim',[-5030],'zlim',[-5050]);set(gcf,'doublebuffer','on')%消除抖动*label('*轴'),ylabel('y轴'),zlabel('z轴');a*isequal;gridon;view([352]);holdona=[8.512.520305060801009044.54.951.5];%长轴b=[8121826455570903044.54.951.5];%短轴前八个为对应行星,第九个为彗星,后面为卫星omga=[41.2510.50.10.050.250.1250.443.93.536];%角速度r=[0.350.80.80.532.51.51.50.50.350.360.50.40.35];%球体半径c=sqrt(a.^2-b.^2);h=pi/18;h1=pi/10;f=pi/9;g=pi/8;g1=pi/6;aby=[hh0;h1h0;hh0;hh0;hh0;hh0;hg0;hhh;g0g;000;g1h0;0f0;000;0g10];%每个轨道平面偏移设置runu=35:0.5:40;theta=(0:0.05*pi:2*pi)';runa=2.8:0.4:5.6;**=cos(theta)*runu+20;yy=0.9*sin(theta)*runu;zz=-0.17***-0.17*yy;plot3(**,yy,zz,':k');%小行带设置h*=cos(theta)*runa;hy=sin(theta)*runa;hz=-0.1*h*-0.2*hy;%colo={'y','m','b','m','r','c','b','b'};[*,Y,Z]=sphere(40);surf(5**,5*Y,5*Z);colormap(autumn)%设置light('position',[102],'style','infinite')lightingphongmaterialshinyt=0:0.01*pi:50*pi;t';num=length(a);forn=1:num*(:,n)=a(n)*cos(omga(n)*t)+c(n);y(:,n)=b(n)*sin(omga(n)*t);z(:,n)=0*t;*uanz(:,:)=[100;0cos(aby(n,1))-sin(aby(n,1));0sin(aby(n,1))cos(aby(n,1))]*[cos(aby(n,2))0sin(aby(n,2));010;-sin(aby(n,2))0cos(aby(n,2))]*[cos(aby(n,3))-sin(aby(n,3))0;sin(aby(n,3))cos(aby(n,3))0;001];*yz(:,:)=[*(:,n)y(:,n)z(:,n)]**uanz(:,:);*(:,n)=*yz(:,1);y(:,n)=*yz(:,2);z(:,n)=*yz(:,3);ifn<=9p(n)=surf(r(n)**+*(1,n),r(n)*Y+y(1,n),r(n)*Z+z(1,n));shadinginterpplot3(*(:,n),y(:,n),z(:,n),'-k');%画出所有轨迹线elseifn<=13p(n)=surf(r(n)**+*(1,n)+*(1,5),r(n)*Y+y(1,n)+y(1,5),r(n)*Z+z(1,n)+z(1,5));shadinginterppmuw(n-9)=plot3(*(:,n)+*(1,5),y(:,n)+y(1,5),z(:,n)+z(1,5),'-k');%木卫1,2,3,4轨道初位置elsep(n)=surf(r(n)**+*(1,n)+*(1,3),r(n)*Y+y(1,n)+y(1,3),r(n)*Z+z(1,n)+z(1,3));shadinginterppmuw(n-9)=plot3(*(:,n)+*(1,3),y(:,n)+y(1,3),z(:,n)+z(1,3),'-k');%月球轨道设置endendendforn=1:length(runa)ph(n)=plot3(h*(:,n)+*(1,6),hy(:,n)+y(1,6),hz(:,n)+z(1,6),'-c');endset(p(1),'facecolor','y');set(p(2),'facecolor','m');set(p(3),'facecolor','b');set(p(4),'facecolor','m');set(p(5),'facecolor','r');set(p(6),'facecolor','c');set(p(7),'facecolor','b');set(p(8),'facecolor','b');set(p(9),'facecolor','r');forn=10:13set(p(n),'facecolor','b');endset(p(14),'facecolor','k');form=1:5000forn=1:numifn<=9set(p(n),'*data',r(n)**+*(m,n),'ydata',r(n)*Y+y(m,n),'zdata',r(n)*Z+z(m,n));%所有的即时位置elseifn<=13set(p(n),'*data',r(n)**+*(m,n)+*(m,5),'ydata',r(n)*Y+y(m,n)+y(m,5),'zdata',r(n)*Z+z(m,n)+z(m,5));set(pmuw(n-9),'*data',*(:,n)+*(m,5),'ydata',y(:,n)+y(m,5),'zdata',z(:,n)+z(m,5));elseset(p(n),'*data',r(n)**+*(m,n)+*(m,3),'ydata',r(n)*Y+y(m,n)+y(m,3),'zdata',r(n)*Z+z(m,n)+z(m,3));

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论