找回密码
 注册
关于网站域名变更的通知
查看: 253|回复: 2
打印 上一主题 下一主题

为什么Matlab计算结果和单片机相差非常大?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-3-1 09:37 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
遇到一个很奇怪的问题,下边这个公式使用Matlab和EXCEL计算结果相同且正确
! b9 l: _5 Q! a1 M
1 w+ P5 N: ~9 E使用单片机和csharp测试又是另一个结果
: ?/ n" S) L, H- }% o
: Y4 ~, v% j# b2 o! F -(2*L^4*b - L^4*c + 8*L^2*b^3 + 2*L^2*c^3 + 8*c^3*h^2 - 4*L^2*b*c^2 - 4*L^2*b^2*c - 8*L^2*b*h^2 - 4*L^2*c*h^2 + 2*L*h*((L + c)*(L - c)*(L^2 - 4*b^2 + 4*h^2)*(L^2 - 4*b^2 + 8*b*c - 4*c^2 + 4*h^2))^(1/2))/(4*(4*L^2*b^2 - 4*L^2*b*c + L^2*c^2 - 4*L^2*h^2 + 4*c^2*h^2))" g. e: ^, A0 D) Z, W. M. L
! ^  q# q4 D9 [6 S$ n: l
单片机和csharp计算a=-9.58444976;' ^( M" ^/ K. j4 `$ g
  k4 u  W6 |- F" F
double L =    270;. i% u) ^5 j& I! U4 S6 E7 E. {4 _
double b =    14.33;
4 H8 q8 b% _/ [% O+ p2 A. Ydouble c =    20.25;9 o) c% ?* d9 R; M, F
double h =    120.21;0 _6 X9 S7 t3 f3 y

! ]5 o, v( ~+ ^. t2 P, @$ p a =  -(2*pow(L,4.00)*b - pow(L,4.00)*c + 8.00*pow(L,2)*pow(b,3.00) + 2*pow(L,2.00)*pow(c,3.00) + 8*pow(c,3)*pow(h,2) - 4*pow(L,2)*b*pow(c,2) - 4*pow(L,2)*pow(b,2)*c - 8*pow(L,2)*b*pow(h,2) - 4*pow(L,2)*c*pow(h,2) + 2*L*h*pow(((L + c)*(L - c)*(pow(L,2) - 4*pow(b,2) + 4*pow(h,2))*(pow(L,2) - 4*pow(b,2) + 8*b*c - 4*pow(c,2) + 4*pow(h,2))),(1/2)))/(4*(4*pow(L,2)*pow(b,2) - 4*pow(L,2)*b*c + pow(L,2)*pow(c,2) - 4*pow(L,2)*pow(h,2) + 4*pow(c,2)*pow(h,2))). l9 g1 ]) b$ E0 Y" y4 ^& U6 P6 n% `
;
7 P! M# T( Q/ ~  I$ m- k  N5 B
! q# i* X7 a3 w2 {  g6 [# J; j/ Y/ j9 b) z
EXCEL和Matlab计算a=126.3747;
' U: o! j. S4 S8 j8 X% u/ ?; D7 q% K  T' l6 D* g
270    L
" M5 P* R" \- q3 C8 p! L( y14.33    b  l& j+ e/ c! M) w/ ]: |
20.25    c
! D, x$ L2 I' r4 T120.21    h% [) z  R$ {9 C- Y' R7 q' F
8 ~5 ?; `  w! l: {; K: p+ P2 f/ d% h
= -(2*A1^4*A2 - A1^4*A3 + 8*A1^2*A2^3 + 2*A1^2*A3^3 + 8*A3^3*A4^2 - 4*A1^2*A2*A3^2 - 4*A1^2*A2^2*A3 - 8*A1^2*A2*A4^2 - 4*A1^2*A3*A4^2 + 2*A1*A4*((A1 + A3)*(A1 - A3)*(A1^2 - 4*A2^2 + 4*A4^2)*(A1^2 - 4*A2^2 + 8*A2*A3 - 4*A3^2 + 4*A4^2))^(1/2))/(4*(4*A1^2*A2^2 - 4*A1^2*A2*A3 + A1^2*A3^2 - 4*A1^2*A4^2 + 4*A3^2*A4^2))
/ N7 x% R* H7 |) W; O% n6 y( s$ x  y. S* `& k, a8 |. L" m, e+ U

/ n* E  w2 c, Q+ d) f$ N  L
. [4 n4 ]- F- e( }) k不知道这个问题是怎么产生的,正在找原因。/ B2 E6 v' \. j/ r/ I, \6 V

9 [1 L* j6 R- d0 B" ~! k; _+ w) r( U' x; X8 y$ r3 r3 g

, t1 h2 s$ X) \! q

该用户从未签到

3#
发表于 2022-3-1 10:06 | 只看该作者
问题应该是2个整数相除结果的小数部分被舍掉了

该用户从未签到

2#
发表于 2022-3-1 09:56 | 只看该作者
会不会溢出了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 17:36 , Processed in 0.140625 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表