首页 > 解决方案 > 考虑到延迟电位,如何对点源添加随机相位产生的传播波进行动画处理?

问题描述

如何演示考虑延迟电位和相位随时间变化的点源产生的传播波?我成功地创建了具有延迟电位的波,但是如果我改变相位,平面上的整个波都会改变。如何使相位变化只从点源传播,而不改变已经传播出去的波?这就是我要去的地方

v=1;
lambda = 1;
k = 2*pi/lambda;
w = 2*pi*v/lambda;
x=linspace(-10,10,500);
y=x;
[X,Y]=meshgrid(x,y);
t_lens=100;   
t = linspace(0,2*pi,t_lens);   % time
an=0+(2*pi)*rand(1,t_lens);   % create random phase
E20=0;
for a=1:t_lens
    theta=an(1,a);
    r=sqrt(X.^2+Y.^2);
    u0=1./(1+exp(-2.*(10e4).*(t(a)-r./v)));  % step function u(t-r/v)
    
    E=u0.*exp(1i*(k.*r-w.*t(a)+theta));  % wave propagate from origin
    rE=real(E);
    pcolor(X,Y,rE); axis equal;shading flat;
    caxis([-5,5]);
    drawnow;
end

谁能帮我?谢谢。

标签: matlab

解决方案


推荐阅读