作业帮 > 综合 > 作业

matlab solve解符号函数问题

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/22 17:41:37
matlab solve解符号函数问题
为什么用solve函数可以解出【log(x)=c'】,解不出【b*(a+x)*log(x)=c】的x值?如何解
>> solve('5*(60+x)*log(x)=10')
ans =1.0333118065736867150074014102319
>> solve('b*(a+x)*log(x)=c')
Error using ==> solve
Unable to find closed form solution.
matlab solve解符号函数问题
错误的意思是找不到解析解,即一个通用的关于a,b,c的可以用来计算x值的表达式.注意一定是通用的.
这说明这个方程没有一般意义上的解析解,但是当a,b,c取某些值时它又存在解,其实这种解区别于解析解,算是数值解.只有当a,b,c满足某些条件时才存在.
事实上工程上很多实用方程都只有数值解,还有很多偏微分方程都是没有解析解的,真正有解析解的方程是相对很少的.
因此,这种错误与软件无关,与方程本身固有的一些特性有关.想深入了解的话建议你看一些相关的书籍.