ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:598.54KB ,
资源ID:9846962      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9846962.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Matlab动画模拟太阳系行星运动doc.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Matlab动画模拟太阳系行星运动doc.docx

1、Matlab动画模拟太阳系行星运动docMatlab动画模拟太阳系行星运动figure(name,星系演示);%设置标题名字pausetime=.02;%设置暂停时间set(gca,xlim,-50 50,ylim,-50 30,zlim,-50 50);set(gcf,doublebuffer,on) %消除抖动xlabel(x轴),ylabel(y轴),zlabel(z轴);axis equal;grid on;view(3 5 2);hold ona=8.5 12.5 20 30 50 60 80 100 90;b=8 12 18 26 45 55 70 90 30;omga=4 1.2

2、5 1 0.5 0.1 0.05 0.25 0.125 1;r=0.35 0.8 0.8 0.5 3 2.5 1.5 1.5 0.35;%长轴,短轴,角速度,球体半径c=sqrt(a.2-b.2);h=pi/18;h1=pi/10;f=pi/9;g=pi/8;aby=h h 0;h1 h 0;h h 0;h h 0;h h 0;h h 0;h g 0;h h h;g 0 g;%每个轨道平面倾斜角度,偏移设置 %colo=y,m,b,m,r,c,b,b;X,Y,Z=sphere(40); surf(5*X,5*Y,5*Z);colormap(autumn) %设置太阳light (positio

3、n,1 0 2,style,infinite)lighting phongmaterial shiny t=0:0.01*pi:50*pi;t;num=length(a); for n=1:numx(:,n)=a(n)*cos(omga(n)*t)+c(n);y(:,n)=b(n)*sin(omga(n)*t);z(:,n)=0*t; %计算未经轨道平面角度倾斜的轨道位置xuanz(:,:)=1 0 0;0 cos(aby(n,1) -sin(aby(n,1);0 sin(aby(n,1) cos(aby(n,1)*cos(aby(n,2) 0 sin(aby(n,2);0 1 0;-sin(

4、aby(n,2) 0 cos(aby(n,2)*cos(aby(n,3) -sin(aby(n,3) 0;sin(aby(n,3) cos(aby(n,3) 0;0 0 1; %每个轨道平面倾斜计算xyz(:,:)=x(:,n) y(:,n) z(:,n)*xuanz(:,:);x(:,n)=xyz(:,1);y(:,n)=xyz(:,2);z(:,n)=xyz(:,3); %计算轨道平面倾斜后的轨道位置p(n)=surf(r(n)*X+x(1,n),r(n)*Y+y(1,n),r(n)*Z+z(1,n);shading interp %画出每个行星plot3(x(:,n),y(:,n),z(

5、:,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);%设置所有行星的颜色for m=1:5000 %旋转计算 for n=1:length(a) set(p(n),xdata,r(n)*X+x(m,n),ydata,

6、r(n)*Y+y(m,n),zdata,r(n)*Z+z(m,n); %所有行星的即时位置设置 endpause(pausetime); %暂停一会drawnowend下面是更加复杂的动画模拟figure(name,星系演示);%设置标题名字pausetime=.01;%设置暂停时间set(gca,xlim,-50 50,ylim,-50 30,zlim,-50 50);set(gcf,doublebuffer,on) %消除抖动xlabel(x轴),ylabel(y轴),zlabel(z轴);axis equal;grid on;view(3 5 2);hold ona=8.5 12.5 2

7、0 30 50 60 80 100 90 4 4.5 4.9 5 1.5;%长轴b=8 12 18 26 45 55 70 90 30 4 4.5 4.9 5 1.5;%短轴 前八个为对应行星,第九个为彗星,后面为卫星omga=4 1.25 1 0.5 0.1 0.05 0.25 0.125 0.4 4 3.9 3.5 3 6;%角速度r=0.35 0.8 0.8 0.5 3 2.5 1.5 1.5 0.5 0.35 0.36 0.5 0.4 0.35;%球体半径c=sqrt(a.2-b.2);h=pi/18;h1=pi/10;f=pi/9;g=pi/8;g1=pi/6;aby=h h 0;h

8、1 h 0;h h 0;h h 0;h h 0;h h 0;h g 0;h h h;g 0 g;0 0 0;g1 h 0;0 f 0;0 0 0;0 g1 0;%每个轨道平面偏移设置runu=35:0.5:40;theta=(0:0.05*pi:2*pi);runa=2.8:0.4:5.6;xx=cos(theta)*runu+20;yy=0.9*sin(theta)*runu;zz=-0.17*xx-0.17*yy;plot3(xx,yy,zz,:k); %小行带设置hx=cos(theta)*runa;hy=sin(theta)*runa;hz=-0.1*hx-0.2*hy;%colo=y

9、,m,b,m,r,c,b,b;X,Y,Z=sphere(40); surf(5*X,5*Y,5*Z);colormap(autumn) %设置light (position,1 0 2,style,infinite)lighting phongmaterial shiny t=0:0.01*pi:50*pi;t;num=length(a); for n=1:numx(:,n)=a(n)*cos(omga(n)*t)+c(n);y(:,n)=b(n)*sin(omga(n)*t);z(:,n)=0*t;xuanz(:,:)=1 0 0;0 cos(aby(n,1) -sin(aby(n,1);0

10、 sin(aby(n,1) cos(aby(n,1)*cos(aby(n,2) 0 sin(aby(n,2);0 1 0;-sin(aby(n,2) 0 cos(aby(n,2)*cos(aby(n,3) -sin(aby(n,3) 0;sin(aby(n,3) cos(aby(n,3) 0;0 0 1;xyz(:,:)=x(:,n) y(:,n) z(:,n)*xuanz(:,:);x(:,n)=xyz(:,1);y(:,n)=xyz(:,2);z(:,n)=xyz(:,3);if n=9p(n)=surf(r(n)*X+x(1,n),r(n)*Y+y(1,n),r(n)*Z+z(1,n);

11、shading interpplot3(x(:,n),y(:,n),z(:,n),-k);%画出所有轨迹线else if n=13 p(n)=surf(r(n)*X+x(1,n)+x(1,5),r(n)*Y+y(1,n)+y(1,5),r(n)*Z+z(1,n)+z(1,5);shading interp pmuw(n-9)=plot3(x(:,n)+x(1,5),y(:,n)+y(1,5),z(:,n)+z(1,5),-k);%木卫1,2,3,4轨道初位置 else p(n)=surf(r(n)*X+x(1,n)+x(1,3),r(n)*Y+y(1,n)+y(1,3),r(n)*Z+z(1,

12、n)+z(1,3);shading interp pmuw(n-9)=plot3(x(:,n)+x(1,3),y(:,n)+y(1,3),z(:,n)+z(1,3),-k);%月球轨道设置 endend end for n=1:length(runa) ph(n)=plot3(hx(:,n)+x(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

13、);set(p(6),facecolor,c);set(p(7),facecolor,b);set(p(8),facecolor,b);set(p(9),facecolor,r);for n=10:13 set(p(n),facecolor,b);endset(p(14),facecolor,k); for m=1:5000 for n=1:num if n=9 set(p(n),xdata,r(n)*X+x(m,n),ydata,r(n)*Y+y(m,n),zdata,r(n)*Z+z(m,n);%所有的即时位置 else if n=13 set(p(n),xdata,r(n)*X+x(m,

14、n)+x(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),xdata,x(:,n)+x(m,5),ydata,y(:,n)+y(m,5),zdata,z(:,n)+z(m,5); else set(p(n),xdata,r(n)*X+x(m,n)+x(m,3),ydata,r(n)*Y+y(m,n)+y(m,3),zdata,r(n)*Z+z(m,n)+z(m,3); set(pmuw(n-9),xdata,x(:,n)+x(m,3),ydata,y(:,n)+y(m,3),zdata,z(:,n)+z(m,3); end end end for n=1:length(runa) set(ph(n),xdata,hx(:,n)+x(m,6),ydata,hy(:,n)+y(m,6),zdata,hz(:,n)+z(m,6);%光环即时位置 endpause(pausetime); %暂停一会drawnowend

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1