資源簡(jiǎn)介
可靠性算法,蒙特卡羅法的Matlab源代碼,能夠考慮任意分布的隨機(jī)變量,考慮多個(gè)失效模式,里面包含部分測(cè)試?yán)樱芍苯釉贛atlab軟件中調(diào)用執(zhí)行,文件中包含詳細(xì)的注釋。
代碼片段和文件信息
function?MCS(NEN)
%蒙特卡羅法
%適用范圍:隨機(jī)變量為任意分布,變量間獨(dú)立
%適用范圍:可進(jìn)行串聯(lián)多失效模式計(jì)算
%輸入?yún)?shù):NE?-?極限狀態(tài)函數(shù)索引,整數(shù)
%輸入?yún)?shù):N??-?抽樣數(shù)量,整數(shù)
????global?Prob
????clc
????tic
????if?nargin<1?NE?=?0;?end?????????????????????????????????%如果未定義方程索引,默認(rèn)使用索引0
????if?nargin<2?N?=?10000000;?end???????????????????????????%如果未定義抽樣數(shù)量,默認(rèn)使用10000000
????Prob?=?FunDist(?NE?);????????????????????????????????????%獲得方程相關(guān)公式、變量數(shù)目、變量參分布、變量參數(shù)
????x?=?XSamp(ProbN);???????????????????????????????????????%根據(jù)變量數(shù)目、分布、參數(shù),以及抽樣數(shù)量,生成變量隨機(jī)值
???
????%計(jì)算系統(tǒng)可靠性
????for?i=1:Prob.Ny
????????gValue(:i)=eval(Prob.Fung{i});??????????????????????%根據(jù)方程公式計(jì)算函數(shù)值
????end
????gmin=min(gValue[]2);???????????????????????????????????%假設(shè)所有失效模式為串聯(lián)關(guān)系,獲取所有函數(shù)值小于零索引
????XI=find(gmin<=0);????????????????????????????????????????%搜索所有g(shù)min值小于零的索引
????
????%
評(píng)論
共有 條評(píng)論