matlab求解方程错误为什么我这段程序没法求解:clearclcDel=251;Det=0.002

发布时间:2021-02-25 21:44:51

matlab求解方程错误为什么我这段程序没法求解:clearclcDel=251;Det=0.002332;Eya=201000;Kcss=695;ncss=0.11;[x,y]=solve('x*y=Del*Det','x=y/Eya+2*(y/(2*Kcss))^(1/ncss)')x =[ empty sym ]y =[]而直接把数值代入就能求解呢? [x,y]=solve('x*y=251

网友回答

在较低版本的matlab中,solve只能用来求解解析解,当没有解析解时返回一个空矩阵
较高版本中好想也能部分地数值求解了
也就是说当solve的对象内含有字符的话默认进行符号求解,若没有除变量外的字符则返回具体的数值解
======以下答案可供参考======
供参考答案1:
因为你给出的solve(),是以赋值表达式的形式定义,即Del、Det、Eya、Kcss、ncss都是变量形式出现在表达式里,所以用solve()求解时,Del、Det、Eya、Kcss、ncss不是一个具体的数,而是变量。
具体程序只能改成后面给出的表达式,即
[x,y]=solve('x*y=251*0.002332','x=y/201000+2*(y/(2*695))^(1/0.11)')
以上问题属网友观点,不代表本站立场,仅供参考!