当量正态化的matlab程序

发布时间:2021-06-07

案例:已知非线性状态方程 567fr-0.5H2 =0, f 服从正态分布, =0.6 ,变异系数 =0.131 , r 服从正态分布, =2.18 , =0.03 ; H 服从对数正态分布, =32.8, =0.03. 用 JC 法计算可靠指标 及设计验算点坐标( f* , r* , H* )。 解:功能函数梯度为 g ( f , r , H ) = ( 567r , 567f , -H ) T 。关于如何确定对数正态分布的参数见附录。

Matlab 代码如下:

clear;clc;

muX=[0.6;2.18;32.8]; cvX=[13.1;3;3]/100; sigmaX=cvX.*muX; (初始均值,变异系数,标准差)

sLn=sqrt(log(1+(sigmaX(3)/muX(3))^2));mLn=log(muX(3))-sLn^2/2; (对数正态分布的初始正态化)

muX1=muX;sigmaX1=sigmaX;

x=muX; normX=eps;

while abs(norm(x)-normX)/normX>1e-6

normX=norm(x);

g=567*x(1)*x(2)-x(3)^2/2;

gX=[567*x(2);567*x(1);-x(3)];

cdfX=logncdf(x(3),mLn,sLn); (求当量正态分布函数)

pdfX=lognpdf(x(3),mLn,sLn); (求当量正态分布的概率密度函数) nc=norminv(cdfX); (求当量正态分布函数的反函数)

sigmaX1(3)=normpdf(nc)/pdfX; (求当量正态分布函数的标准差) muX1(3)=x(3)-nc*sigmaX1(3);

gs=gX.*sigmaX1;

alphaX=-gs/norm(gs); (cosx)

bbeta=(g+gX'*(muX1-x))/norm(gs) (可靠度计算)

x=muX1+bbeta*sigmaX1.*alphaX (新的样本点)

end

结果:设计验算点坐标( f* , r* , H* ) = ( 0.4561 , 2.1590 , 33.4178 ),beta =1.9645 。

当量正态化的matlab程序.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219