fzc 发表于 2009-7-11 12:41

【新手求教】:解三次方程

我在使用Mathematica时遇到一个不解的问题:
用Plot绘出的图形能明显看到该三次方程有三个实根,但用Solve求解却得到三个复根。这是怎么回事儿?
请高手不吝赐教!

mathcd 发表于 2009-7-11 14:33

虚部数值太小了.

NSolve

xypfs21 发表于 2009-7-11 14:56

支持,学习···

mathcd 发表于 2009-7-11 23:27

本帖最后由 mathcd 于 2009-7-11 23:30 编辑

奇怪的是,用maple可以顺利求出符号解:




这似乎再一次表明了在符号计算方面maple对mathematica的优越性.

fzc 发表于 2009-7-12 09:40

虚部数值太小了.

NSolve
mathcd 发表于 2009-7-11 14:33
非常感谢您的答复。但我现在是想从理论上把它搞清楚。从数学手册上能查到,三次方程的卡尔丹公式通式是x^3+px+q=0, 判别式是(q/2)^2+(p/3)^3。当判别式小于0时,三次方程应该有三个实根。对于我的这个三次方程,判别式的结果是-3/256,是小于0的,应该有三个实根,为何Solve的结果是虚根?难道Mathematica有Bug ? 【我觉得对于我的这个三次方程,Solve应该和NSolve的结果一样的,只不过Solve出来可能是分数,而NSolve出来是实数,而不应该出现实数和虚数之分】

fzc 发表于 2009-7-12 09:45

本帖最后由 fzc 于 2009-7-12 09:46 编辑

奇怪的是,用maple可以顺利求出符号解:


6271

这似乎再一次表明了在符号计算方面maple对mathematica的优越性.
mathcd 发表于 2009-7-11 23:27 http://www.madio.cn/tool/images/common/back.gif
我用Mathematica也能求出符号解。和您的这个答案是一样的。关键问题是该三次方程的解应该是实根而不应该是虚根呀!难道数学手册上写错了?我从网上维基百科查的结果也是应该是实根呀!Mathematica在符号计算方面应该还是世界老大,Maple排第二。

mathcd 发表于 2009-7-12 17:04

本帖最后由 mathcd 于 2009-7-12 17:06 编辑


我用Mathematica也能求出符号解。和您的这个答案是一样的。关键问题是该三次方程的解应该是实根而不应该是虚根呀!难道数学手册上写错了?我从网上维基百科查的结果也是应该是实根呀!Mathematica在符号计算方面应 ...
fzc 发表于 2009-7-12 09:45 http://www.madio.cn/tool/images/common/back.gif

怪了.我昨天用的是Mathematica7算不出符号解,所以我才用maple来解.
今天Mathematica7居然又可以给出符号解了.
怪!


"难道Mathematica有Bug ?"
难道maple13也有bug?
费解!

NPOWER 发表于 2009-7-23 12:08

嗯,学习了

zhong@quan 发表于 2009-7-28 00:02

very good!

yl_sadness 发表于 2009-8-7 09:26

感觉mathematica在解方程的时候是有缺陷的~如Solve对于没有初等函数解的方程式解不出来的~~~用NSolve是求的近似值。
哈哈~~见笑了~~就知道这些
页: [1] 2
查看完整版本: 【新手求教】:解三次方程