我怎么能使用小数显示符号表达式而不是理性的分数?
453(30天)
显示旧的评论
你好,
当我表达符号表达式用符号十进制值,我经常得到非常大的分数。因为结果不是常数,我不能使用双()来评估结果作为一个小数。sym2poly()在大多数情况下工作,但有一天,我可能需要评估一个长表达式,并不是一个多项式。我也试过信谊(表情,' d '),但这并不适用于非数字输入。有一些方法来显示符号表达式使用小数?
谢谢!
例子:
信谊SIG_X SIG_Y SIG_Z
S_bar = [(0.78, -0.35, -0.38), (-0.35, 0.78, -0.38), (-0.38, -0.38, 0.92)];% (Pa)
α= (-0.018,24.3,24.3)* 10 ^ 6;% (/ C)
压力= [SIG_X; SIG_Y SIG_Z];
dT = 25;
应变压力+α= S_bar * * dT的;
disp(应变)
结果:
(39 * SIG_X) / 50 - (7 * SIG_Y) / 20 - 50 (19 * SIG_Z) / 8500259669165361/18889465931478580854784
(39 * SIG_Y) / 50 - (7 * SIG_X) / 20 - (19 * SIG_Z) 5603198512389277/9223372036854775808 / 50 +
(23 * SIG_Z) / 25 - (19 * SIG_Y) / 50 - (19 * SIG_X) 5603198512389277/9223372036854775808 / 50 +
预期的结果:
0.78 * SIG_X - 0.35 * SIG_Y - 0.38 * SIG_Z - 4.5 e-07
0.78 * SIG_Y - 0.35 * SIG_X e-04 6.075 - 0.38 * SIG_Z +
0.92 * SIG_Z - 0.38 * SIG_Y e-04 6.075 - 0.38 * SIG_X +