matlab - 如何找到导致特定函数输出的参数的最小值
问题描述
我试图以最有效的方式计算 Matlab 中贝叶斯因子的鲁棒性区域。在非贝叶斯特定术语中,我有一个函数,它接受输入 A,并返回输出 B。我需要找到:(1)B 等于或大于 3 的最小 A,以及(2)最大 A其中 B 等于或大于 3。
现在,我有一个 for 循环,循环遍历 A 的一系列值,然后我找到满足上述条件的最小和最大 As。它有效,但它绝对不是最有效的方法,而且我到目前为止还没有在网上找到任何信息。
非常感谢!!
解决方案
您可以从 min 开始并找到。例如,
Bidx = find( B >= 3 );
[minval, mindix] = min( A(Bidx) )
这假设 A 和 B 的大小相同。
推荐阅读
- azure - Perl Curl PUT 和错误 411(内容长度)
- angular - 以角度打开时未显示垫对话框。它仅在加载整个页面时显示
- http - 不允许获取错误方法和内容类型:文本/纯文本
- html - 如何在不使用绝对定位的情况下使页脚粘在底部?
- apache-spark - 需要释放未使用的 spark 数据帧使用的内存
- python - 初学者问题:Mod 算术语法错误
- node.js - 当您查询数据存储模拟器时,如何强制 @google-cloud/datastore 使用“http”
- ibm-midrange - 向 RPGLE 程序传递更多参数
- swiftui - 如何使 SwiftUI 滚动视图缩小到内容?
- ios - 如何在同一个 UIViewController 上垂直堆叠多个 UICollectionView?