Azzera filtri
Azzera filtri

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

2 visualizzazioni (ultimi 30 giorni)
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 Commento
DGM
DGM il 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?

Accedi per commentare.

Risposta accettata

Leia
Leia il 12 Mar 2022
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)

Più risposte (2)

Matt J
Matt J il 12 Mar 2022
Modificato: Matt J il 12 Mar 2022
fcn=@(t) arrayfun(@(x) z(x,x), t);
fplot(fcn)
  1 Commento
Matt J
Matt J il 12 Mar 2022
Modificato: Matt J il 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])

Accedi per commentare.


Simon Chan
Simon Chan il 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))

Categorie

Scopri di più su Read, Write, and Modify Image in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by