Diagonal cross section of function z(x,y) for x=y

I have a function as z(x,y) and I want to plot z(x,y) vs x=y. How can I plot it? Cross section of function z(x,y) for x=y
I will be glad if you help

1 Comment

How is the function defined? is it a MATAB function? Is this using symbolic tools? Or is it just a 2D numeric array?

Sign in to comment.

 Accepted Answer

t = X-Y;
er = 1e-10;
mask = abs(t) < er;
X2 = X(mask);
Y2 = Y(mask);
Z2 = V(mask);
plot(X2,Y2,Z2)
plot(X2,Z2)

More Answers (2)

Matt J
Matt J on 12 Mar 2022
Edited: Matt J on 12 Mar 2022
fcn=@(t) arrayfun(@(x) z(x,x), t);
fplot(fcn)

1 Comment

As an example,
z=@(x,y) x.^2+2*x*y + y.^2;
fcn=@(t) arrayfun(@(x) z(x,x), t);
fplot(fcn,[-1,1])

Sign in to comment.

Easier to assign some values where x=y in function meshgrid as follows:
If the assigned values for x and y are different, then the following does not work.
x = -10:0.1:10;
y = -10:0.1:10;
A = 1; % Assume A=1
[X, Y] = meshgrid(x, y);
D = 4; T = 0; K=1;
for p = 0:(D-1)
alpha = 2*pi*p/D;
T= T + exp(1i*K*(cos(alpha)*X+sin(alpha)*Y));
end
Z = A*abs(T/D).^2;
plot(X(X==Y),Z(X==Y))

Tags

Asked:

on 12 Mar 2022

Answered:

on 12 Mar 2022

Community Treasure Hunt

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

Start Hunting!