24小时热门版块排行榜    

查看: 333  |  回复: 0

zdzhang

木虫 (正式写手)

[求助] 我用这种方法解了这个方程,但是算出来的lambta和预想得到的差别有点大

clear;
clc;
epsl_met=-18.36+0.46i;
%mu_met=1;
%epsl_air=1;%8.854187817e-12;
%mu_air=1;%4*pi*10^(-7)
r=60*10^(-9);

wavelength=632.8*10^(-9);
k_0=2*pi/wavelength;
k_1=k_0;
N=1000;
k_z(1)=(0.9+0.0001i)*k_0; % try value
for j=1:N
    u=r*sqrt(epsl_met*k_0^2-k_z(j)^2);%we use '+'now
    v=-r*sqrt(k_0^2-k_z(j)^2);%we use '+'now
    temp=((1/epsl_met)*(besselk(1,v)*besselj(0,u))/(besselk(0,v)*besselj(1,u)))^2;
    k_z(j+1)=sqrt(((temp*epsl_met-1)*k_0^2)/(temp-1));
    re_k_z(j+1)=real(k_z(j+1));
    im_k_z(j+1)=imag(k_z(j+1));
end
    %a_met=1-i;
    %a_air=a_met*(besselk(0,r*sqrt(epsl_met*k_0^2-k_z(j+1)^2))/besselj(0,r*sqrt(epsl_met*k_0^2-k_z(j+1)^2)))
    lmbta=2*pi/real(k_z(j+1))
    plot(re_k_z)
哪位能帮我看一下我用这种方法解这样的方程是否可行?有没有更好的解这个方程的方法呢?我试过fzero和solver了,都解不了。这个问题我弄了好长时间了,这段时间把握折腾的头晕脑胀了,希望大侠们最好能写一下具体的编程过程,感激不尽!

v=(k_0^2-k_z^2)^0.5,这是我求解的方程
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

智能机器人

Robot (super robot)

我们都爱小木虫

相关版块跳转 我要订阅楼主 zdzhang 的主题更新
信息提示
请填处理意见