-1

誰かがmatlabで以下を計算する方法を教えてもらえますか:

ここに画像の説明を入力

どこ

g = 9.91
As = 1000
z = 10
zv = 30
zD = 10
pz = 999
Az = 500
4

1 に答える 1

2

さて、これを行うにはいくつかの方法があります:

分析的アプローチ

Rudyがコメントしたように、これは累乗(z 1 )の積分であるため、分析的に行うのは簡単な積分です。その不定積分は次のようになります。

F(z) = (g/As)(z2/2 - zvz)pzAz

微積分学の第2の基本定理によれば、定積分は、積分境界をに代入することによって計算されます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
于 2012-09-15T22:24:20.787 に答える