24小时热门版块排行榜    

CyRhmU.jpeg
查看: 2236  |  回复: 13
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

309065816

木虫 (正式写手)

[求助] 请教高手,如何解非线性方程组!!!已有1人参与

(1)D*(c-x)-k1*x*(1-y-z)+k01*y-k4*x*z+k5*z=0
(2)k1*x*(1-y-z)-k01*y-k2*y+k02*z-k3*y*z=0
(3)k2*y-k02*z+k3*y*z-k4*x*z-k5*z=0
上述方程组中,D,k1~k5均为一些变量参数,想得到x,y,z关于这些参数的表达式。
想通过代入消元或者其他方法将上述方程化为一元多次方程的形式。例如,将y,z用x表示,最终将方程化为关于x的一元多次方程。
我自己计算过,由于方程中含有一些相同项,通过将(1)(2)(3)式相加得到,z关于x的表达式;
将(1)(2)相加,再将z关于x的表达式代入,可得到y关于x的表达式;
再将上述y.z关于x的表达式代入到(3)中,结果为0,没有得到关于x的表达式。
上述过程应该是有问题的,但是具体问题不知道在哪?正确的做法应该是怎么样的?
想问下具体的过程该是怎么样的?
我最终想要的就是将上述3个方程化为一个一元多次方程,请高手指点一下!
回复此楼

» 猜你喜欢

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

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

309065816

木虫 (正式写手)

引用回帖:
6楼: Originally posted by daul_0124 at 2014-07-02 21:15:31
k01,k02何意?

本来应该是k-1,k-2.表示逆反应速率常数,为了简便起见,就用了k01,k02
7楼2014-07-03 00:19:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 14 个回答

309065816

木虫 (正式写手)

根据要求,希望能够手动推导得出一元多次方程,matlab中的solve函数求解精度不能满足要求,且存在问题
2楼2014-07-01 20:47:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

peterflyer

木虫之王 (文学泰斗)

peterflyer


【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
309065816: 金币+10, 有帮助, 好的,谢谢了,我先试试,对的话会再给金币的。 2014-07-01 21:15:31
309065816: 金币+10 2014-07-08 12:54:26
先将x看作常量,通过(1)、(2)解得y=y(x)、z=z(x),再代入(3),这样就应该不会出现楼主述及的问题了。如果这样做仍会出现楼主遇到的问题,那只能说明这三个方程不是相互独立的,至少一个方程会有另外两个推出。这样一来,方程组的解如果存在的话就会有无穷多个。
3楼2014-07-01 21:12:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hank612

至尊木虫 (著名写手)

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
309065816(feixiaolin代发): 金币+10 2014-07-09 19:58:01
用 Mathematica 的Groebner Basis 功能吧, 一步到位
自己google它的原理, 反正到处都是
请教高手,如何解非线性方程组!!!
Emuch018.png

We_must_know. We_will_know.
4楼2014-07-02 10:27:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见