早教吧 育儿知识 作业答案 考试题库 百科 知识分享

matlab模拟带电粒子在均匀电磁场中的运动functionydot=ddlzfun(t,y,flag,q,m,B,E)%q,m,B,E为参量ydot=[y(2);q*B*y(4)/m;y(4);q*E/m-q*B*y(2)/m;y(6);0];q=1.6e-2;m=0.02;%为粒子的带电量和质量赋值B=2;E=1;%为电磁场

题目详情
matlab模拟带电粒子在均匀电磁场中的运动function ydot=ddlzfun(t,y,flag,q,m,B,E) %q,m,B,E为参量 ydot=[ y(2); q*B*y(4)/m; y(4); q*E/m-q*B*y(2)/m; y(6); 0]; q=1.6e-2; m=0.02; %为粒子的带电量和质量赋值 B=2; E=1; %为电磁场的磁感强度和电场强度赋值 [t,y]=ode23('ddlzfun',[0:0.1:20],... [0,0.01,0,6,0,0.01],[ ],q,m,B,E); %用 ode23解微分方程组,时间设为20s %指定初始条件,传递相关参数 plot3(y(:,1),y(:,3),y(:,5),'linewidth',2); %绘出三维空间内粒子运动的轨迹,线宽2磅 grid on %开启坐标网格线 xlabel('x'); ylabel('y'); zlabel('z'); 请高手指导一下,我想利用这个程序模拟带电粒子在均匀电磁场中的运动。但我用matlab6.5,做不出来。不知道该怎么改进……请大家帮忙,谢谢
▼优质解答
答案和解析
function haha global q m B E [t,y]=ode23(@ddlzfun,[0:0.1:20],... [0,0.01,0,6,0,0.01],[ ],q,m,B,E); %用 ode23解微分方程组,时间设为20s %指定初始条件,传递相关参数 plot3(y(:,1),y(:,3),y(:,5),'linewidth',2); %绘出三维空间内粒子运动的轨迹,线宽2磅 grid on %开启坐标网格线 xlabel('x'); ylabel('y'); zlabel('z'); function ydot=ddlzfun(t,y,q,m,B,E) %q,m,B,E为参量 global q m B E q=1.6e-2; m=0.02; %为粒子的带电量和质量赋值 B=2; E=1; %为电磁场的磁感强度和电场强度赋值 ydot=[ y(2); q*B*y(4)/m; y(4); q*E/m-q*B*y(2)/m; y(6); 0]; 画出一个螺旋线啊!