lxy04123 发表于 2009-9-26 19:47

关于solve求解三角函数方程的问题

我这有个程序
n1=2.4;n2=1.5;d1=1.5;d2=d1;
theta1=asin(sin(pi/4)/n1);
theta2=asin(sin(pi/4)/n2);
y1=(8.854*10^(-12)/(4*pi*10^(-7)))^(1/2)*2.4*cos(theta1);
y2=(8.854*10^(-12)/(4*pi*10^(-7)))^(1/2)*1.5*cos(theta2);
W={};
m=linspace(0,0.5,5);%这里x和频率及布洛赫波矢都是归一化的
b=1;%x=kd/2pi,y=wd/2pic,K为布洛赫波失乘以(d1+d2)
h=waitbar(0,'waitting');
y=sym('y');
for K=linspace(0,pi,5)
    x=0.2;
    Fa=2*pi*(n1^2*y^2-x^2)^(1/2)*d1/3;
    Fb=2*pi*(n2^2*y^2-x^2)^(1/2)*d2/3;
    g=solve(cos(K)-cos(Fa)*cos(Fb)+2\(y1/y2+y2/y1)*sin(Fa)*sin(Fb),'y');
    W{b}=g;
    b=b+1;
    waitbar((b-1)/length(m),h)
    clear maplemex
end
close(h)
不知道为什么得到的结果g含有不认识的字符(比如下面所示),这些字符我在程序中根本就没用啊哪位大侠帮帮忙啊!!!
不知道用solve这样解合不合适
1/12*(-1/25*(-6400*asinh(562949953421312/35346691471735920571734350619*11782230490578640190578116873^(1/2))^2*_B2-64*pi^2-3200*i*asinh(562949953421312/35346691471735920571734350619*11782230490578640190578116873^(1/2))*pi*_B2+1600*asinh(562949953421312/35346691471735920571734350619*11782230490578640190578116873^(1/2))^2+12800*i*asinh
页: [1]
查看完整版本: 关于solve求解三角函数方程的问题