多重变量分析表示

1视图(30天)
彼得
彼得 2015年10月1日
评论道: 彼得2015年10月1日
我想做一个与多个参数函数的图形表示电子设计。我只需要每个x值的最大和最小值(见示例)
我的香料项目仅限于两个参数,不能只显示最大值和最小值的行。
例子:
y = ax ^ 3 + bx ^ 2 + c + d
变量:
  • y =函数结果
  • =范围(1 - 10步骤1)- > 11值
  • b =(5-50步骤5)- > 10范围值
  • c =范围(0.1 - 1步骤0.1)- > 10值
  • d =(3-30步骤3)- > 10范围值
  • ymax =函数结果最大值
  • ymin =函数结果最低
我还需要知道所有的参数的值(a, b, c, d) ymax ymin。我可以做一个loop-in-loop-in-loop…。建设,但也许有人已经做了一个脚本,并可视化或有一个更好的主意。
亲切的问候,彼得

接受的答案

沃尔特·罗伯森
沃尔特·罗伯森 2015年10月1日
[A, B, C, D] = ndgrid (1:10, 5:5:50 0.1:0.1:1 3:3:30);
y = x *。^ 3 + B。* x。^ 2 + C。* x + D;
[如矿坑的,minidx] = min (y (:));
[maxy, maxidx] = max (y (:));
parms_at_min = [(minidx);B (minidx);C (minidx);D (minidx)];
parms_at_max = [(maxidx);B (maxidx);C (maxidx);D (maxidx)];
如果您有多个X值
numx =长度(x);
[A, B, C, D, X) = ndgrid (1:10, 5:5:50 0.1:0.1:1 3:3:30 X);
y = X *。^ 3 + B。* X。^ 2 + C。* X + D;
rsy =重塑(y, [], numx);
[如矿坑的,minidx] = min (rsy);%第一个维度
[maxy, maxidx] = max (rsy);%第一个维度
parms_at_min = [(minidx);B (minidx);C (minidx);D (minidx)];
parms_at_max = [(maxidx)、B (maxidx), C (maxidx)、D (maxidx)];
我没有声称,这是最有效的方式。
1评论
彼得
彼得 2015年10月1日
好谢谢你。这可以帮助很多

登录置评。

更多的答案(0)

类别

找到更多的在鲁棒控制工具箱帮助中心文件交换

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!