Populating 2D meshgrid of a function of four variables

2 Ansichten (letzte 30 Tage)
Valeri Aronov
Valeri Aronov am 15 Aug. 2021
Kommentiert: Valeri Aronov am 16 Aug. 2021
I have a function:
function [y, Grad, Hess] = Target(x)
...
end;
where x's size is 4 (a vector of 4 variables).
How to plot a contour of Target() using a meshgrid of two variables? Something like this code:
xC1 = linspace(0.1, 1.9);
yR1 = linspace(0.1, 1.9);
[XC1, YR1] = meshgrid(xC1, yR1);
% this is wrong: [Z, ~, ~] = Target([XC1, 1, YR1, 1]); how to do it right?
contour(XC1, YR1, Z)

Akzeptierte Antwort

Matt J
Matt J am 15 Aug. 2021
Bearbeitet: Matt J am 15 Aug. 2021
As long as you don't care about efficiency,
fun=@(x,y) Target([x,1,y,1]);
Z=arrayfun(fun, XC1,YR1);

Weitere Antworten (0)

Produkte


Version

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by