2016-04-21 89 views
1

考慮n> 3的n立方體(定義爲here)。假設它以笛卡爾平面的原點爲中心,每條邊的長度爲10.在Matlab中隨機繪製超立方體

我想在Matlab中編寫一段代碼,允許我從該超立方體中隨機繪製一個點(帶有n個座標)。有沒有辦法做到這一點,而無需預先定義一個n維網格?在我的特殊應用程序n = 11。

回答

3

爲了從側面s n維超立方體的體積抽1點,在具有相同概率的所有點,你叫

s = 10; 
point = (rand(1,n)-0.5)*s; 

,如果你想吸引很多具有較大數量的更換1點一次。

+0

哪裏是中心?是否有可能使用與原點不同的中心? – user3285148

3

擴展喬納斯的回答,如果要指定一箇中心,做到這一點:

center = [1.0 -1.0 2.0 -2.0 ...]; 
s = 10; 
point = (rand(1,n)-0.5)*s + center;