File:Complex log mapping.svg

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search

Original file (SVG file, nominally 1,000 × 500 pixels, file size: 1.51 MB)

Captions

Captions

Complex log mapping

Summary

[edit]
Description
English: Complex log mapping maps radii to horizontal lines and circles to vertical lines.

The principal branch , viewed as a mapping from to the horizontal strip defined by , has the following properties, which are direct consequences of the formula in terms of polar form:

  • Circles[1] in the z-plane centered at 0 are mapped to vertical segments in the w-plane connecting to , where is the real log of the radius of the circle.
  • Rays emanating from 0 in the z-plane are mapped to horizontal lines in the w-plane.
Each circle and ray in the z-plane as above meet at a right angle. Their images under Log are a vertical segment and a horizontal line (respectively) in the w-plane, and these too meet at a right angle. This is an illustration of the conformal property of Log.
Date
Source Own work
Author Soul windsurfer
Other versions
Source code
InfoField
Created using Maxima.
/*

 b batch file for maxima



There are 2 complex planes :
* w-plane 
* z-plane 


z is a pont of z-planes
zz is a list of z points
zzz is a list of zz lists

1. draw cufves on z plane 
2. draw images of z-curves  under h  on w plane               
3. draw images of w-curves under hi on z plane 


http://math.stackexchange.com/questions/114733/mapping-half-plane-to-unit-disk

Adam Majewski
 
*/

kill(all);
remvalue(all);
display2d:false$







/* definitions of  functions  */


/*  map from z to w : w=h(z) */
h(z):=if z=0.0 then -1000 else rectform(float(log(z))); /* map from z plane to w plane : w = h(z) */


/* converts complex number into list for draw package  */
draw_format(z):= [float(realpart(z)),float(imagpart(z))];


GiveCirclePoint(t) := rectform(float(R*%e^(%i*t*2*%pi))); /* gives point of unit circle for angle t in turns */
GiveZRayPoint(R) := rectform(float(R*%e^(%i*tRay*2*%pi))); /* gives point of external ray for radius R and angle tRay in turns */ 



compile(all);


R_max: 5;
R_min: 0;
dR: R_max - R_min;
NumberOfRays: 10;
iMax: 100; /* number of points to draw */





print (" ============== compute ===============  ")$

/* curve is a list of points joned by lines */

/* f_0 plane = z-plane */
circle_angles: makelist(i/(10*iMax), i, 0, 10*iMax-1)$ /* more angles = more points */


/* Unit circle */
R: 1;
UnitCirclePointsZ: map(GiveCirclePoint, circle_angles)$
/* circle with radius 1/2 */
R: 0.5;
HalfUnitCirclePointsZ: map(GiveCirclePoint, circle_angles)$



/* External circles */
circle_radii: makelist(R_min+i, i, 1, dR);
ZCirclesPoints: [];
for R in circle_radii do 
	ZCirclesPoints: append(ZCirclesPoints, map(GiveCirclePoint, circle_angles))$

/* External W rays */
ray_radii: makelist(R_min+dR*i/iMax, i, 0, iMax)$
ray_angles: makelist(i/NumberOfRays, i, 0, NumberOfRays-1)$
ZRaysPoints: [];
for tRay in ray_angles do 
	ZRaysPoints: append(ZRaysPoints, map(GiveZRayPoint, ray_radii))$









 
 /* --------- map from z to w plane using h  -------------------------------*/

 /* w-curves = images of z-circles */
 WCirclesPoints: map (h, ZCirclesPoints)$
 WRaysPoints: map (h, ZRaysPoints )$
 UnitCirclePointsW : map(h,UnitCirclePointsZ)$
 HalfUnitCirclePointsW : map (h, HalfUnitCirclePointsZ)$
 /* w-curves = images of z-rays */
  

  

 

print ("--------------  convert lists of complex points to draw format lists ----------- ")$
 UnitCirclePointsZ : map (draw_format, UnitCirclePointsZ)$
 HalfUnitCirclePointsZ : map ( draw_format, HalfUnitCirclePointsZ)$
 ZCirclesPoints:map(draw_format,ZCirclesPoints)$ 
 ZRaysPoints:map(draw_format,ZRaysPoints)$ 
 
 
 WCirclesPoints:map(draw_format, WCirclesPoints)$ 
 WRaysPoints:map(draw_format, WRaysPoints)$ 
 UnitCirclePointsW : map (draw_format, UnitCirclePointsW)$
 HalfUnitCirclePointsW : map(draw_format, HalfUnitCirclePointsW)$
/* images of  z-lines */
 
 

print (" ------------------  draw ------------------------------------------------------ ")$

path:"~/Dokumenty/maxima/log_map/"$ /* pwd  */
 FileName:"i"$ /* without extension which is the terminal name */

 load(draw); /* Mario Rodríguez Riotorto   http://www.telefonica.net/web2/biomates/maxima/gpdraw/index.html */
 draw(
  terminal  = 'svg,
  file_name = concat(path,FileName),
  columns  = 2,
  dimensions=[1000,500], /*  x = y*columns  */
  
  gr2d(title = " z plane ",
  /*
   yrange = [-3,3],
   xrange = [-3,3],
   */
   points_joined =true,
   grid = false,
   
   point_size    = 0.2,
   point_type = filled_circle,
   color 	= green,
   points(ZCirclesPoints),
   color         = red,
   points(UnitCirclePointsZ),
   color = yellow,
   points(HalfUnitCirclePointsZ),
   color = blue,
   points(ZRaysPoints)
   
  ),

  gr2d(
   title = " w plane: w=log(z)",
   yrange = [-2.0,2.0],
   xrange = [-2.0,2.0],
   grid = false,
   xaxis       = false,
   
   points_joined =true,

   color         = red,
   point_size    = 0.2,
   point_type = filled_circle,
   color 	= green,
   points(WCirclesPoints),
   color         = red,
   points(UnitCirclePointsW),
   color = yellow,
   points(HalfUnitCirclePointsW),
   
   color = blue,
   points(WRaysPoints)
   
)
 );

Licensing

[edit]
I, the copyright holder of this work, hereby publish it under the following license:
w:en:Creative Commons
attribution share alike
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International license.
You are free:
  • to share – to copy, distribute and transmit the work
  • to remix – to adapt the work
Under the following conditions:
  • attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
  • share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
  1. Strictly speaking, the point on each circle on the negative real axis should be discarded, or the principal value should be used there.

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current19:20, 21 September 2023Thumbnail for version as of 19:20, 21 September 20231,000 × 500 (1.51 MB)Soul windsurfer (talk | contribs)Uploaded own work with UploadWizard

The following page uses this file:

File usage on other wikis

The following other wikis use this file:

Metadata