How to plot the 2d complex function with amplitude and phase

4 views (last 30 days)
Qiu Xu
Qiu Xu on 20 Jan 2022
Edited: Paul on 20 Feb 2022
I have a 2d complex function as follows
How to realize the following figure by using Matlab?
In this image, the color on the ring presents the changes of phase of the function from small to big.
  1 Comment
Paul on 20 Feb 2022
The phase of psi is a function of two variables (x and y). How is "changes of phase" defined? Change wrt x holding y constant (del f / del x)? Change wrt y holding x constant (del f / del y)? Something else?

Sign in to comment.

Answers (1)

Hiro on 20 Feb 2022
Edited: Hiro on 20 Feb 2022
Run the following code and see if this fits your thought.
meshgrid is a key here.
[X,Y] = meshgrid(x,y);
phi = sqrt(X.^2+Y.^2).*exp(-(X.^2+Y.^2)/16).*exp(1i*atan2(Y,X));
rPhi = real(phi);
iPhi = imag(phi);
phiPhase = angle(phi);
%phiPhaseW = unwrap(phiPhase);
s2 = surf(X,Y,phiPhase,'LineStyle','none');
title('X vs. Y vs. phiPhase')


Community Treasure Hunt

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

Start Hunting!

Translated by