① 怎麼計算把重心均勻分布在一個平面內
用巴普斯定理求,很簡單,首先半圓的重心在垂直於半圓的直徑的那條半徑上是不用懷疑的了,然後,設重心距離圓心距離為x,那麼,將半圓繞半徑轉一周,得到一個球,那麼有:2πx×1/2πr^2=4/3πr^3 解得 x=4r/3π
巴普斯定理內容:一個平面物體,質量均勻分布,令其上各質點沿垂直於平面的方向運動,在空間掃過一立體體積,則此體積等於面物體面積乘以物體質心在運動中所經過的路程.
② 如何用演算法或css布局將不確定數量的圖標均勻分布在
flex彈性盒:
網頁鏈接
③ 關於概率均勻分布演算法公式
不一樣,正態分布,和均勻分布是不同的概念,你把教材找到看一看,具體概念我也忘記了,今天晚上可以順便復習復習,我記得教材上面有公式。
④ 怎麼用r把均勻分布數據轉化為服從正太分布
流行病學的數據講究「三間分布」,即人群分布、時間分布和空間分布。其中的「空間分布」最好是在地圖上展示,才比較清楚。R軟體集統計分析與高級繪圖於大成,是最適合做這項工作了。關於地圖的繪制過程,謝益輝、邱怡軒和陳麗雲等人都早有文章講述,開R地圖中文教程之先河。由於目前指導畢業論文用到,因此研究了一下。本來因為網上教程很多,曾打消了寫些文字的計劃,但怡軒版主鼓勵說「教程者眾,整合者鮮」,所以才戰勝拖延症,提起拙筆綜述整合一下,並對DIY統計GIS地圖提出了一點自己的想法。1地圖GIS數據的來源與R繪制軟體包中國地圖GIS數據的官方數據可以在國家基礎地理信息中心的網站()裡面可以免費下載。官方公開的數據包括:地圖數據,及居住地、交通、河流等輔助數據。今年6月開始,官方正組織開始製作新版數據。老數據暫時無法下載,讀者要自行網路搜索,本文以舊版數據為例。舊版地圖數據中部分地名和地市區劃已經過時,使用時需注意。地圖數據有4個壓縮文件:bou1_4m.zip、bou2_4m.zip、bou3_4m.zip和bou4_4m.zip。bou代表邊界的意思,數字1~4代表國家、省、市、縣的4級行政劃分;4m代表比例是400萬分之一,這個比例的圖形是公開的。每個文件解壓縮後含有兩類文件:以字母p結尾的表示多邊形數據,用來繪制區域;以字母l結尾的文件是線形數據,用來繪制邊界。但是老版數據中,市級數據中缺少繪制區域的多邊形數據,讓市級分布圖的繪制稍麻煩一些,新版中也許會有改進。用R繪制地圖比較簡單。比如畫一下全國范圍的區域,可以用如下代碼:library(maptools)mydat=readShapePoly("maps/bou1/bou1_4p.shp")plot(mydat)但是,可以看出這樣繪制的地圖的形狀有些扁平。這是因為,在繪圖的過程中,默認把經度和緯度作為普通數據,均勻平等對待,繪制在笛卡爾坐標繫上造成的。其實,地球的球面圖形如何映射到平面圖上,在地理學上是有一系列不同的專業演算法的。地圖不應該畫在普通的笛卡爾坐標繫上,而是要畫在地理學專業的坐標繫上。在這一點上,R的ggplot2包提供了專門的coord_map()函數。所以推薦R的ggplot2包來繪制地圖。library(ggplot2)mymap=ggplot(data=fortify(mydat))+geom_polygon(aes(x=long,y=lat,group=id),colour="black",fill=NA)+theme_grey()print(mymap+coord_map())
⑤ 用matlab生成滿足一定間隔條件下的二維均勻分布。
程序如下
%%
circlenum=1;
N=100;
centre=15*rand([1,2]);
whilecirclenum<100
temp=15*rand([1,2]);
distance=sqrt((temp(1)-centre(:,1)).^2+(temp(2)-centre(:,2)).^2);
ifsum(distance<=(0.25*2))==0
centre=[centre;temp];
circlenum=circlenum+1;
end
end
angle=linspace(pi/4,9*pi/4,N);
x=cos(angle)*0.25;
y=sin(angle)*0.25;
figure;holdon;
forindex=1:circlenum
plot(x+centre(index,1),y+centre(index,2));
end
axis([-1,16,-1,16]);
%QQ1837329143
⑥ 點在一個圓面均勻分布的演算法
三角演算法演算法應該就是指蜂窩式分布.
其實就是在圓裡面畫六邊形網路,然後取六邊形的頂點.
⑦ 點在球面上均勻分布 在matlab中求解
今天回去想了一下,有另一種辦法生成球面上均勻分布的點
試了一下,速度比之前遺傳演算法的快,算500個點用了兩分鍾
也有可能是之間的演算法中計算凸包比較耗時間
新的辦法是基於一個物理模型,讓球面上的N個點互相之間有排斥力
排斥力隨點間的距離增加而衰減,例如可以是距離平方衰減的力
可以將問題比擬為球面上N個帶相同等量電荷的小點的運動問題
當運動最後平衡,小球停止運動的時候,由於斥力的存在,小球的分布就會是均勻的
這時候問題轉變為一個多變數微分方程的數值問題,最終的平衡狀態就是我們想要的
用最簡單的歐拉差分公式,為每個點設定x,y,z,vx,vy,vz六個狀態量,描述運動狀態
每一步計算跟新所有點的運動狀態,而初始狀態隨機分配,速度都為0
function[]=main()
N=12;%點數量
a=rand(N,1)*2*pi;%根據隨機求面均勻分布,先生成一個初始狀態
b=asin(rand(N,1)*2-1);
r0=[cos(a).*cos(b),sin(a).*cos(b),sin(b)];
v0=zeros(size(r0));
G=1e-2;%斥力常數,試驗這個值比較不錯
forii=1:200%模擬200步,一般已經收斂,其實可以在之下退出
[rn,vn]=countnext(r0,v0,G);%更新狀態
r0=rn;v0=vn;
end
plot3(rn(:,1),rn(:,2),rn(:,3),'.');holdon;%畫結果
[xx,yy,zz]=sphere(50);
h2=surf(xx,yy,zz);%畫一個單位球做參考
set(h2,'edgecolor','none','facecolor','r','facealpha',0.7);
axisequal;
axis([-11-11-11]);
holdoff;
end
function[rnvn]=countnext(r,v,G)%更新狀態的函數
%r存放每點的x,y,z數據,v存放每點的速度數據
num=size(r,1);
dd=zeros(3,num,num);%各點間的矢量差
form=1:num-1
forn=m+1:num
dd(:,m,n)=(r(m,:)-r(n,:))';
dd(:,n,m)=-dd(:,m,n);
end
end
L=sqrt(sum(dd.^2,1));%各點間的距離
L(L<1e-2)=1e-2;%距離過小限定
F=sum(dd./repmat(L.^3,[311]),3)';%計算合力
Fr=r.*repmat(dot(F,r,2),[13]);%計算合力徑向分量
Fv=F-Fr;%切向分量
rn=r+v;%更新坐標
rn=rn./repmat(sqrt(sum(rn.^2,2)),[13]);
vn=v+G*Fv;%跟新速度
end
這種辦法還有個好處,可以看到每步的結果,
以下是用演算法某次求12點均勻分布的變化過程
最後得到的20面體很接近正20面體了
⑧ 在matlab中求 球面上的均勻分布,近似分布也行,有沒有簡單的數學模型,或者利用遺傳演算法怎麼求解 求指教
求面分布的數據容易由球的球坐標變換獲得
x=r*cos(a).*cos(b);
y=r*sin(a).*cos(b);
z=r*sin(b);
球坐標a,b也就是我們常用的經緯坐標
經坐標a取值范圍是0~2pi(或者-pi~pi)
而緯坐標b取值范圍是-pi/2~pi/2
但是由於求坐標的面積元是 r^2sin(b)
也就是面積元從「赤道」向「兩極」地區變化是增加的
如果b的取值從-pi/2~pi/2是均勻的
那麼得到分布將會是「兩極」較密而,「赤道」較疏
我們需要用到sin的反函數asin
讓b=asin(c),而c是在-1~1范圍內的均勻分布
那麼得到的sin(b)就是均勻的,然後就可以得到球面上的均勻分布了
N=1e4;
a=rand(N,1)*2*pi;
b=asin(rand(N,1)*2-1);
x=cos(a).*cos(b);
y=sin(a).*cos(b);
z=sin(b);
plot3(x,y,z,'.');
這樣隨機生成的(x,y,z)點會在半徑為1的球面上均勻分布
plot3可以看出這些點的空間分布情況
⑨ n個點如何均勻分布在半徑為R的圓內。請提供演算法思想,謝謝。
同意whisky67的思路,一個圓 從圓心開始最大可以畫5個變長為R的正三角形,你可以畫下,然後每個正三角形可以繼續劃分成最大4個正三角形,至於好劃幾個正三角形要根據你的點數N,保證正三角形的數量>=n就行了,當然這是一種方法用三角形逼近的,如果n的數量非常大,其他圖形也一樣,正方形,等等,
⑩ 模型應用二
為了便於計算和分析,書中採用了如圖7.9所示的均質、各向同性承壓二維地下水流作為計算的假設水文地質模型。模擬區長110 m,寬110 m,形狀為正方形。含水層水平,如圖7.10所示,底板標高為0 m。頂板標高為30 m。含水層左右邊界為隔水邊界,上下邊界為定水頭邊界,邊界水位標高均值為100 m,初始水位標高均值為100 m。
根據工程要求,需要對該含水層的中心位置節點1、2、3、4、5、6、7、8、9所圍成的正方形區域進行疏水降壓,且水位降低值要≥10 m。優化設計的目標是如何設計疏干孔和配置疏干水量才能在滿足疏干條件下而使最終的穩定疏干總水量最小。該問題用最優化管理模型可表示為:
地下水系統隨機模擬與管理
式中:[A]——響應系數矩陣;
[Q]——水量決策列向量;
[S]——水位疏降約束要求列向量;
對該地下水管理模型採用分布參數地下水管理模型,並利用有限單元法計算響應系數。計算剖分網格如圖7.9所示。剖分總節點為157個,總單元數為268個。
根據上述剖分情況及管理問題的要求,設水位控制點為節點1,2,3,4,5,6,7,8,9。即1~9號節點水位疏降值≥10 m。並假設節點10,11,12,13,14,15,16,17,18,為可供選擇的疏乾井位。這樣地下水管理模型(7.2)可具體地表示為:
地下水系統隨機模擬與管理
圖7.9 計算模型及剖分圖
圖7.10 計算模型A—A′剖面圖
7.2.1 假設模型的隨機性計算討論
為了討論不同水文地質參數,不同的約束條件置信度水平要求對管理結果的影響,本實例就假設問題的機會約束規劃模型分別利用泰勒展開解法和人工遺傳演算法進行了計算分析。
7.2.1.1 Taylor展開求解方法
(1)假設模型中滲透系數為服從均勻分布的隨機變數,且滲透系數的均值為5 m/d,其他水文地質參數為確定性變數,即μ=5×10-4,H0(x,y,0)=100 m,Hb(x,y,t)|Γ1=100 m,滲透系數的方差 var(K)分別為1.333,0.750,0.333 和0.083。在每種方差條件下,又分別考慮約束條件的置信水平為α=1.0,α=0.95,α=0.9,α=0.85和α=0.8 5種情況。通過20種方案的計算討論,可得滲透系數 K 的方差 var(K)、約束條件的置信度水平α、總疏水量及其分配之間的相互關系如表 7.3 所示。表 7.3 的計算結果如圖 7.11 所示。由圖7.11明顯可見:在相同的約束條件置信度水平α下,隨著var(K)的增加,其總疏水量呈增加趨勢;當var(K)一定時,隨置信度水平α的增加,總疏水量亦呈增大趨勢。
表7.3 Taylor展開法對滲透系數(K)的隨機性計算結果表
圖7.11 滲透系數不確定信水平、模型可靠性及總疏水量關系圖
(2)假設模型中的彈性給水度為服從均勻分布的隨機變數,且其均值為5×10-4,其他水文地質參數均為確定性變數,即 Kx=Ky=5 m/d,H0(x,y,0)=100 m,Hb(x,y,t)100 m。分別就彈性給水度的方差var(μ)為0.533×10-7,0.3×10-7,0.133×10-7,0.33×10-8,約束條件的置信度水平分別為1.0,0.95,0.90,0.85,0.80討論計算了彈性給水度隨機性與管理結果之間的關系。表7.4為 var(μ)、α、總疏水量及配置之間的關系。圖7.12為表7.4中計算結果的圖形表示。由圖 7.12 可見:在相同的約束條件置信度水平α下,隨著彈性給水度方差var(μ)增加,總疏水量呈增大趨勢,但其增加的幅度非常小。在同樣的 var(μ)條件下,隨著約束條件置信度水平α的增加,總疏水量亦呈增加趨勢,且這種增加的幅度亦非常小。
地下水系統隨機模擬與管理
圖7.12 給水度不確定信水平、模型可靠性及總疏水量關系圖
(3)假設一類邊界條件上的水位為服從均勻分布的隨機變數,且其均值為100 m,其他水文地質參數均為確定量,即 Kx =Ky =5 m/d,μ=5×10-4,H0(x,y,0)=100m。分別就一類邊界水位的方差 var(Hb)=0.0833,0.0533,0.030,0.0133,約束條件的置信度水平要求為1.0,0.95,0.90,0.85,0.80進行了隨機管理模型的計算討論,表7.5為各種組合條件下的計算結果。圖7.13為其計算結果的圖形表示。由圖7.13可見,在相同的置信度α下,隨著方差 var(Hb)的增加,總疏水量呈明顯增加趨勢。當 var(Hb)一定時,隨著約束條件置信度水平的提高,其總疏水量亦呈明顯的增加趨勢。且在方差值不大的情況下,總疏水量總體的變化幅度較大。
表7.4 Taylor展開法對彈性給水度(μ)的隨機性計算結果表
圖7.13 一類邊界水位不確定信水平、模型可靠性及總疏水量關系圖
表7.5 Taylor展開法對一類邊界水位(Hb)的隨機性計算結果表
(4)假設初始水位 H0(x,y,0)為服從均勻分布的隨機變數,且其均值為100 m,而其他水文地質參數均為確定性變數,即 Kx=Ky=5 m/d,μ=5×10-4文中分別就初始水頭的方差var(H0)為8.33,5.33,3.00和1.333,約束條件的置信度水平為1.0,0.95,0.90,0.85,0.8進行了隨機管理模型計算討論,表7.6為多種組合條件下的計算結果。圖7.14為計算結果的圖形表示。由表7.6和圖7.14可見初始水頭的方差並不影響總疏干水量。因此,初始水位的高低並不影響最後穩定的疏干水量。
7.2.1.2 人工遺傳演算法
對於同樣的假設模型和問題,與Taylor展開法同樣的計算假設條件,採用人工遺傳演算法進行了管理模型的優化求解。為了減少遺傳演算法的工作量,初始解群體由1000個隨機解個體中依其適應度函數值的優劣性選出;並設基本進化運算參數為:
表7.6 Taylor展開法對初始水頭(H0)的隨機性計算結果表
圖7.14 初始水位不確定信水平、模型可靠性及總疏水量關系圖
群體規模 m=30
交叉計算概率 Pc=0.7
變異計算概率 Pm=0.1
進化代數 n=60
其計算結果見表7.7至表7.10及圖7.15至圖7.18。
表7.7 人工遺傳演算法對滲透系數(K)的隨機性計算結果
圖7.15 滲透系數不確定信水平、模型可靠性及總疏水量關系圖
表7.8 人工遺傳演算法對彈性給水度(μ)的隨機性計算結果
圖7.16 給水度不確定信水平、模型可靠性及總疏水量關系圖
表7.9 人工遺傳演算法對一類邊界條件(Hb)的隨機性計算結果
圖7.17 一類邊界水位不確定信水平、模型可靠性及總疏水量關系圖
表7.10 人工遺傳演算法對初始水頭(H0)的隨機性計算結果表
圖7.18 初始水位不確定信水平、模型可靠性及總疏水量關系圖
7.2.1.3 隨機變數聯合分布的Monte-Carlo 計算方法
前面分別利用Taylor展開方法和人工遺傳方法就單個隨機水文地質參數的情況進行了計算討論。但我們知道我們所遇到的實際問題往往是多個隨機變數並存,且不同隨機變數的方差也不盡相同,其隨機變數的隨機分布概型也各不相同。本節分別就含水層的滲透系數(K),彈性給水度(μ),初始水頭分布(H0)及一類邊界水頭值(Hb)為服從均勻分布的隨機變數和正態分布的隨機變數進行了聯合分布計算討論,並假設不同隨機變數之間相互獨立。隨機管理模型的響應系數均值和方差利用Monte-carlo隨機有限元法求解。經過計算分析,選擇的隨機參數樣本數為300。
(1)各個參數服從均勻分布的聯合分布計算
假設各隨機水文地質參數服從均勻分布,且不同水文地質參數之間相互獨立。各隨機參數的均值分別為:
地下水系統隨機模擬與管理
在上述均值條件下,分別就各隨機參數的不同方差和同一方差條件下的不同約束條件置信度水平進行了計算。
當計算方差為:
地下水系統隨機模擬與管理
計算結果見表7.11和圖7.19。
表7.11 獨立均勻分布參數聯合分布計算結果表
當計算方差為:
地下水系統隨機模擬與管理
圖7.19 總疏水量與約束置信度水平相關曲線
計算結果見表7.12和圖7.20。
表7.12 獨立均勻分布參數聯合分布計算結果
圖7.20 總疏水量與約束置信度水平相關曲線
當計算方差為:
地下水系統隨機模擬與管理
計算結果見表7.13和圖7.21。
表7.13 獨立均勻分布參數聯合分布計算結果
圖7.21 總疏水量與約束置信度水平相關曲線
當計算方差為:
地下水系統隨機模擬與管理
計算結果見表7.14和圖7.22。
表7.14 獨立均勻分布參數聯合分布計算結果
(2)各個隨機變數服從N(μ,σ2)正態分布的聯合分布計算
為了研究隨機變數的不同分布形式對隨機地下水管理模型結果的影響,在計算了隨機變數服從均勻聯合分布條件後,書中又假設每個隨機變數為服從N(μ,σ2)正態分布情況,並假設其均值分別為:
圖7.22 總疏水量與約束置信度水平相關曲線
地下水系統隨機模擬與管理
並就不同參數方差σ2和不同約束條件置信度水平α進行了計算。表7.15至表7.18為不同方差和α組合條件下的計算成果表。
表7.15計算的隨機參數分布為:
地下水系統隨機模擬與管理
計算結果如下:
表7.15 獨立正態聯合分布計算結果表
表7.16計算的隨機參數分布為:
地下水系統隨機模擬與管理
計算結果如下:
表7.16 獨立正態聯合分布計算結果表
表7.17計算的隨機參數分布為:
地下水系統隨機模擬與管理
計算結果如下:
表7.17 獨立正態聯合分布計算結果表
表7.18計算的隨機參數分布為:
地下水系統隨機模擬與管理
計算結果如下:
表7.18 獨立正態聯合分布計算結果表
由以上表中計算結果可知,隨機變數為正態分布時,優化模型的計算結果與隨機變數為均勻分布時所呈現的規律完全相似。因此,影響管理結果的主要因素是隨機變數的種類和方差的大小,而與其具體分布形式的關系並不很大。
7.2.2 計算結果的討論與分析
由前述各節計算結果可見由於水文地質參數的隨機性,使得地下水管理模型的管理結果變化很大,且不同的水文地質參數,不同的參數不確定性水平(方差),不同的管理結果可靠性要求對管理結果的影響是不同的。總體來看,參數的隨機性與管理結果之間有如下關系。
(1)隨著隨機參數不確定性水平的增加,在相同疏干約束條件下,總疏干水量呈增大規律。
(2)滲透系數K和一類邊界條件Hb的隨機性對管理結果的影響最明顯。彈性給水度的隨機性對管理結果的影響很小。
(3)含水層的初始水位隻影響疏干時間,而對最終的穩定疏干水量沒有影響。
(4)如果隨機參數的方差越大,要達到同樣的疏干水平和疏干置信度所需的疏干水量增大。
(5)對於同樣的參數不確定性水平(即同樣的var(·)),則隨著對疏干可靠程度(約束條件成立的置信度水平α)要求的增加,疏干水量明顯增加。而且這種增加並非與α成線性關系。尤其要使約束條件成立的概率為100%時,其總疏干水量增加幅度很大。
從下面的分析中可見,我們可以得知這些變化規律完全服從地下水運動的基本規律。由達西公式得經過斷面ω的流量公式為:
地下水系統隨機模擬與管理
式中:Q——抽水量;
K——含水層滲透系數;
Hb——邊界水位標高;
Hw——井中水位標高;
d——疏水井到邊界距離;
ω——過水斷面積。
由該式可見,當d、ω和Hw(由疏干約束條件所定)固定時,對Q影響最大的變數就是Hb和K,即邊界水位和滲透系數。這與本文計算結果所反映的規律完全一致。
由地下水隨機管理模型的約束條件表達式
地下水系統隨機模擬與管理
可知,如果水文地質參數的方差增加,必然導致管理模型中響應系數方差 r2(i,j,k)的增加,要使約束條件中不等式成立,必然要求決策變數 Q 的增加(因Φ-1[α(j,k)]<0)。這也說明,隨著隨機參數不確定性水平(方差)的增加,要保證同樣的疏干深度,必然引起總疏水量的增加。由上式同樣可知,在其他參數一定的條件下,隨著約束條件滿足的置信度水平α的提高,則小概率事件發生的概率1-α變小,從而使Φ-1(α)的減小,要使不等式成立,定會產生疏水量 Q 的增加。這里要注意Φ-1(α)與α之間的關系。由此可見,分析結論與計算結果所反映的規律完全一致。
對隨機地下水管理模型及其計算結果的分析表明:當存在隨機水文地質參數時,管理模型的決策結果與參數的不確定性水平(方差大小)及對管理結果的可靠性要求水平(α)之間存在著密切關系。這對制定風險決策具有重要意義。
為了進一步分析假設模型計算結果,我們將不同條件下的決策結果代入地下水疏干模型進行了不同隨機參數的疏干效果檢驗。計算結果見表7.19至表7.22。
表7.19 考慮滲透系數服從[3,7]均勻分布,var=1.333,E(K)=5 m/d約束條件置信水平α=0.9條件下疏干計算結果
表7.20 考慮第一類邊界條件為服從[99.5,100.5]均勻分布,var=0.0833 E(Hb)=100,約束條件置信水平α=0.9條件下疏干計算結果
表7.21 考慮給水度服從[1×10-4,1×10-5]均勻分布,var=0.533×10-7,-E(μ)=5×10-4,約束條件置信水平α=0.9條件下的疏干計算結果
表7.22 考慮初始水位為服從[95,105]均勻分布,E(H0)=100,var(H0)8.33,約束條件置信水平α=0.9條件下疏干計算結果
由疏干模擬計算結果可見:疏干結果較好地反映了客觀情況,在約束條件置信度水平要求為0.9時,當隨機參數出現極為不利於疏乾的小概率事件時,實際疏干降深一般都不能滿足疏干要求。當隨機參數出現在其均值附近時,實際疏干降深基本能夠滿足疏干要求。當隨機參數出現最有利於疏乾的小概率事件時,實際疏干降深都大於疏干要求。