How do I get a surface graph of my function f(x,y)?

10 Ansichten (letzte 30 Tage)
DIMITRIS GEORGIADIS
DIMITRIS GEORGIADIS am 18 Nov. 2017
Kommentiert: Karan Gill am 20 Nov. 2017
I have the following code. My function is f(x,y) = sin(x)+cos(y). I want to replace x, y with sets a and b, respectively. I ude the subs function, but Z is a 51x51 sym, instead of 51x51 double in order to be plotted. Where is my mistake?
syms x y
f = sin(x)+cos(y);
a = [0:0.1:5];
b = [1:0.1:6];
[X, Y] = meshgrid(a,b);
Z = subs(f,[x y], {X, Y});
surf(X,Y,Z)

Akzeptierte Antwort

Star Strider
Star Strider am 18 Nov. 2017
Use an anonymous function, and don’t use the Symbolic Math Toolbox. You don’t need it for this problem.
f = @(x,y) sin(x)+cos(y);
a = [0:0.1:5];
b = [1:0.1:6];
[X, Y] = meshgrid(a,b);
Z = f(X,Y);
surf(X,Y,Z)
  5 Kommentare
Star Strider
Star Strider am 20 Nov. 2017
As always, my pleasure!
Karan Gill
Karan Gill am 20 Nov. 2017
@Dimitris, or use fsurf instead of fmesh.
@Star Strider, actually it's only
>> f = @(x,y) sin(x)+cos(y);
>> fsurf(f)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Discrete Math finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by