查看: 155|回复: 4|关注: 0

[已答复] 求助!非线性超定复数方程组求解

[复制链接]

新手

10 麦片

财富积分


050


1

主题

5

帖子

0

最佳答案
发表于 2020-7-30 14:29:08 | 显示全部楼层 |阅读模式
尝试在1stopt上做,不过好像试用版不支持求解。。。有好心的大佬帮忙算一下吗,不胜感激!(小白,代码可能有错)
ComplexPar x1, x2, x3;
ComplexStr = i;
Function
x1+(100/81*x2*x3)/(100/81*x2+x3)-19.92478591-67.10441794*i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-17.43604805-69.08362127*i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.20848176-69.08362127*i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-20.014969-69.17786905*i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-19.00144872-69.14645313i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.54177372-69.20928498i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-19.26137279-69.14645313i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.24296238-69.14645313i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.37402595-69.58627609i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.11136602-69.17786905i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.99017354-69.02078942i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-18.03053601-69.20928498i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-11.92907902-55.85751643i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-15.62207706-56.17167569i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-17.29029493-56.14025976i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-14.71427916-56.14025976i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-19.55620443-56.07742791i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-15.11409409-56.14025976i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-15.07602742-56.10884384i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-15.07434306-56.07742791i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-14.71391458-56.14025976i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-14.49808725-55.98318013i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-16.32794922-56.36017124i=0;
x2+(81/100*x1*x3)/(81/100*x1+x3)-14.95495135-56.39158717i=0;

matlab用lsqnonlin算了下,和初值关系太大没敢继续弄;用论坛里另一个大佬编的globalsolve也尝试求了一下,求出来的解一方面太多,有很多不合适,另一方面合适的每次计算也不一样。。有知道咋弄的大佬指点下,感谢!
matlab的函数如下:
function F = test_fun(x)
F(1) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-19.92478591-67.10441794i;
F(2) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-17.43604805-69.08362127i;
F(3) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.20848176-69.08362127i;
F(4) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-20.014969-69.17786905i;
F(5) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-19.00144872-69.14645313i;
F(6) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.54177372-69.20928498i;
F(7) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-19.26137279-69.14645313i;
F(8) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.24296238-69.14645313i;
F(9) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.37402595-69.58627609i;
F(10) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.11136602-69.17786905i;
F(11) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.99017354-69.02078942i;
F(12) = x(1)+(100/81*x(2)*x(3))/(100/81*x(2)+x(3))-18.03053601-69.20928498i;
F(13) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-11.92907902-55.85751643i;
F(14) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-15.62207706-56.17167569i;
F(15) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-17.29029493-56.14025976i;
F(16) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-14.71427916-56.14025976i;
F(17) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-19.55620443-56.07742791i;
F(18) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-15.11409409-56.14025976i;
F(19) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-15.07602742-56.10884384i;
F(20) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-15.07434306-56.07742791i;
F(21) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-14.71391458-56.14025976i;
F(22) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-14.49808725-55.98318013i;
F(23) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-16.32794922-56.36017124i;
F(24) = x(2)+(81/100*x(1)*x(3))/(81/100*x(1)+x(3))-14.95495135-56.39158717i;
回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1217 麦片

财富积分


5001500


0

主题

2799

帖子

260

最佳答案
  • 关注者: 172
发表于 2020-7-30 16:51:10 | 显示全部楼层
楼主公式本身就有问题吧,以第一,第二公式为例:
x1+(100/81*x2*x3)/(100/81*x2+x3)-19.92478591-67.10441794*i=0;
x1+(100/81*x2*x3)/(100/81*x2+x3)-17.43604805-69.08362127*i=0;
变换得:
x1+(100/81*x2*x3)/(100/81*x2+x3)=19.92478591+67.10441794*i;
x1+(100/81*x2*x3)/(100/81*x2+x3)=17.43604805+69.08362127*i;
也即:
19.92478591+67.10441794*i=17.43604805+69.08362127*i;
也即:
19.92478591=17.43604805;
67.10441794=69.08362127;
不奇怪吗?
回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


1

主题

5

帖子

0

最佳答案
 楼主| 发表于 2020-7-30 16:54:43 | 显示全部楼层
shihe 发表于 2020-7-30 16:51
楼主公式本身就有问题吧,以第一,第二公式为例:
x1+(100/81*x2*x3)/(100/81*x2+x3)-19.92478591-67.10441 ...

求解的是超定的方程组,右端的数据是每次的测试值,每次测都存在一定误差。所以测的组数多,想用最小二乘来得到比较合理的结果。
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

中级

1217 麦片

财富积分


5001500


0

主题

2799

帖子

260

最佳答案
  • 关注者: 172
发表于 2020-7-30 17:23:39 | 显示全部楼层
不加范围约束,本身就多解吧
回复此楼 已获打赏: 0 积分

举报

新手

10 麦片

财富积分


050


1

主题

5

帖子

0

最佳答案
 楼主| 发表于 2020-7-30 18:21:46 | 显示全部楼层
shihe 发表于 2020-7-30 17:23
不加范围约束,本身就多解吧

对的。。。我觉得复数域内满足的本身就有很多解。。。
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表