File:Conformal map.svg

From formulasearchengine
Jump to navigation Jump to search

Original file(SVG file, nominally 535 × 937 pixels, file size: 34 KB)

This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.

Summary

Description Illustration of a conformal map.
Date
Source self-made with MATLAB, tweaked in Inkscape.
Author Oleg Alexandrov
SVG development
InfoField
 
The SVG code is valid.
 
This vector image was created with Inkscape.
 
This file uses translateable embedded text.

Licensing

Public domain I, the copyright holder of this work, release this work into the public domain. This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

Source code (MATLAB)

% Compute the image of a rectangular grid under a a conformal map.

function main()

   N = 15; % num of grid points
   epsilon = 0.1; % displacement for each small diffeomorphism
   num_comp = 10; % number of times the diffeomorphism is composed with itself
 
   S = linspace(-1, 1, N);

   [X, Y] = meshgrid(S);

   
   % graphing settings
   lw = 1.0;

   % KSmrq's colors
   red    = [0.867 0.06 0.14];
   blue   = [0, 129, 205]/256;
   green  = [0, 200,  70]/256;
   yellow = [254, 194,   0]/256;
   white = 0.99*[1, 1, 1];

   mycolor = blue;
   
   % start plotting
   figno=1; figure(figno); clf;

   shiftx = 0; shifty = 0; scale = 1;
   do_plot(X, Y, lw, figno, mycolor, shiftx, shifty, scale)

   I=sqrt(-1);
   Z = X+I*Y;

   % tweak these numbers for a pretty map
   z0 = 1+ 2*I;
   z1 = 0.1+ 0.2*I;
   z2 = 0.2+ 0.3*I;
   a = 0.01;
   b = 0.02;
   shiftx = 0.1; shifty = 1.2; scale = 1.4;
   F = (Z+z0).^2 +a*(Z+z1).^3 +b*(Z+z2).^4;
   F = (1+2*I)*F;
   
   XF = real(F); YF=imag(F);

   do_plot(XF, YF, lw, figno, mycolor, shiftx, shifty, scale)

   axis ([-1 1.3 -2 2]); axis off;

   saveas(gcf, 'Conformal_map.eps', 'psc2');
   
   
function do_plot(X, Y, lw, figno, mycolor, shiftx, shifty, scale)
   figure(figno); hold on;

   [M, N] = size(X);

   X = X - min(min(X));
   Y = Y - min(min(Y));

   a = max(max(max(abs(X))), max(max(abs(Y))));
   X = X/a; Y = Y/a;

   X = scale*(X-shiftx);
   Y = scale*(Y-shifty);
   
   for i=1:N
      plot(X(:, i), Y(:, i), 'linewidth', lw, 'color', mycolor);
      plot(X(i, :), Y(i, :), 'linewidth', lw, 'color', mycolor);
   end
%   axis([-1-small, 1+small, -1-small, 1+small]);
   axis equal; axis off;

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

23 January 2008

image/svg+xml

b587fd0fec3d2789558f1505fa0102f6313872d0

35,295 byte

937 pixel

535 pixel

File history

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

Date/TimeThumbnailDimensionsUserComment
current23:51, 27 January 2008Thumbnail for version as of 23:51, 27 January 2008535 × 937 (34 KB)wikimediacommons>Oleg AlexandrovMake arrow and text smaller

There are no pages that use this file.