Matlab中已知函数值的最小值求对应的自变量值...

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab中已知函数值的最小值求对应的自变量值...相关的知识,希望对你有一定的参考价值。

就是说我画出了这个函数的图形,也用min函数求得了它的最小值,可是要求对应的横坐标的值...怎么办...

思路是这样的:
你得到最小的函数值后,把它带入你作图的方程反解自变量的值。我不知道你画的这个函数图像的方程什么,我用一个二次方程y=x.^2+x给你做示范:

先做图:
x=-10:0.1:10;
y=x.^2+x;
plot(x,y);
m_y=min(y)

得到最小的值为:-0.25
在反解对应的自变量的值:

syms x;
f=sym('x^2+x+0.25=0');
m_x=solve(f,x)

看到没有,最小值对应的自变量的值为-0.5.
参考技术A [m,n]=min(your_function);
m返回最小值,n返回的是索引值
假设你横坐标的函数是x
那么x(n)就是对应的横坐标值

最小(x,y)对值的Matlab矩阵索引

【中文标题】最小(x,y)对值的Matlab矩阵索引【英文标题】:Matlab matrice index of min (x,y) pair values 【发布时间】:2012-10-16 19:31:15 【问题描述】:

我得到了一个 5 * 5 的矩阵。 我想找到 (i,j) 的最小值,它对应于距网格固定点的最小距离。

我用过: MATRICE(find(MATRICE(1,:))== min(MATRICE(1,:)),:) 和:

[minVal, minInd] = min(MATRICE(:,1));
MATRICE(minInd,1);
[~,MATRICE_2] = min(MATRICE(:,:));

disp(MATRICE_2) 让我得到 MATRICE 的正确 row(i),但根本不显示 column(j)

【问题讨论】:

我不清楚你想做什么。你能给出一些更清晰的例子来说明你的输入和预期输出吗? 我有一个网格,其轴点上的固定点由 meshgrid 'x,y = meshgrid(1:1:5)' 配置。随机用户生成并均匀分布到网格中。定点距离和随机用户距离用欧几里得公式测量。还测量了固定点和随机用户之间的距离,结果形成矩阵。所以这个 MATRICE 由 5 * 5 个坐标距离向量组成。现在为了将每个随机用户与其最近的固定点相关联,我想在每次模拟迭代中找到 MATRICE 的 min x,y 好的,感谢您的更新,听起来 angainor 的答案就是您所需要的。 【参考方案1】:

我不确定我是否理解正确,但如果你想找到数组中最小条目的(row,col) 索引,你可以使用这个

[i,j] = ind2sub(size(MATRICE), find(MATRICE==min(MATRICE(:))))

A 是您的矩阵。这可以通过将矩阵更改为 25 个元素的向量,查找最小值的位置,然后使用 ind2sub 将该位置转换为 (row,col) 对来实现。

您所写的内容会在矩阵的每一列中找到最少的条目。因此,MATRICE_2 中的每个i 条目都显示了i 列中最小值的行索引。换句话说,列和行索引是

cols = 1:numel(MATRICE_2);
rows = MATRICE_2;

【讨论】:

【参考方案2】:

好吧,我想通了:

[MinValue, MinIndex] = min(MATRICE(:));
MinSub =ind2sub(size(MATRICE), MinIndex);

MinValue 是 MATRICE 的最小值,MinIndex 是它的索引加上直接指向固定点。

【讨论】:

以上是关于Matlab中已知函数值的最小值求对应的自变量值...的主要内容,如果未能解决你的问题,请参考以下文章

Oracle数据库中求最大值和平均值的聚合函数是

关于python计算的问题。怎样计算平均值,最大值和最小值???

python求最大值、最小值、求和、平均值

c语言,已知正切值如何求角度

取最大值(最小值)简介代码

插值查找