24小时热门版块排行榜    

查看: 1768  |  回复: 5

wh1125

木虫 (正式写手)

[求助] 一个1stOpt的初级问题:复数方程组计算问题(有代码)

初学1stOpt,以下1stOpt代码中有5个方程,求解5个变量K00,K01,K02,K03,beta0,其中i已定义为虚数单位,但是运行结果中,怎么总把i当成一个变量,有结果i=0。怎么样才能正确计算我要求解的那5个变量呢?请大神指点啊!

ComplexStr = i;
Constant K=2*pi/(0.88e-6),n0=3.4,n1=3.6,n2=3.4,n3=3.55,t=1e-6,g=0.2e-6;
Function
K00^2=K^2*n0^2-beta0^2;
K01^2=K^2*n1^2-beta0^2;
K02^2=K^2*n2^2-beta0^2;
K03^2=K^2*n3^2-beta0^2;
K03*(K01^2+K00*K02)*tan(K01*(t-g))+K01*(K03^2+K00*K02)*tan(K03*g)+i*(K01*K03*(K00+K02)-(K00*K03^2+K01^2*K02)*tan(K03*g)*tan(K01*(t-g)))=0;

运行结果:
k00: 3.28705929208081
beta0: 4.83100198907778
k01: 2.24062444176525
k02: 4.41804389934987
k03: 3.40456867241301
i: 0
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

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

feixiaolin

荣誉版主 (文坛精英)

优秀版主

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
wh1125: 金币+5, 有帮助, 谢谢你!按照你的办法能够求解,但这样得出的是实数解,没有复数。结果不是我期望的。 2013-10-07 19:45:33
dingd: 金币+1, 谢谢交流。 2013-10-07 21:45:05
删除ComplexStr = i;
拆分
K03*(K01^2+K00*K02)*tan(K01*(t-g))+K01*(K03^2+K00*K02)*tan(K03*g)+i*(K01*K03*(K00+K02)-(K00*K03^2+K01^2*K02)*tan(K03*g)*tan(K01*(t-g)))=0;
成两个式子:
K03*(K01^2+K00*K02)*tan(K01*(t-g))+K01*(K03^2+K00*K02)*tan(K03*g)=0;
(K01*K03*(K00+K02)-(K00*K03^2+K01^2*K02)*tan(K03*g)*tan(K01*(t-g)))=0;
因为负数为零等价于实部为0 & 虚部为0
2楼2013-10-07 19:01:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wh1125

木虫 (正式写手)

引用回帖:
2楼: Originally posted by feixiaolin at 2013-10-07 19:01:58
删除ComplexStr = i;
拆分
K03*(K01^2+K00*K02)*tan(K01*(t-g))+K01*(K03^2+K00*K02)*tan(K03*g)+i*(K01*K03*(K00+K02)-(K00*K03^2+K01^2*K02)*tan(K03*g)*tan(K01*(t-g)))=0;
成两个式子:
K03*(K01^2+K00*K0 ...

虽然能得出结果,全部是实数解,但是明显解的数量级都不对。
3楼2013-10-07 19:47:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖


感谢参与,应助指数 +1
csgt0: 金币+1, 谢谢 2013-10-09 10:30:26
不知道一楼的问题中待求参数是实数还是虚数?如果都是实数,2楼的方法很好啊,只是似乎无解。方程是否正确?
4楼2013-10-07 21:49:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wh1125

木虫 (正式写手)

引用回帖:
4楼: Originally posted by dingd at 2013-10-07 21:49:52
不知道一楼的问题中待求参数是实数还是虚数?如果都是实数,2楼的方法很好啊,只是似乎无解。方程是否正确?

方程是正确的。解没有限制,可以是实数解也可以是复数解。
5楼2013-10-07 22:32:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★
wh1125: 金币+5, 有帮助, 谢谢!我的解要求K01和K03不为零,因为后面还有计算,他们要做分母。 2013-10-07 23:13:11
csgt0: 金币+1, 谢谢 2013-10-09 10:30:42
下面这组参考下:

k00.实部: 0
k00.虚部: 7290129.24733499
k01.实部: 4269089.10229991
k01.虚部: 0
k02.实部: 0
k02.虚部: -7290129.24733499
k03.实部: 0
k03.虚部: 0
beta0.实部: 25346940.7278267
beta0.虚部: 0
6楼2013-10-07 23:09:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wh1125 的主题更新
信息提示
请填处理意见