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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
遇到一个很奇怪的问题,下边这个公式使用Matlab和EXCEL计算结果相同且正确- Q$ K8 T) |( \; q! l6 `
+ Y/ A0 [2 V" H- }
使用单片机和csharp测试又是另一个结果
+ @- o8 l: k( j
+ k3 M! {7 a3 p7 W! {8 D -(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)); x0 w- ^* z+ B# c: O( K* v" |

' ]5 n2 i! M4 E$ V单片机和csharp计算a=-9.58444976;* O" ]3 _  w0 w3 q- s

2 S9 q5 @. s  ]* C( _/ J- G7 ^) Fdouble L =    270;/ M4 E: ?! D- |. K- h8 h0 Q
double b =    14.33;& B0 q( Q8 W9 \) J+ a3 Y% ?- Z
double c =    20.25;0 ]0 d  j+ h; D  w5 {* B- `* f0 }
double h =    120.21;
# I9 }) M% l  a- ~9 j6 @' T; G5 s3 e' {* o5 d2 X; @- h
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)))" c$ q/ F4 l( o( K2 R. U
;3 _! E& S# H  r6 ], l

+ e# g# t5 ]( K% G
" B/ A* v& d' x: hEXCEL和Matlab计算a=126.3747;0 D/ V: m' H2 H2 z* w! r; u
* S' v6 s; }( K& E1 Q
270    L/ b- f6 s6 q- N
14.33    b+ ?; \2 h* x- t% a4 V: H
20.25    c  O2 \1 D7 \+ ]  O. e
120.21    h# W! f; m+ F& A: o
8 T9 p3 V5 [( Q0 z9 P# M9 P$ k7 J
= -(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))9 h  x# M$ |" K0 O

! o  l. u4 V$ k$ ~/ c1 f- t* v% z( H; A

9 p; T( }! _* k' x, P9 f1 w不知道这个问题是怎么产生的,正在找原因。% k: ?% y) e8 f' m9 |3 a! V

1 h9 L, _, G) i3 U1 I! U
) \2 L- S+ J$ x( t1 V; H
' J2 _+ `- d0 L/ X$ h; u

该用户从未签到

2#
发表于 2022-3-1 09:56 | 只看该作者
会不会溢出了

该用户从未签到

3#
发表于 2022-3-1 10:06 | 只看该作者
问题应该是2个整数相除结果的小数部分被舍掉了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-10-28 17:41 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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