24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1484  |  回复: 19

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
要求转化为一个关于x(或y,z)的一元三次方程。
我自己手算过很多遍,不知道哪里出问题,都是一元四次方程。但是按照老师的说法是存在一元三次这种情况的,我一直没找到。课题进展就一直卡在这里下不去了。
希望有数学高手能够帮忙手算一下,不胜感激!
采用Mathematica计算出来的结果与手算结果一致,是不是表明只有一元四次这种情况?
回复此楼

» 猜你喜欢

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

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
感谢参与,应助指数 +1
309065816: 金币+100 2014-07-26 09:44:00
最高次数的确是3
你用手算能算得出来才怪,所以,如果你手算了,很可能是有问题的.
得到的式子比较复杂, 比如, 其中一项是 x*Sqrt[a x^4+b x^3 + c x^2 + d]的形式, 也可以理解为不超过3次

用符号计算的时候, 为什么出现k1, k01, k2, k02并存? 还是本来相同? 不超过10的时候完全可以编号下去

解题思路:
假设三个多项式分别为 f1[x,y,z]==0, f2[x,y,z]==0, f3[x,y,z]==0
需要定义三个关于x,y,z函数f1,f2,f3

假设求关于x的多项式,则需要消去y, z
任取两个等式, 比如f2,f3解关于y,z方程组
Solve[{f2[x,y,z]==0,f3[x,y,z]==0},{y,z}]//FullSimplify
得到两组解,假设为Rule01, Rule01

然后把y,z的结果代入f1中化简,
Collect[f1[x,y,z]/.Rule01//FullSimplify//ExpandAll,x]

然后就得到想要的关于x的式子; 最高次数为3

c d k3 k5 + (-d k1 k3 + k02 k1 k4 + k1 k2 k4 - d k3 k4 - k1 k3 k4 +
    k01 k4^2 + k2 k4^2 + k1 k4 k5) x^2 + k1 k4^2 x^3 +
x (c d k1 k3 + k01 k02 k4 + c d k3 k4 - d k3 k5 + k01 k4 k5 +
    k2 k4 k5 +
    k4 \[Sqrt](k01^2 k02^2 + 2 k01^2 k02 k5 + 2 k01 k02 k2 k5 +
        k01^2 k5^2 + 2 k01 k2 k5^2 + k2^2 k5^2 + 2 k01 k02^2 k1 x +
        2 k01 k02 k1 k2 x - 2 k01 k02 k1 k3 x + 2 k01^2 k02 k4 x +
        2 k01 k02 k2 k4 x + 4 k01 k02 k1 k5 x + 2 k01 k1 k2 k5 x +
        2 k02 k1 k2 k5 x + 2 k1 k2^2 k5 x - 2 k01 k1 k3 k5 x +
        2 k1 k2 k3 k5 x + 2 k01^2 k4 k5 x + 4 k01 k2 k4 k5 x +
        2 k2^2 k4 k5 x + 2 k01 k1 k5^2 x + 2 k1 k2 k5^2 x +
        k02^2 k1^2 x^2 + 2 k02 k1^2 k2 x^2 + k1^2 k2^2 x^2 -
        2 k02 k1^2 k3 x^2 + 2 k1^2 k2 k3 x^2 + k1^2 k3^2 x^2 +
        4 k01 k02 k1 k4 x^2 + 2 k01 k1 k2 k4 x^2 +
        2 k02 k1 k2 k4 x^2 + 2 k1 k2^2 k4 x^2 - 2 k01 k1 k3 k4 x^2 +
        2 k1 k2 k3 k4 x^2 + k01^2 k4^2 x^2 + 2 k01 k2 k4^2 x^2 +
        k2^2 k4^2 x^2 + 2 k02 k1^2 k5 x^2 + 2 k1^2 k2 k5 x^2 -
        2 k1^2 k3 k5 x^2 + 4 k01 k1 k4 k5 x^2 + 4 k1 k2 k4 k5 x^2 +
        k1^2 k5^2 x^2 + 2 k02 k1^2 k4 x^3 + 2 k1^2 k2 k4 x^3 -
        2 k1^2 k3 k4 x^3 + 2 k01 k1 k4^2 x^3 + 2 k1 k2 k4^2 x^3 +
        2 k1^2 k4 k5 x^3 + k1^2 k4^2 x^4))
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
2楼2014-07-26 08:00:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

309065816

木虫 (正式写手)

引用回帖:
2楼: Originally posted by Mr__Right at 2014-07-26 08:00:31
最高次数的确是3
你用手算能算得出来才怪,所以,如果你手算了,很可能是有问题的.
得到的式子比较复杂, 比如, 其中一项是 x*Sqrt的形式, 也可以理解为不超过3次

用符号计算的时候, 为什么出现k1, k01, k2, k02并 ...

先谢谢了。不过老师自己说过博士期间手算出来过,所以一直让我算。k1,k01这些是具有物理意义的,所以就是这么表示的。
你是用什么软件算的呢?matlab还是mathematics?
3楼2014-07-26 09:43:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
309065816: 金币+10 2014-07-27 22:54:50
引用回帖:
3楼: Originally posted by 309065816 at 2014-07-26 09:43:47
先谢谢了。不过老师自己说过博士期间手算出来过,所以一直让我算。k1,k01这些是具有物理意义的,所以就是这么表示的。
你是用什么软件算的呢?matlab还是mathematics?...

1.很明显,你看我给出的代码是Mathematica表示的,你如果会用Mathematica应该看得出来;

2.手算除非每计算一步都用变量代换,把同类型系数用一个新的符号表示;否则容易出错; 手算计算效率低,而且碰上稍微有难度的非常吃力;

按照我说的方法应该很容易得到你导师说的结果.
你还有别的疑问吗?
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
4楼2014-07-26 09:49:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

309065816

木虫 (正式写手)

引用回帖:
4楼: Originally posted by Mr__Right at 2014-07-26 09:49:00
1.很明显,你看我给出的代码是Mathematica表示的,你如果会用Mathematica应该看得出来;

2.手算除非每计算一步都用变量代换,把同类型系数用一个新的符号表示;否则容易出错; 手算计算效率低,而且碰上稍微有难度的非 ...

不会用,之前也没接触过,也是前面一个帖子里的有虫友应助提到这个,我才安装了一个,虫友提供了解题的过程,所以才会。目前自己在用的是MATLAB,但是也只会一些基础的,复杂的也不懂,都是硬着头皮在学。
你说的第二点不是很懂,变量代换跟同类项系数用新符号表示什么的
5楼2014-07-26 09:59:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
309065816: 金币+20 2014-07-26 11:46:54
(*定义三个多项式:*)
f1[x_, y_, z_] := d*(c - x) - k1*x (1 - y - z) + k01*y - k4*x*z + k5*z
f2[x_, y_, z_] := k1*x*(1 - y - z) - k01*y - k2*y + k02*z - k3*y*z
f3[x_, y_, z_] := k2*y - k02*z + k3*y*z - k4*x*z - k5*z
(*用x表示出y,z*)
Rules=Solve[{f2[x, y, z] == 0, f3[x, y, z] == 0}, {y, z}] // FullSimplify;
(*得到了多少个解*)
number=Dimensions[Rules][[1]]
(*用第一个解转化成x的一元形式*)
Collect[f1[x, y, z] /. Rules[[1]]//FullSimplify //ExpandAll, x]
(*用第二个解转化成x的一元形式*)
Collect[f1[x, y, z] /. Rules[[2]]//FullSimplify //ExpandAll, x]
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
6楼2014-07-26 10:01:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

引用回帖:
5楼: Originally posted by 309065816 at 2014-07-26 09:59:48
不会用,之前也没接触过,也是前面一个帖子里的有虫友应助提到这个,我才安装了一个,虫友提供了解题的过程,所以才会。目前自己在用的是MATLAB,但是也只会一些基础的,复杂的也不懂,都是硬着头皮在学。
你说的 ...

我已经把代码贴出来了
你只要复制过去自己Evaluate Cells就可以看结果了
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
7楼2014-07-26 10:02:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

309065816

木虫 (正式写手)

引用回帖:
7楼: Originally posted by Mr__Right at 2014-07-26 10:02:56
我已经把代码贴出来了
你只要复制过去自己Evaluate Cells就可以看结果了...

好的,谢谢了哈!我试试
8楼2014-07-26 10:06:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
309065816: 金币+10 2014-07-26 11:47:03
你可能要对最后的结果作这样的处理,否则总是带有分母,不过这不影响结果,除非分母为0:


(*用第一个解转化成x的一元形式*)
Collect[f1[x, y, z] (k3 k5 + k1 k3 x + k3 k4 x) /. Rules[[1]] //
   FullSimplify // ExpandAll, x]
(*用第二个解转化成x的一元形式*)
Collect[f1[x, y, z] (k3 k5 + k1 k3 x + k3 k4 x) /. Rules[[2]] //
   FullSimplify // ExpandAll, x]
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
9楼2014-07-26 10:28:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Mr__Right

专家顾问 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
309065816: 金币+160 2014-07-28 08:45:37
楼主你问题解决了吗?
如果解决了就结贴吧 要兑现承诺

我可是一颗:
求解一个方程组,急!!!

你可不能报以:
求解一个方程组,急!!!-1
文章乃身外之物,要多考虑编辑、审稿人和读者的感受。
10楼2014-07-27 10:13:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 309065816 的主题更新
信息提示
请填处理意见