0$房天下问答|请教MATLAB高手,我的程序错哪里了?为什么运行不了$https://m.fang.com/ask/ask_1403899.html$https://static.soufunimg.com/common_m/m_public/201511/images/asksharedefault.png
packc/pages/ask/detail/detail?askid=1403899
-
请教MATLAB高手,我的程序错哪里了?为什么运行不了
%沿直线方向匀速运动的带电导线的电场 me0=8.85*10^(-12); c=3*10^8; v=1.8*10^8; L=1; %杆的长度 r=1; %定义r为电荷线密度 c1=1/sqrt(1-(v/c)^2); t=1; [x,y]=meshgrid(-2:0.2:2); EX=(r/(4*pi*me0*c1))*(1/sqrt(c1^2*(L-x+v*t)^2+y^2)-1/sqrt(c1^2*(x-v*t)^2+y^2)); EY=(r/(4*pi*me0*y))*(c1*(x-v*t)/sqrt(c1^2*(x-v*t)^2+y^2)+c1*(L-x+v*t)/sqrt(c1^2*(L-x+v*t)^2+y^2)); quvier(x,y,EX,EY) 这个程序怎么都运行不出来,请高手们帮我看看吧!帮我修改修改。 其实就是看成画适量z=EX*i+EY*j 在xy坐标系里面的图形。(i,j分别是x,y轴正方向的单位矢量。) 谢谢
更多
共1个回答
-
-
-
天虹帝国
丨Lv 0
这里面x,y是向量,按照题目意思应该是用.*和./运算,这两个运算是针对向量中的每一个元素进行运算,而你原来写的*和/则是向量运算,就造成了矩阵运算中的行列不匹配的问题。修改如下:me0=8.85*10^(-12); c=3*10^8; v=1.8*10^8; L=1; %杆的长度 r=1; %定义r为电荷线密度 c1=1/sqrt(1-(v/c)^2); t=1; [x,y]=meshgrid(-2:0.2:2); EX=(r/(4*pi*me0*c1)).*(1./sqrt(c1^2.*(L-x+v*t)^2.+y^2)-1./sqrt(c1^2.*(x-v*t)^2.+y^2)); EY=(r./(4*pi*me0.*y)).*(c1.*(x-v.*t)./sqrt(c1^2.*(x-v*t)^2+y^2)+c1.*(L-x+v*t)./sqrt(c1^2.*(L-x+v*t).^2+y^2)); quvier(x,y,EX,EY);楼主再试试看吧~
免责声明:问答内容均来源于互联网用户,房天下对其内容不负责任,如有版权或其他问题可以联系房天下进行删除。

关注成功