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

2 views (last 30 days)
Leia on 12 Mar 2022
Answered: Simon Chan on 12 Mar 2022
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
DGM on 12 Mar 2022
How is the function defined? is it a MATAB function? Is this using symbolic tools? Or is it just a 2D numeric array?

Leia on 12 Mar 2022
t = X-Y;
er = 1e-10;
plot(X2,Y2,Z2)
plot(X2,Z2)

Matt J on 12 Mar 2022
Edited: Matt J on 12 Mar 2022
fcn=@(t) arrayfun(@(x) z(x,x), t);
fplot(fcn)
Matt J on 12 Mar 2022
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]) Simon Chan on 12 Mar 2022
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)) 