-1
我有一個扁平球體x^2 +(0.01)y^2 + z^2 = 1。我想在Matlab中找到這個球體上的點。請幫助我是新的。任何人都可以幫助我找到扁平球體上的點
我有一個扁平球體x^2 +(0.01)y^2 + z^2 = 1。我想在Matlab中找到這個球體上的點。請幫助我是新的。任何人都可以幫助我找到扁平球體上的點
該對象被稱爲橢球體。基本上,您可以採用與採樣球體相同的方式對其表面進行採樣。如果你想保持一定的密度分佈,這可能會變得更加困難。但是,如果你只是想要一些分佈,這裏是你如何能做到這一點:
phi := random number in [-pi, pi]
theta := random number in [-pi/2, pi/2]
x = sin phi cos theta
y = cos phi cos theta/sqrt(0.01)
z = sin theta
對於指定的缸,你會怎麼做:
phi := random number in [-pi, pi]
h := random number for the y-values
x = sin phi * sqrt(1.4)
y = h
z = cos phi * sqrt(1.4)
然後我如何分配缸x^2 + z^2 = 1.4 – Murtaza
那麼怎麼樣'X = 0,Y = 0, Z = 1'?或者'x = 0,y = -10,z = 0'? – user268396
一般來說,這種方法是在x,y,z的上邊界和下邊界之間生成隨機座標,然後看哪一個滿足方程。不幸的是浮點和測試的平等性不太好。 – user268396
但是我想要生成上百個點 – Murtaza