用Matlab编的计算结构可靠指标的改进一次二阶矩法程序(验算点法)

题目:编制改进一次二阶矩法计算可靠指标的程序,并给出算例,要求提供源程序

选取的算例为:z=g(x,y)=x*y-1140,其中x,y服从正态分布,μx=38,Vx=0.1, μy=38,Vy=0.05

本程序采用Matlab编写。

选取β1=3.0,β2=2.5

计算结果为:可靠指标β=4.2672,最终验算点为:(22.8430 , 49.9060),在验算点处功能函数值为:1.2354e-004

%保存为strRlbt.m,在Matlab命令窗口中输入strRlbt执行即可

N = 2;%变量个数

miu = [38 54];%均值

v = [0.1 0.05];%变异系数

sgma = miu .* v;%方差

syms x y

g = sym('x * y - 1140');%功能函数

jacg = jacobian( g ,[x;y]);%计算雅可比矩阵

initvalue = [miu;v;sgma];%用作函数参数

%选取beta,定义x0=miu

beta1 = 3.0;

xopt0 = [38 54];

alpha0 = zeros(1,2);

[ alpha1 , xopt1 , result ] = calforbeta( initvalue , beta1 , alpha0 , xopt0 , jacg , g );

if result == 1

disp('第一次假定的可靠指标');

return

end

%再次假定beta

beta2 = 2.5;

xopt0 = miu - beta2 * alpha1 .* sgma;

gvalue = jacgfunc(jacg,xopt1);

alpha0 = (sgma .* gvalue) / sqrt(sum((sgma .* gvalue).^2));

[ alpha2 , xopt2 , result ] = calforbeta( initvalue , beta2 , alpha0 , xopt0 , jacg , g );

if result == 1

disp('第二次假定的可靠指标');

return

end

%beta迭代求解

g1 = gfunc(g,xopt1);

g2 = gfunc(g,xopt2);

eps = 0.1; %精度

while abs(g2) > eps

temp = beta2;

beta2 = beta2 - (beta2 - beta1)/(g2 - g1) * g2;

beta1 = temp;

[ alpha2 , xopt2 , result ] = calforbeta( initvalue , beta2 , alpha1 , xopt1 , jacg , g );

temp = g2;

g2 = gfunc(g,xopt2);

g1 = temp;

if result == 1

break

end

end

disp('可靠指标为:');

disp(beta2);

disp('最终验算点为:');

disp(xopt2);

disp('在验算点处功能函数值为:');

disp(g2);

function g_out = gfunc( g , x_in )

%功能函数值计算

x = x_in(1);

y = x_in(2);

g_out = eval(g);%函数值

%将以上内容保存为gfunc.m

function g_out = jacgfunc( jacg , x_in )

%功能函数偏导数计算,即雅可比矩阵计算

x = x_in(1);

y = x_in(2);

for i = 1:2

g_out(i) = eval(jacg(i));%1为对x的导数,2为对y的导数

end

%将以上内容保存为jacgfunc.m

function [ alpha1 , xopt1 ,result ] = calforbeta( initvalue , beta0 , alpha0 , xopt0 , jacg , g)

%对选取的beta进行计算

result = 0;

N = length(xopt0);

alpha = alpha0;

xopt = xopt0;

%initvalue为初始值

miu = initvalue(1,:);%第一行为均值

v = initvalue(2,:);%第二行为变异系数

sgma = initvalue(3,:);%第三行为方差

eps = 0.1;

while 1

%功能函数达到精度则

matlab二次二阶距,用Matlab改进一次二阶矩法程序.doc相关推荐

  1. matlab 计算变异系数,[转载]用Matlab编的计算结构可靠指标的改进一次二阶矩法程序(验算点法)...

    题目:编制改进一次二阶矩法计算可靠指标的程序,并给出算例,要求提供源程序,算法语言不限. 选取的算例为:z=g(x,y)=x*y-1140,其中x,y服从正态分布,μx=38,Vx=0.1, μy=3 ...

  2. newmark法 matlab,newmark法程序newmark法程序.doc

    newmark法程序newmark法程序 用matlab编程法 一.法原理 Newmark-?法是一种逐步积分的方法,避免了任何叠加的应用,能很好的适应非线性的反应分析. Newmark-?法假定: ...

  3. 用matlab解决向前、向后和改进欧拉法求解微分方程(编写程序)

    分别使用向前欧拉法.向后欧拉法与改进dy欧拉法求解微分方程(编写程序) 在matlab中:Π用pi表示 编写程序 function [y1,y2,y3,y4]=exam4_6(a,b,k) h=(b- ...

  4. 微分方程一维抛物热传导方程向前向后欧拉C-N格式二阶BDF格式MATLAB源码 显式欧拉,隐式欧拉,梯形公式,改进欧拉

    微分方程一维抛物热传导方程向前向后欧拉C-N格式二阶BDF格式MATLAB源码 显式欧拉,隐式欧拉,梯形公式,改进欧拉 五点差分,九点差分 差分格式,紧差分格式 直拍,只有pdf版方法说明 word版 ...

  5. 利用matlab实现DMD动态模态分解(在一维信号或二维流场矢量中的应用)

    利用matlab实现DMD动态模态分解(在一维信号或二维流场矢量中的应用) 0 前言 0.1 特征根的计算与含义 1 DMD的基本思路 2 一维DMD算法 3 二维DMD算法 4 总结 (2020年9 ...

  6. matlab求二阶电路图,MATLAB实验MATLAB数值计算:二阶电路时域研究

    <MATLAB实验MATLAB数值计算:二阶电路时域研究>由会员分享,可在线阅读,更多相关<MATLAB实验MATLAB数值计算:二阶电路时域研究(9页珍藏版)>请在人人文库网 ...

  7. MATLAB常见非线性可视化绘制方法-相图与相空间(二维线性相图与非线性相空间)

    MATLAB常见非线性可视化绘制方法-相图与相空间(二维线性相图与非线性相空间) 0 引言 1 简单二阶微分方程 1.1 最简单的线性系统 1.2 简单的非线性系统 1.3 简单的时变系统 2 线性系 ...

  8. 差分方程matlab实验报告,实验二微分方程与差分方程模型Matlab求解

    实验二微分方程与差分方程模型Matlab求解 实验二: 微分方程与差分方程模型Matlab求解 一.实验目的 [1] 掌握解析.数值解法,并学会用图形观察解的形态和进行解的定性分析: [2] 熟悉MA ...

  9. matlab差分方程和微分方程,实验二微分方程与差分方程模型matlab求解

    实验二微分方程与差分方程模型matlab求解 实验二: 微分方程与差分方程模型 Matlab 求解一.实验目的[1] 掌握解析.数值解法,并学会用图形观察解的形态和进行解的定性分析:[2] 熟悉 MA ...

最新文章

  1. java和c 的rsa加密算法_RSA算法签名技术Java与C++统一(加密解密结果一样)
  2. GCD BZOJ2818 [省队互测] 数学
  3. 从unmarshal带json字符串字段的json说起
  4. ASP.NET 2.0关于用户登录限制问题实例:防止同一用户同时登陆
  5. python入门教程软件-程序员带你十天快速入门Python,玩转电脑软件开发(四)
  6. Paw 百度ai_直面落地!百度EasyDL产业智能创新大赛成果覆盖能源、交通、水利民生重业...
  7. IDEA 插件开发入门教程
  8. 组态王串口服务器虚拟串口,串口服务器USR-N520连接组态王设置步骤
  9. python_day4作业
  10. 如何在引导程序中将容器垂直对齐
  11. 从张一鸣和黄峥的离职信中,我们发现了四个共同点
  12. python:np.vstack, np.hstack
  13. java开发职业规划
  14. 一个普通java程序员的10年...泪奔 o(╥﹏╥)o o(╥﹏╥)o
  15. 介绍:一款Mathematica的替代开源软件Mathetics
  16. sort(function(a,b){return a -b})函数排序问题
  17. 技术大佬:我去,你写的 switch 语句也太老土了吧
  18. 1.Requests库
  19. python中的开根、取整、求对数
  20. 计算机101页报告翻译,冯诺伊曼 101页报告 First Draft of a Report on the EDVAC

热门文章

  1. centos7安装php8,centos8安装php7.4
  2. 【详细教程】教你如何使用Node + Express + Typescript开发一个应用
  3. 产品经验谈:产品经理需要熟知几种常用思维模型
  4. macbook pro python开发_Mac打造python2 python3开发环境
  5. oracle 计算中位数,SQL 如何计算每个分组的中位数
  6. 深入理解表单脚本系列第一篇——表单对象
  7. 数据可视化的基本原理——视觉通道
  8. [EffectiveC++]item34:区分接口继承和实现继承
  9. Cisco TrustSec(理解)
  10. 【BZOJ 1098】办公楼(补图连通块个数,Bfs)