Azzera filtri
Azzera filtri

Meshing of a surface plot?

1 visualizzazione (ultimi 30 giorni)
Matt Amador
Matt Amador il 16 Nov 2017
Commentato: Star Strider il 16 Nov 2017
Hello there. I have a bit of trouble with my code. It's supposed to 3D plot with the mesh, and surface plot command the following equation: e^(x+i*y) with the intervals -1 > x >1 and -2pi > y > 2pi. I keep getting an error that the matrix dimensions must agree, but I don't know why that is occurring. Can someone help?
x = -1:.1:1;
y = -2*pi:.1:2*pi;
z = exp(x+i.*y);
[Xm, Ym] = meshgrid(x,y);
surf(x,y,z)

Risposte (1)

Star Strider
Star Strider il 16 Nov 2017
Calculate ‘z’ After defining ‘Xm’ and ‘Ym’, and use those as the arguments:
x = -1:.1:1;
y = -2*pi:.1:2*pi;
z = @(x,y) exp(x+i.*y); % Create Anonymous Function For Ceonvenience
[Xm, Ym] = meshgrid(x,y);
surf(x,y, abs(z(Xm,Ym)))
You didn’t define ‘i’ so both MATLAB and I believe you want the imaginary operator. The plots will not render the imaginary values, so here I used the abs function to plot the magnitude.
  2 Commenti
Matt Amador
Matt Amador il 16 Nov 2017
Oh, I just remembered about the imaginary operator. Thanks for that. Also, would it be possible to have a contour plot in this as well?
Star Strider
Star Strider il 16 Nov 2017
My pleasure.
You can either create a separate plot with the contour or contourf functions, or add a contour plot below the surf plot by using the surfc function. (The meshc function adds a contour plot to mesh plots.)

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by