![]() |
求助:解一个简单的不等式
解不等式:
-34.07*log10(abs(x+12))-10*log10((x+24)^(-3.407)+(6-x)^(-3.407))+19>0 要求得到一个实数区间. 在下是新手,谁能帮我一下,谢谢 |
回复: 求助:解一个简单的不等式
记不等号左边表达式为f,即求解f>0;
1、首先作出f的图像,以确定零点的大致位置。(图形太大,就没上传) >> ezplot('-34.07*log10(abs(x+12))-10*log10((x+24)^(-3.407)+(6-x)^(-3.407))+19',[-30,20]) >> hold on >> ezplot('0',[-30,20]) 得到零点在[-25,-20],[0,5]间。 2、再用fzero求解 [x,fv,ef]=fzero(inline('-34.07*log10(abs(x+12))-10*log10((x+24)^(-3.407)+(6-x)^(-3.407))+19'),-20) 得: x = -21.3976 [x,fv,ef]=fzero(inline('-34.07*log10(abs(x+12))-10*log10((x+24)^(-3.407)+(6-x)^(-3.407))+19'),0) 得: x = 2.0952 故f>0的解为:(-21.3976,2.0952) ~ ~ |
回复: 求助:解一个简单的不等式
因为我求这个不等式的解是for循环中的一步,请问一下可不可以不通过观察图像而直接得到方程的零解?
|
回复: 求助:解一个简单的不等式
那样的话,可以考虑用solve函数求零解;
或者直接用无约束优化求不等式。 你可以试试~ ~ |
回复: 求助:解一个简单的不等式
但是solve解出来的是解析解,而且它也解不了复杂方程.
|
回复: 求助:解一个简单的不等式
没有办法,只能先用试探法得到解存在的区间
可以考虑用导数的零点来划分 |
所有时间均为北京时间。现在的时间是 04:59。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.