有人可以告诉我如何在matlab中计算以下内容:
在哪里
g = 9.91
As = 1000
z = 10
zv = 30
zD = 10
pz = 999
Az = 500
好吧,有几种方法可以解决这个问题:
就像 Rudy 评论的那样,这是一个微不足道的分析积分,因为它是幂(z 1 ) 的积分。它的不定积分是:
F(z) = (g/As)(z2/2 - zvz)pzAz
根据微积分第二基本定理 ,通过将积分界代入 来计算定积分F(z)
,即:
ST = F(zd) - F(0) = (g/As)(zD2/2 - zvzD)pzAz
在 MATLAB 中,这将是:
ST = g / As * zD * (zD / 2 - zv) * pz * Az
ST =
-1.2375e+06
如果由于某种原因,您想通过近似积分来计算数值,您可以使用以下trapz
函数:
dz = 0.001; z = 0:dz:zD;
y = g / As * (z - zv) * pz * Az;
ST = trapz(z, y)
ST =
-1.2375e+06
或者用一个简单的总和做一个更粗略的近似:
ST = sum(y * dz)
ST =
-1.2387e+06