【MATLAB第66期】#源码分享 | 基于MATLAB的PAWN全局敏感性分析模型(有条件参数和无条件参数)

【MATLAB第66期】#源码分享 | 基于MATLAB的PAWN全局敏感性分析模型(有条件参数和无条件参数)

文献参考
Pianosi, F., Wagener, T., 2015. A simple and efficient method for
global sensitivity analysis based on cumulative distribution functions.
Environ. Model. Softw. 67, 1�11. doi:10.1016/j.envsoft.2015.01.004

一、有条件参数

clear;% Ishigami-Homma function
f = @(x,p) sin(x(1)) + p.a * sin(x(2)^2) + p.b * x(3)^4 * sin(x(1));
p.a = 2; p.b = 1;
ih = @(x) f(x, p);% Bounds
lb = ones(1,3) * -pi; ub = ones(1,3) * pi;% Parameters from Figure 4's caption
n=15;
Nu = 100;
Nc = 100; % Is actually 50 in the paper% Other parameters
npts = 100; seed = 4;[KS,xvals,y_u, y_c, par_u, par_c, ft] = PAWN(f, p, lb, ub, Nu, n, Nc, npts, seed);m1 = min([y_c, y_u']);
m2 = max([y_c, y_u']);
[f,ci] = ksdensity(y_u, linspace(m1,m2,npts), 'Function', 'cdf');% Begin Plotting
subplot(331); ylabel('y'); hold on;box on;
subplot(334); ylabel('CDF'); hold on;  box on;
subplot(337); ylabel('KS'); hold on; xlabel('x_1'); box on;
subplot(338); xlabel('x_2'); hold on;box on;
subplot(339); xlabel('x_3'); hold on;box on;
for ind=1:length(lb)subplot(330+ind)plot(par_c(:,ind),y_c, 'xk', 'markersize', 2);
endcrit_c = [1.22,1.36,1.48,1.63,1.73,1.95]; % 0.1, 0.05, 0.025, 0.010, 0.005, 0.001
critval = crit_c(2) * sqrt((Nu+Nc)/(Nu*Nc));for ind=1:length(lb)subplot(333+ind)plot([-100, 100], [1, 1], 'k--'); hold onplot(ci,ft((ind-1)*n+1:ind*n,:), 'color', [0.8,0.8,0.8]); ylim([0,1]);plot(ci,f, 'r:','linewidth',4); ylim([0,1.2])hold off
endcolData = linspace(0,n,n)'/n; colData = [colData colData colData];for ind=1:length(lb)subplot(336+ind)[xtoplot, indices] = sort(xvals(ind,:));ytoplot = KS(ind, :); ytoplot = ytoplot(indices);plot([min(xvals(:)), max(xvals(:))], [critval,critval], 'k--'); hold on;plot(xtoplot, ytoplot, 'k');scatter(xtoplot, ytoplot, [],  colData, 'filled', 'markeredgecolor', 'k'); ylim([0,1])hold off
enddisp(strcat('Median of KS : ', num2str(median(KS,2)')))
disp(strcat('Max of KS : ', num2str(max(KS'))))

在这里插入图片描述

二、无条件参数

clear;%目标函数
model=@(x)x(1)^2+2*x(2)+x(3)-1;% 参数范围
lb=[0 0 0 ];%每个参数的下限向量(1xM)
ub=[10 10 10];%每个参数的上界的向量(1xM)
% 参数设置
Nu = 100;%Nu:无条件参数空间的样本数% 其他参数
npts = 100;%npts:用于核密度估计的点数
seed = 4;%seed:随机数种子[y_u,  par_u ,f,ci] = PAWN(model, lb, ub, Nu, npts, seed);
%初始化%y_u 无条件模拟的输出%par_u 样本生成%f 用核密度评估无条件样本的CDF(分布函数),表示连续型随机变量x的概率
%f返回x中样本数据的概率密度估计f。
%该估计基于正核函数,并在覆盖x中数据范围的等间距点ci处进行评估。% Begin Plotting
figure()
subplot(231); ylabel('y'); hold on;box on;
subplot(234); ylabel('CDF'); hold on;  box on;
for ind=1:length(lb)subplot(230+ind)plot(par_u(:,ind),y_u, 'xk', 'markersize', 2);xlabel(['x' num2str(ind)])
endfor ind=1:length(lb)subplot(233+ind)plot([-100, 100], [1, 1], 'k--'); hold onplot(ci,f, 'r:','linewidth',4); ylim([0,1.2])xlabel(['x' num2str(ind)])hold off
end

在这里插入图片描述

三、代码获取

后台私信“66期”获取下载链接。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/28069.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zuul实现黑名单,request多次读取问题,stream close

一,背景及设计 1.需要在网关实现黑名单功能,实现拦截指定接口。黑名单用户,会加入指定黑名单列表,关联对应功能,如用户登录,用户下单,用户接单。 2.表设计 平台表:不同系统 黑名单…

Grafana 曲线图报错“parse_exception: Encountered...”

问题现象 配置的Grafana图报错如下: 原因分析 点开报错,可以看到报错详细信息,是查询语句的语法出现了异常。 变量pool的取值为None 解决方案 需要修改变量pool的查询SQL,修改效果如下: 修改后&#x…

HTML5注册页面

分析 注册界面实际上是一个表格&#xff08;对齐&#xff09;&#xff0c;一行有两个单元格。 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevic…

行业追踪,2023-08-08

自动复盘 2023-08-08 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…

Vue2 第二十节 vue-router (四)

1.全局前置路由和后置路由 2.独享路由守卫 3.组件内路由守卫 4.路由器的两种工作模式 路由 作用&#xff1a;对路由进行权限控制 分类&#xff1a;全局守卫&#xff0c;独享守卫&#xff0c;组件内守卫 一.全局前置路由和后置路由 ① 前置路由守卫&#xff1a;每次路由…

设计模式之策略模式(Strategy)

一、概述 定义一系列的算法&#xff0c;把它们一个个封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的类而变化。 二、适用性 1.许多相关的类仅仅是行为有异。“策略”提供了一种用多个行为中的一个行为来配置一个类的方法。 2.需要使用一个算法的不同变体。…

Python-OpenCV 图像的基础操作

图像的基础操作 获取图像的像素值并修改获取图像的属性信息图像的ROI区域图像通道的拆分及合并图像扩边填充图像上的算术运算图像的加法图像的混合图像的位运算 获取图像的像素值并修改 首先读入一副图像&#xff1a; import numpy as np import cv2# 1.获取并修改像素值 # 读…

如何从 Android 设备恢复已删除的文件?

从 Android 设备恢复已删除的文件很简单&#xff0c;但您需要了解内部恢复和SD 卡恢复之间的区别。 目前销售的大多数 Android 设备都配备了 SD 卡插槽&#xff08;通常为 microSD&#xff09;&#xff0c;可以轻松添加额外的存储空间。该存储空间可用于存储照片、视频、文档&a…

Web压测工具http_load原理分析

01、前言 http_load是一款测试web服务器性能的开源工具&#xff0c;从下面的网址可以下载到最新版本的http_load&#xff1a; http://www.acme.com/software/http_load/ 这个软件一直在保持着更新&#xff08;不像webbench&#xff0c;已经是十年的老古董了。 webbench的源…

SpringBoot复习:(22)ConfigurationProperties和@PropertySource配合使用及JSR303校验

一、配置类 package cn.edu.tju.config;import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.PropertySource; import org.springframework.stereotype.Component;Component ConfigurationPropertie…

HOT79-跳跃游戏 II

leetcode原题链接&#xff1a;跳跃游戏 II 题目描述 给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。 每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说&#xff0c;如果你在 nums[i] 处&#xff0c;你可以跳转到任意 nums[i j] 处: 0 < j &…

zookeeper的部署

一 先下载zookeeper 二 解压包 三 修改配置文件 四 把配好文件传到其他的节点上面 五 在每个节点的dataDir指定的目录下创建一个 myid 的文件 六 配置zook的启动脚本 七 设置开机自启 八 分别启动 九查看当前状态service zookeeper status 十 总结 一 先下载zookeeper …

前端处理后端返回的数据中有\n\n字样的换行符标识

后端返回的数据&#xff1a; 上面圈着的部分就是\n&#xff0c;前端需要将数据进行换行&#xff0c;对于这类型的数据&#xff0c;在前端页面是需要进行稍微处理才能正常显示。如果没有经过处理&#xff0c;那么内容是不会在有换行符的位置进行换行显示的 解决办法1&#xff1…

UE5 半透明覆层材质

文章目录 前言介绍示例1示例2示例3 前言 本文采用虚幻5.2.1版本演示&#xff0c;介绍半透明覆层材质&#xff08;覆层材质&#xff09;。 介绍 半透明覆层材质是 UE5.1 版本 更新的功能&#xff0c;使用半透明覆层材质&#xff0c;可以轻松的给物体表面附着一层材质。 在UE5…

Matlab绘图 图例legend 太长,怎么减小指示线的长度

来源 绘图时&#xff0c;稍微减小文字已经不能正常放下图例&#xff0c;想通过调整图例指示线段长度缩减整个图例长度。 方法一 参考matlab官方论坛 leg legend(Plot1,Plot2,...); leg.ItemTokenSize [x1,x2]; By default x130 and x218 so put larger or smaller number…

zookeeper安装教程及其基本使用

目录 zookeeper下载&#xff1a; zookeeper下载官网&#xff1a; 本地安装配置&#xff1a; 启动zookeeper&#xff1a; 开启服务端&#xff1a; 启动客户端&#xff1a; 查看zookeeper的状态&#xff1a; zoo.cfg文件解读&#xff1a; zookeeper的集群安装&#xff1a…

享元模式 Flyweight Pattern 《游戏编程模式》学习笔记

如果我们要存储一个树一样的数据结构&#xff0c;直觉来说我们会这么写 但是实际上我们会发现&#xff0c;哪怕森林里有千千万万的树&#xff0c;它们大多数长得一模一样。 它们使用了相同的网格和纹理。 这意味着这些树的实例的大部分字段是一样的。 那么我们就可以将树共…

案例:Docker 镜像的创建及使用(commit与dockerfile方式)

文章目录 1、commit方式创建镜像1.1、前期准备1.2、制成镜像1.3、启动镜像1.3.1、启动镜像启动nginx1.3.2、一个命令直接全部启动1.3.3、两种方式区别 1.4、commit创建镜像方式的本质 2、Dockerfile的使用2.1、Dockerfile指令2.2、nginx镜像制作案例2.3、查看构建历史&#xff…

wordpress 打开缓慢处理

gravatar.com 头像网站被墙 追踪发现请求头像时长为21秒 解决方案一 不推荐&#xff0c;容易失效&#xff0c;网址要是要稳定为主&#xff0c;宁愿头像显示异常&#xff0c;也不能网址打不开 网上大部分搜索到的替换的CDN网址都过期了&#xff0c;例如&#xff1a;gravatar.du…

37.利用linprog解 有约束条件多元变量函数最小值(matlab程序)

1.简述 linprog函数主要用来求线型规划中的最小值问题&#xff08;最大值的镜像问题&#xff0c;求最大值只需要加个“-”&#xff09; 2. 算法结构及使用方法 针对约束条件为Axb或Ax≤b的问题 2.1 linprog函数 xlinprog(f,A,b) xlinprog(f,A,b,Aeq,beq) xlinprog(f,A,b,Aeq,…