问题:一个三维区域,它由不等式xyz≤1和-5≤x≤5,-5≤y≤5,-5≤z≤5确定.γ(x,y,z)是给定密度.假设密度γ(x,y,z)=e0.5z.求出该物体的体积和质量.
解析这样一个积分将很困难或者是不可能的,但是用蒙特卡洛积分进行近似是很容易的.
<matlab>
N = input('Enter number of sample points: ');
gamma = inline('exp(0.5 * z)');
volumeOfBox = 10 * 10 * 10;
vol = 0;
mass = 0;
volsq = 0;
masssq = 0;
for i = 1: N
x = -5 + 10 * rand;
y = -5 + 10 * rand;
z = -5 + 10 * rand;
if x * y * z <= 1
vol = vol + 1;
mass = mass + gamma(z);
volsq = volsq + 1;
masssq = masssq + gamma(z) ^ 2;
end
end
volumeOfObject = (vol / N) * volumeOfBox
volvar = (1 / N) * ((volsq / N) - (vol / N) ^ 2)
volstd = sqrt(volvar)
massOfObject = (mass / N) * volumeOfBox
massvar = (1 / N) * ((masssq / N) - (mass / N) ^ 2)
massstd = sqrt(massvar)
</matlab>