Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

What is going wrong with my mesh command?

Asked by Gian Lorenzo

Gian Lorenzo (view profile)

on 6 May 2013

I am trying to visualize this function and eventually its contour lines:

clear all
[x,y]=meshgrid(-10:0.1:10)
d=max([sqrt(x.^2+y.^2);sqrt((x-5).^2+(y+1).^2);sqrt((x-4).^2+(y-6).^2);...
    sqrt((x-1).^2+(y-3).^2)])+eps;
mesh(d)

I get an error message saying Z should be a matrix. I looked at the example here http://www.mathworks.com/help/matlab/ref/mesh.html, and I don't understand why their function generates a matrix and mine don't. Altough mine is a 'weird' function with a max it shouldn't be conceptually too different, what am I missing here?

0 Comments

Gian Lorenzo

Gian Lorenzo (view profile)

Products

2 Answers

Answer by Iman Ansari

Iman Ansari (view profile)

on 6 May 2013
Edited by Iman Ansari

Iman Ansari (view profile)

on 6 May 2013
Accepted answer

Hi.

clear
[x,y]=meshgrid(-10:0.1:10)
d=max(sqrt(x.^2+y.^2),sqrt((x-5).^2+(y+1).^2));
d=max(d,sqrt((x-4).^2+(y-6).^2));
d=max(d,sqrt((x-1).^2+(y-3).^2))+eps;
mesh(x,y,d)

OR

meshc(x,y,d)

2 Comments

Gian Lorenzo

Gian Lorenzo (view profile)

on 6 May 2013

Thanks! Can you explain me what's the wrong reasoning I am doing here? Does the max function handles at most two arguments? Is eps strictly necessary?

Iman Ansari

Iman Ansari (view profile)

on 6 May 2013

From Help: If A is a matrix, max(A) treats the columns of A as vectors, returning a row vector containing the maximum element from each column.

Your input in max function is 804*201, so output become 1*201.

No.

Iman Ansari

Iman Ansari (view profile)

Answer by Walter Roberson

Walter Roberson (view profile)

on 6 May 2013
d=max( cat(3, sqrt(x.^2+y.^2), sqrt((x-5).^2+(y+1).^2), sqrt((x-4).^2+(y-6).^2), sqrt((x-1).^2+(y-3).^2)), 3) + eps;

1 Comment

Gian Lorenzo

Gian Lorenzo (view profile)

on 6 May 2013

Never seen this cat function, very interesting, thank you

Walter Roberson

Walter Roberson (view profile)

Contact us