如何在 Matlab 中简化符号和数字混合表达式 [英] How get to simplify a symbolic and numeric mixed expression in Matlab

查看:72
本文介绍了如何在 Matlab 中简化符号和数字混合表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的最终结果是:

(12*u)/5 + (12*4^(3/2))/13 - 1484/34

如何将这个短语简化为:2.4000u - 36.2624?

以及如何自动找到你?(u = 15.1093)

解决方案

simplify() 和 solve() 不能正常工作:

<块引用><块引用>

a = (12*u)/5 + (12*4^(3/2))/13 - 1484/34

a =

[ (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221]

<块引用><块引用>

简化(a)

ans =

[ (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221]

<块引用><块引用>

解决(a, u)警告:1 个变量中有 10 个方程.在 C:\Program Files\MATLAB\R2011b\toolbox\symbolic\symbolic\symengine.p>symengine at 54在 mupadengine.mupadengine>mupadengine.evalin 96在 mupadengine.mupadengine>mupadengine.feval 中 137在 151 处解决警告:找不到明确的解决方案.在 160 处求解

ans =

[空符号]

My finally result is:

(12*u)/5 + (12*4^(3/2))/13 - 1484/34

How to simplify this phrase to: 2.4000u - 36.2624 ?

and how to find u automatically? (u = 15.1093)

解决方案

simplify() and solve() don't work correctly:

a = (12*u)/5 + (12*4^(3/2))/13 - 1484/34

a =

[ (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221]

simplify(a)

ans =

[ (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221, (12*u)/5 - 8014/221]

solve(a, u) Warning: 10 equations in 1 variables. In C:\Program Files\MATLAB\R2011b\toolbox\symbolic\symbolic\symengine.p>symengine at 54 In mupadengine.mupadengine>mupadengine.evalin at 96 In mupadengine.mupadengine>mupadengine.feval at 137 In solve at 151 Warning: Explicit solution could not be found. In solve at 160

ans =

[ empty sym ]

这篇关于如何在 Matlab 中简化符号和数字混合表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆