I want to know about plotting complex function

I want to know about this homework as i show you this images.
I should submit this homework including code,x-y plane graph and u,v plane graph.
z=x+iy and f(z)=2/(z-1)=u(x,y)+iv(x,y) (i is imaginary numbers)
please help me

6 commentaires

sorry... I don't know anything about matlab. So I ask like this I'm very sorry for this.
We are not going to give you the answer. However, if you give a try and encounter an error that you are having trouble understanding, then you can post the code and a complete copy of the error message and we will try to explain why that code produces that message.
The coordinate transformation isn't very clear from your question. Can you define u and v ?
So you compute f(z) and then say that u = real(f(z)) and v = imag(f(z))
Jan
Jan le 6 Oct 2018
@Jae Yoon Kim: Please do not edit away a question after answers have been given. This is impolite and not respectful for the effort of the ones, who spent their time to help you. Thanks.

Connectez-vous pour commenter.

 Réponse acceptée

Dimitris Kalogiros
Dimitris Kalogiros le 4 Oct 2018
Modifié(e) : Dimitris Kalogiros le 5 Oct 2018
clear; clc;
% entire z-plane
x=-3:0.01:3;
y=-3:0.01:3 ;
% our z region
zregion=[];
for n=1:length(x)
for k=1:length(y)
z=x(n)+y(k)*1i;
if abs(z-2)<1
zregion=[zregion z];
end
end
end
% mapping
fzRegion=[];
for n=1:length(zregion)
z=zregion(n);
fz=2/(z-1);
fzRegion=[fzRegion fz];
end
% plot these two regions
figure;
subplot(1,2,1);
plot(real(zregion), imag(zregion), 'b.'); zoom on; grid on; hold on;
plot( [-5 5],[0 0 ], '-k', 'LineWidth', 2 );
plot( [0 0],[-5 5 ], '-k', 'LineWidth', 2 );
axis square;
xlabel('x'); ylabel('y'); title('abs(z-2)<1')
subplot(1,2,2);
plot(real(fzRegion), imag(fzRegion), 'r.'); zoom on; grid on; hold on;
plot( [-200 200],[0 0 ], '-k', 'LineWidth', 2 );
plot( [0 0],[-200 200 ], '-k', 'LineWidth', 2 );
axis square;
xlabel('u'); ylabel('v'); title('f(z)');
But be careful... Point z1=1+j0 is a boundary point of your z-region. As z is approaching z1, f(z) going to infinity.
If you run the above script, you will receive the following graph:

4 commentaires

Thank you so much!! Can I ask you some question?? I want to z0 = 0+io How can I do this??
z0 = complex(0, 0);
That is the only way to get a variable whose real and imaginary parts are both 0. In nearly any other context, MATLAB will notice that the imaginary part is 0 and will automatically drop it, leaving you with a variable that is not specifically marked as imaginary.
The only time that z0 = 0; meaningfully differs from z0 = complex(0, 0); has to do with accessing external interfaces that might require a variable that is internally marked as being complex.
Put it where-ever you wanted z0 = 0+i0 ?
If you want to calculate f(zo), where zo=0+j0 , you have to do the followings:
zo=complex(0,0);
wo=2/(zo-1); % wo=f(zo)
But be aware that zo=0+j0 does not belong to your area of interest ( |z-2|<1 )

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Special Functions dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by