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

[已解决] 一元三次函数已知求x

[复制链接]

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
本帖最后由 铅笔尺子喳喳喳 于 2020-3-24 20:04 编辑

微信图片_20200324195910.png clear
x=[-12.7843 -8.0651 4.8494];
h=poly(x)

h =

    1.0000   16.0000    1.9996 -500.0054

>>  poly2sym(h)

ans =

x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208

>> syms x;
>> h=x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208

h =

x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208

>> x=solve(h,x)

x =

root(z^3 + 16*z^2 + (140707762486725*z)/70368744177664 - 4398094247199495/8796093022208, z, 1)
root(z^3 + 16*z^2 + (140707762486725*z)/70368744177664 - 4398094247199495/8796093022208, z, 2)
root(z^3 + 16*z^2 + (140707762486725*z)/70368744177664 - 4398094247199495/8796093022208, z, 3)
请教一个问题,我用solve函数对一个一元三次函数已知y求x,出现了下面的解的情况,请路过的行家们帮我看一看是什么问题,或者可以给我说一下已知一元三次函数表达式,已知y求x的步骤,以 h=x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208以这个函数为例

论坛优秀回答者

3

主题

948

帖子

180

最佳答案
  • 关注者: 43
发表于 2020-3-24 20:29:36 | 显示全部楼层 |此回复为最佳答案
最后那句的solve改为vpasolve试试

MATLAB 基础讨论
版块优秀回答者

入门

274 麦片

财富积分


50500


20

主题

501

帖子

40

最佳答案
  • 关注者: 2
发表于 2020-3-24 20:32:30 | 显示全部楼层
>> h = x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208
h =
x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208
>> x=solve(h,x)
x =
                                                                                                                                                                                                                                                                                                                        17592275222021809/(633318697598976*(49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)) + (49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3) - 16/3
- 17592275222021809/(1266637395197952*(49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)) - (49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)/2 - 16/3 - (3^(1/2)*(17592275222021809/(633318697598976*(49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)) - ((33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136 + 49223690361219479/474989023199232)^(1/3))*i)/2
- 17592275222021809/(1266637395197952*(49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)) - (49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)/2 - 16/3 + (3^(1/2)*(17592275222021809/(633318697598976*(49223690361219479/474989023199232 + (33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136)^(1/3)) - ((33537988461372604452537800516400246788984689345^(1/2)*i)/1770887431076116955136 + 49223690361219479/474989023199232)^(1/3))*i)/2
>>

MATLAB 基础讨论
版块优秀回答者

入门

274 麦片

财富积分


50500


20

主题

501

帖子

40

最佳答案
  • 关注者: 2
发表于 2020-3-24 20:33:55 | 显示全部楼层
可能解析式太复杂了,有时候用z代替
我的2010b直接给出结果,太复杂

新手

7 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 2020-3-24 20:41:04 | 显示全部楼层
20141303 发表于 2020-3-24 20:29
最后那句的solve改为vpasolve试试

>> h=x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208==-100

h =

x^3 + 16*x^2 + (140707762486725*x)/70368744177664 - 4398094247199495/8796093022208 == -100

>> x=vpasolve(h,x)

x =

-13.733622496760631129901101551987
-6.6477252000836680439539794406282
  4.3813476968442991738550809926149



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

本版积分规则

关闭

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

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