UQpy | 不确定性量化Python工具箱推荐

在这里插入图片描述

UQpy, "Uncertainty Quantification with Python,"是一个通用的 Python 工具箱,用于对物理和数学系统模拟中的不确定性进行建模。该代码被组织为一组以不确定性量化(UQ)的核心功能为中心的模块,如下所示。这些模块各不相同,但设计为易于扩展(可以轻松添加新功能并将其集成到代码中)并易于相互调用。

在这里插入图片描述

UQpy 的核心是 RunModel 模块,它充当第三方软件的 UQpy API。RunModel 模块的开发非常灵活,因此可以简单高效地与任何商业软件和定制软件进行交互。RunModel 既可以用作转换实用程序(将 UQpy 中的信息转换为软件输入),也可以用作计算分析的驱动程序(它将执行代码,并在必要时重复执行,就像在蒙特卡洛分析中一样)。

UQpy 中的所有主要功能都根据上面说明的模块进行分类。这些模块包括:

  • SampleMethods: SampleMethods 模块包含一组根据不同技术生成随机变量样本的类。SampleMethods 用于基于统计的方法(即蒙特卡罗类型)以及数值方法(例如随机搭配)。SampleMethods 中的当前类包括:

    • MCS - Monte Carlo Sampling

    • LHS - Latin Hypercube Sampling

    • STS - Stratified Sampling

    • MCMC - Markov Chain Monte Carlo

    • Correlate - Impose correlation on standard normal samples

    • Decorrelate - Remove correlation from correlated standard normal samples

    • Nataf - Transform standard normal samples to a non-Gaussian distribution

    • InvNataf - Transform non-Gaussian samples to a standard normal distribution

  • Reliability: 可靠性模块包含一组用于执行可靠性分析/估计失效概率的类。可靠性中的当前类包括:

    • SubsetSimulation - Subset simulation using Metropolis-Hastings, Component-wise Modified Metropolis-Hastings, or Affine Invariant Ensemble Sampler.

    • TaylorSeries - Reliability analysis based on a Taylor Series expansion of the limit surface, specifically including First Order Reliabilty Method (FORM) and Second Order Reliability Method (SORM).

  • Inference (Coming soon): 推理模块包含一组用于模型选择(贝叶斯和信息理论)和贝叶斯参数估计的类。

  • Surrogate: Surrogate 模块包含一组用于开发代理模型的类。UQpy 目前提供两种代理建模选项:

    • SROM - Stochastic Reduced Order Models

    • Kriging - Gaussian Process Regression / Kriging

    • PCE - Polynomial Chaos Expansion

  • Optimization (Coming soon): 优化模块包含一组用于优化的类。

  • StochasticProcess: StochasticProcess 模块包含一组用于模拟(合成生成)随机过程和随机场的类。StochasticProcess 中的当前类包括:

    • SRM - Spectral Representation Method

    • BSRM - Bispectral Representation Method (Generalized third-order spectral representation method)

    • KLE - Karhunen-Loeve Expansion

    • Translate - Translation Process

    • Inverse Translate - Identify the underlying Gaussian random process from a known non-Gaussian random process

  • Sensitivity (Coming soon): 灵敏度模块包含一组用于执行全局和局部灵敏度分析的类。

UQpy 还包含两个支持模块:

  • Distributions: Distributions模块指定预定义的概率分布,并允许用户定义概率分布以供在 UQpy 中使用。

  • Utilities: 实用程序模块包含一组广泛用于支持多种核心功能的函数和类。

更多有关UQpy工具箱内容可点查看UQpy’s documentation

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值