在MATLAB中这个二元二次方程组如何求解,请高人指教!

x^2+y^2=10^2*(1.568-1.538)
x*2=arctan(y/x)

[X,Y]=solve('x^2+y^2=10^2*(1.568-1.538)','x*2=arctan(y/x)')

X =-0.60651959867130434289594767388317
Y =1.6223852737335851185433543673061追问

n1=1.568;
n2=1.538;
lambda=0.6328e-6;
k0=2*pi/lambda;
epsilon1=n1^2;
epsilon2=n2^2;
a=2e-6;
syms gamma1 gamma2;
G=solve('gamma1^2+gamma2^2=k0^2*(epsilon1-epsilon2)','gamma1*a=atan(gamma2/gamma1)','gamma1,gamma2');

您好,这就是我的具体问题,就是按照您的方式输入,可是结果是没有解,求指教!

追答

matlab很多复杂一点的符号方程解不出,上面的方法是没问题的,把方程该简单点就可以解得出。

我试着把那些参数求出来再带到方程里,可以解,但是时间很长,一直显示BUSY,也不知道什么时候才好。

没办法,采用半手工解方程,可以比较快得出结果。是否正确就需要你自己去验证了。

x1 =


1996655.5699709046242317077333357



y1 =


2280751.2120403346420495048132233



x2 =


943689.2790761078035960738041211



y2 =


-2880609.3280547638381400396648403


>> 


温馨提示:答案为网友推荐,仅供参考
相似回答