Komplexe Zahlen und Funktionen

unassume({a,b,x,y})

Dieses macht beim Wiederauswerten unten gemachte Annahmen rückgängig.

z:=x+I*y; w:=a+I*b

math

math

Definition von Komplexen Zahlen

z*w;expand(z*w); pe:=rectform(z*w)

math

math

math

Das Sortieren nach Real- und Imaginärteil kann natürlich nur klappen, wenn

man a,b,x,y,als reell ansieht:

assume(a,Type::Real):   assume(b,Type::Real):

assume(x,Type::Real):   assume(y,Type::Real):

Und nun nochmal

rectform(z*w)

math

Komplexe Funktionen verbiegen das Koordinatengitter.

Darstellung der Quadratfunktion

//assume(x>0,Type::Real):

//assume(y>0,Type::Real):

rectform(z^2)

math

 

f:=(x,y)->[x^2-y^2 ,2*x*y];

math

 

P1:=plot::Point2d([x,1],x=-3..3, PointColor=[0,0,1]):

P1b:=plot::Point2d(f(x,y)|y=1,x=-3..3, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

oben1g:=plot::Curve2d([x,1],x=-3..3,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y)|y=1,x=-3..3,LineColor=[1,0,0]):

plot(f1g,oben1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Sei also zuerst das Gitter im 1. Quadranten definiert:

waag:=[x,b]:senk:=[a,y]:

waagg:=plot::Curve2d(waag,x=0..5,b=0..5,LineColor=[0,1,0]):

senkg:=plot::Curve2d(senk,y=0..5,a=0..5):

plot(waagg,senkg)

MuPAD graphics

:

waag:=[x,b]:senk:=[a,y]:

waagg:=plot::Curve2d(waag,x=-3..3,b=0..3,LineColor=[0,1,0]):

senkg:=plot::Curve2d(senk,y=-3..3,a=0..3):

biwaagg:=plot::Curve2d(f(x,b),x=-3..3,b=0..3,LineColor=[1,0,0]):

bisenkg:=plot::Curve2d(f(a,y),y=-3..3,a=0..3,LineColor=[1,0,1]):

plot(biwaagg,bisenkg,waagg,senkg,

Scaling=Constrained, LineWidth=0.7)

MuPAD graphics

Der rote Bogen ist das Bild der grünen Strecke,

Der lila Bogen ist das Bild der blauen Strecke, bei der Quadratfunktion

delete z:

ur:=plot::Conformal(z,z=0..2+I,Mesh=[10,10]):

bild:=plot::Conformal(z^2,z=0..2+I,Mesh=[10,10], LineColor=[1,0,0]):

plot(ur, bild,Scaling=Constrained)

MuPAD graphics

Darstellung der Wurzelfunktion

assume(x>0,Type::Real):

assume(y>0,Type::Real):

rectform(sqrt(x+I*y))

math

 

f:=(x,y)->[(1/2*x + 1/2*(x^2 + y^2)^(1/2))^(1/2) ,

            (1/2*(x^2 + y^2)^(1/2) - 1/2*x)^(1/2)];

math

 

waag:=[x,b]:senk:=[a,y]:

waagg:=plot::Curve2d(waag,x=-5..5,b=0..5,LineColor=[0,1,0]):

senkg:=plot::Curve2d(senk,y=-5..5,a=0..5):

biwaagg:=plot::Curve2d(f(x,b),x=0..5,b=0..5,LineColor=[1,0,0]):

bisenkg:=plot::Curve2d(f(a,y),y=0..5,a=0..5,LineColor=[1,0,1]):

plot(biwaagg,bisenkg,waagg,senkg,

Scaling=Constrained)

MuPAD graphics

Der rote Bogen ist das Bild der grünen Strecke,

Der lila Bogen ist das Bild der blauen Strecke, bei der Wurzelfunktion

obeng:=plot::Curve2d([x,y],x=-3..3,y=0..3,LineColor=[1,0,0]):

unteng:=plot::Curve2d([x,y],x=-3..3,y=-3..0,LineColor=[1,0,0.5]):

riemannobg:=plot::Curve2d([x,y],x=-3..3,y=0..3,LineColor=[0,0,0.5]):

riemannuntg:=plot::Curve2d([x,y],x=-3..3,y=-3..0,LineColor=[0,1,0]):

f1q:=(x,y)->[(1/2*x + 1/2*(x^2 + y^2)^(1/2))^(1/2) ,

            (1/2*(x^2 + y^2)^(1/2) - 1/2*x)^(1/2)];

f2q:=(x,y)->[-(1/2*x + 1/2*(x^2 + y^2)^(1/2))^(1/2) ,

            (1/2*(x^2 + y^2)^(1/2) - 1/2*x)^(1/2)]:

f3q:=(x,y)->[-(1/2*x + 1/2*(x^2 + y^2)^(1/2))^(1/2) ,

            -(1/2*(x^2 + y^2)^(1/2) - 1/2*x)^(1/2)]:

f4q:=(x,y)->[(1/2*x + 1/2*(x^2 + y^2)^(1/2))^(1/2) ,

            -(1/2*(x^2 + y^2)^(1/2) - 1/2*x)^(1/2)]:

math

P1:=plot::Point2d([x,1],x=-3..3, PointColor=[0,0,1]):

P1b:=plot::Point2d(f1q(x,y)|y=1,x=-3..3, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

oben1g:=plot::Curve2d([x,1],x=-3..3,LineColor=[0,1,0]):

f11qg:=plot::Curve2d(f1q(x,y)|y=1,x=-3..3,LineColor=[1,0,0]):

plot(f11qg,Or,oben1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Waagerechte Gitterlinie und ihr Bild

 

delete z:

ur:=plot::Conformal(z,z=-2-I..2+I,Mesh=[10,10]):

bild:=plot::Conformal(sqrt(z),z=-2-I..2+I,Mesh=[10,10], LineColor=[1,0,0]):

plot(ur, bild,Scaling=Constrained)

MuPAD graphics

Polardarstellung und RiemannscheFläche

r:=1.44:

Pk1:=plot::Point2d([r*cos(t),r*sin(t)],t=0..4*PI,PointSize=4

,PointColor=[0,0,1], PointStyle=Stars):

Pk1b:=plot::Point2d([sqrt(r)*cos(t/2),sqrt(r)*sin(t/2)],t=0..4*PI          

         ,PointSize=4,PointColor=[1,0,1]):

fg:=plot::Curve2d([sqrt(r)*cos(t/2),sqrt(r)*sin(t/2)],t=0..4*PI

                       ,LineColor=[1,0,0], LineWidth=1):

urg:=plot::Curve2d([r*cos(t),r*sin(t)],t=0..2*PI,LineColor=[0,1,0]):

plot(fg, urg,Pk1,Pk1b,Scaling=Constrained, LineWidth=1

                 , TicksNumber=Low, Header="Wurzelfunktion,\nRiemannsche Fläche")

MuPAD graphics

 

Waagerechte Gitterlinien und ihre Bilder

obeng:=plot::Curve2d([x,y],x=-3..3,y=0..3,LineColor=[0,1,0]):

f1qg:=plot::Curve2d(f1q(x,y),x=-3..3,y=0..3,LineColor=[1,0,0]):

f2qg:=plot::Curve2d(f2q(x,y),x=-3..3,y=-3..0,LineColor=[1,0,0.5]):

plot(f1qg,f2qg,obeng,unteng,LineWidth=1,Scaling=Constrained)

MuPAD graphics

 

 

f3qg:=plot::Curve2d(f3q(x,y),x=-3..3,y=0..3,LineColor=[0,0,0.5]):

f4qg:=plot::Curve2d(f4q(x,y),x=-3..3,y=-3..0,LineColor=[0,1,0]):

plot(f3qg,f4qg,riemannobg,riemannuntg,

          LineWidth=1,Scaling=Constrained)

MuPAD graphics

Man muss also zweimal mit den Waagerechten die Ebene übersteichen,

damit mann alle Bilder bekommt

Darstellung der ln-Funktion

rectform(ln(z))

math

 

f:=(x,y)->[1/2*ln(x^2 + y^2) ,arctan(1/x*y)];

math

 

delete r:assume(r>0,Type::Real):assume(t,Type::Real):

Simplify(ln(r*E^(I*t)))

math

fpo:=(r,t)->[ln(r),t]

math

Die Darstellung in Polarkoordinaten ist passender.

r:=2*E:

Pk1:=plot::Point2d([r*cos(t),r*sin(t)],t=0..4*PI,PointSize=4

,PointColor=[0,0,1], PointStyle=Stars):

Pk1b:=plot::Point2d([ln(r),t],t=0..4*PI          

         ,PointSize=4,PointColor=[1,0,1]):

fg:=plot::Curve2d([ln(r),t],t=0..4*PI

                       ,LineColor=[1,0,0], LineWidth=1):

urg:=plot::Curve2d([r*cos(t),r*sin(t)],t=0..2*PI,LineColor=[0,1,0]):

plot(fg, urg,Pk1,Pk1b,Scaling=Constrained, LineWidth=1

                 , TicksNumber=Low, Header="Logarithmusfunktion,\nRiemannsche Fläche")

MuPAD graphics

 

P1:=plot::Point2d([x,1],x=-3..3, PointColor=[0,0,1]):

P1b:=plot::Point2d(f(x,y)|y=1,x=-3..3, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

oben1g:=plot::Curve2d([x,1],x=-3..3,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y)|y=1,x=-3..3,LineColor=[1,0,0]):

plot(f1g,oben1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Darstellung der Exponentialfunktion

E^z

math

f:=(x,y)->[E^x*cos(y),E^x*sin(y)]

math

P1:=plot::Point2d([x,1],x=-3..3, PointColor=[0,0,1]):

P1b:=plot::Point2d(f(x,y)|y=1,x=-3..3, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

oben1g:=plot::Curve2d([x,1],x=-3..3,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y)|y=1,x=-3..3,LineColor=[1,0,0]):

plot(f1g,oben1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Die waagerechten Geraden werden auf Strahlen vom Ursprung aus abgebildet.

Dabei haben Waagrerechte Geraden mit dem Abstand 2 PI denselben Strahl als Bild.

P1:=plot::Point2d([1,y],y=-2*PI..3*PI, PointColor=[0,0,1]):

P1b:=plot::Point2d(f(x,y)|x=1,y=-2*PI..3*PI, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

senk1g:=plot::Curve2d([1,y],y=-2*PI..3*PI,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y)|x=1,y=-2*PI..3*PI,LineColor=[1,0,0]):

plot(f1g,senk1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

 

Die senkrechten Geraden werden auf Kreise um den Ursprung  abgebildet.

Dabei werden Punkte mit dem senkrechten  Abstand 2 PI  auf denselbenPunkt abgebildet.

Die ganze Ebene ist Urbild und die ganze Ebene ist Bild

f(x,y)

math

oben1g:=plot::Curve2d([x,y],x=-3..2,y=-2*PI..2*PI,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y),x=-3..2,y=-2*PI..2*PI,LineColor=[1,0,0]):

plot(f1g,oben1g,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

ur:=plot::Conformal(z,z=0..1+2*PI*I,Mesh=[10,10]):

bild:=plot::Conformal(E^z,z=0..1+2*PI*I,Mesh=[40,40], LineColor=[1,0,0]):

plot(ur, bild,Scaling=Constrained)

MuPAD graphics

Die waagerechten Geraden werden auf Strahlen vom Ursprung aus abgebildet.

Dabei haben Waagrerechte Geraden mit dem Abstand 2 PI denselben Strahl als Bild.

senk1g:=plot::Curve2d([x,y],y=-2*PI..2*PI,x=-3..2,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y),y=-2*PI..2*PI,x=-3..2,LineColor=[1,0,0]):

plot(f1g,senk1g,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Die senkrechten Geraden werden auf Kreise um den Ursprung  abgebildet.

Dabei werden Punkte mit dem senkrechten  Abstand 2 PI  auf denselbenPunkt abgebildet.

Die ganze Ebene ist Urbild und die ganze Ebene ist Bild

P1:=plot::Point2d([x,1+x],x=-3..3, PointColor=[0,0,1]):

P1b:=plot::Point2d(f(x,y)|y=1+x,x=-3..3, PointColor=[1,0,1]):

Or:=plot::Point2d([0,0],x=-3..3):

oben1g:=plot::Curve2d([x,1+x],x=-3..3,LineColor=[0,1,0]):

f1g:=plot::Curve2d(f(x,y)|y=1+x,x=-3..3,LineColor=[1,0,0]):

plot(f1g,oben1g,P1,P1b,Scaling=Constrained,

          PointSize=3, LineWidth=1)

MuPAD graphics

Beliebige Geraden werden auf Spiralen abgebildet.