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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
遇到一个很奇怪的问题,下边这个公式使用Matlab和EXCEL计算结果相同且正确8 ~7 g1 ?, E% L3 G

# q0 R3 O" e" Q, I0 u使用单片机和csharp测试又是另一个结果: k" q: t' \* h# V/ ?

! Z2 S- t& a/ t4 l/ z( A/ |+ Q -(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))8 Q9 f0 Z& e" o' |4 @$ V1 H/ c2 g5 z
) u! C/ B3 W! @8 F# c  H- J
单片机和csharp计算a=-9.58444976;* V0 s/ Q+ Y& |% O) ?" M  T8 _
0 P7 W3 t/ c. e% i  p& R3 B1 |" Y
double L =    270;: D8 L  y9 F( Y- w2 E
double b =    14.33;
& i$ U6 j: \" @double c =    20.25;# X/ N9 X  ], b. P8 B3 x
double h =    120.21;
, |$ t1 m8 ^6 b# @# C: x! T
4 K9 U( m8 V; X! a& z 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)))7 S9 I) c6 Z4 O0 Z! B6 [) `6 w4 \
;' O0 b1 }* `. `9 N4 _
! ^% E' O/ L6 [$ i

9 A: i4 s. d- KEXCEL和Matlab计算a=126.3747;' c' I: g- k9 L4 r
& b- }* K5 ^$ l/ m8 `3 d7 g
270    L) Z7 t  X, _! ?
14.33    b# N4 L4 s3 I: n3 \
20.25    c
6 u: c+ r) R) P1 X/ H, Y120.21    h. A! @. |  r: Z& f5 E) w

  F3 j6 s3 F; Y4 N8 Y) K5 |* b= -(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 J. _) g% e% q, J7 u0 Q! r' |: n/ r  S+ Z

) D) F( x: }8 |9 K4 v3 R$ _
4 p* d2 d' h  A" \/ X不知道这个问题是怎么产生的,正在找原因。6 C5 x+ f3 V; X
0 Y* T+ S( _  [1 x. ~7 ]

& M1 y+ x; d* S2 J+ b! |6 S6 C9 M" G$ a# [1 {5 T/ B

该用户从未签到

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

该用户从未签到

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

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-23 16:06 , Processed in 0.156250 second(s), 23 queries , Gzip On.

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

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

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