File:Biholomorphism illustration.svg
From Wikimedia Commons, the free media repository
Jump to navigation
Jump to search
![File:Biholomorphism illustration.svg](https://upload.wikimedia.org/wikipedia/commons/thumb/1/13/Biholomorphism_illustration.svg/330px-Biholomorphism_illustration.svg.png?20080131070205)
Size of this PNG preview of this SVG file: 330 × 600 pixels. Other resolutions: 132 × 240 pixels | 264 × 480 pixels | 422 × 768 pixels | 563 × 1,024 pixels | 1,127 × 2,048 pixels | 4,709 × 8,557 pixels.
Original file (SVG file, nominally 4,709 × 8,557 pixels, file size: 43 KB)
File information
Structured data
Captions
Captions
Add a one-line explanation of what this file represents
DescriptionBiholomorphism illustration.svg |
English: Illustration of a biholomorphism. The complex exponential function mapping biholomorphically a rectangle to a quarter-annulus. |
Date | (UTC) |
Source | self-made with MATLAB, tweaked in Inkscape. |
Author | Oleg Alexandrov |
Public domainPublic domainfalsefalse |
![]() |
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. |
% Illustration of a biholomorphim, in this case w=exp(z)
function main()
N = 11; % num of grid points
epsilon = 0.1; % displacement for each small diffeomorphism
num_comp = 10; % number of times the diffeomorphism is composed with itself
Sx = linspace(-1, 1, N);
Sy = linspace(0, pi/2, N);
[X, Y] = meshgrid(Sx, Sy);
% graphing settings
lw = 3.5;
% KSmrq's colors
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;
mode = 1;
do_plot(X, Y, lw, figno, mycolor, mode)
saveas(gcf, 'Biholom1.eps', 'psc2');
plot2svg('Biholom1.svg');
I=sqrt(-1);
Z = X+I*Y;
F=exp(Z);
XF = real(F); YF=imag(F);
figno = 2;
mode = 2;
do_plot(XF, YF, lw, figno, mycolor, mode)
saveas(gcf, 'Biholom2.eps', 'psc2');
plot2svg('Biholom2.svg');
function do_plot(X, Y, lw, figno, mycolor, mode)
figure(figno); clf; hold on;
axis equal; axis off;
minX = min(min(X)); maxX = max(max(X));
minY = min(min(Y)); maxY = max(max(Y));
small = 0.2;
if mode == 1
else
small = 0.5*exp(1)*small;
end
A=minX-small/2; B=maxX+small;
C=minY-small/2; D=maxY+small;
% plot([A B], [0, 0], 'linewidth', lw, 'color', black);
% plot([0, 0], [C, D], 'linewidth', lw, 'color', black);
[M, N] = size(X);
for i=1:N
plot(X(:, i), Y(:, i), 'linewidth', lw, 'color', mycolor);
plot(X(i, :), Y(i, :), 'linewidth', lw, 'color', mycolor);
end
red = [0.867 0.06 0.14];
gray = 0.2*[1, 1, 1];
arrow_size = 0.07*max(maxX, maxY);
sharpness = 20;
arrow_type = 1;
tiny = 0.01;
scale_lw = 0.8;
arrow([A, 0], [B, 0], scale_lw*lw, arrow_size, sharpness, arrow_type, gray);
arrow([0, C], [0, D], scale_lw*lw, arrow_size, sharpness, arrow_type, gray);
fs = 10*max(maxX, maxY);
myrad = 0.009*max(maxX, maxY);
% in the two pictures, the text to be displayed is different
if mode == 1
smallx = -0.03*max(B, D);
smally = -0.12*max(B, D);
text (minX+smallx, smally, sprintf('%d', minX), 'fontsize', fs, 'color', gray);
text (maxX+smallx, smally, sprintf('%d', maxX), 'fontsize', fs, 'color', gray);
% ball(minX, 0, myrad, mycolor);
% ball(maxX, 0, myrad, mycolor);
% ball(0, maxY, myrad, mycolor);
else
smallx = -0.01*max(B, D);
smally = -0.12*max(B, D);
text (minX+smallx, smally, 'e^{-1}', 'fontsize', fs, 'color', gray);
text (maxX+smallx, smally, 'e', 'fontsize', fs, 'color', gray);
% ball(exp(-1), 0, myrad, mycolor); ball(exp(1), 0, myrad, mycolor);
% ball(0, exp(-1), myrad, mycolor); ball(0, exp(1), myrad, mycolor);
end
function ball(x, y, radius, color) % draw a ball of given uniform color
Theta=0:0.1:2*pi;
X=radius*cos(Theta)+x;
Y=radius*sin(Theta)+y;
H=fill(X, Y, color);
set(H, 'EdgeColor', color);
function arrow(start, stop, thickness, arrow_size, sharpness, arrow_type, color)
% Function arguments:
% start, stop: start and end coordinates of arrow, vectors of size 2
% thickness: thickness of arrow stick
% arrow_size: the size of the two sides of the angle in this picture ->
% sharpness: angle between the arrow stick and arrow side, in degrees
% arrow_type: 1 for filled arrow, otherwise the arrow will be just two segments
% color: arrow color, a vector of length three with values in [0, 1]
% convert to complex numbers
i=sqrt(-1);
start=start(1)+i*start(2); stop=stop(1)+i*stop(2);
rotate_angle=exp(i*pi*sharpness/180);
% points making up the arrow tip (besides the "stop" point)
point1 = stop - (arrow_size*rotate_angle)*(stop-start)/abs(stop-start);
point2 = stop - (arrow_size/rotate_angle)*(stop-start)/abs(stop-start);
if arrow_type==1 % filled arrow
% plot the stick, but not till the end, looks bad
t=0.5*arrow_size*cos(pi*sharpness/180)/abs(stop-start); stop1=t*start+(1-t)*stop;
plot(real([start, stop1]), imag([start, stop1]), 'LineWidth', thickness, 'Color', color);
% fill the arrow
H=fill(real([stop, point1, point2]), imag([stop, point1, point2]), color);
set(H, 'EdgeColor', 'none')
else % two-segment arrow
plot(real([start, stop]), imag([start, stop]), 'LineWidth', thickness, 'Color', color);
plot(real([stop, point1]), imag([stop, point1]), 'LineWidth', thickness, 'Color', color);
plot(real([stop, point2]), imag([stop, point2]), 'LineWidth', thickness, 'Color', color);
end
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 07:02, 31 January 2008 | ![]() | 4,709 × 8,557 (43 KB) | Oleg Alexandrov (talk | contribs) | Still tweaking text position |
06:49, 31 January 2008 | ![]() | 4,709 × 8,557 (42 KB) | Oleg Alexandrov (talk | contribs) | ||
06:49, 31 January 2008 | ![]() | 4,709 × 8,557 (42 KB) | Oleg Alexandrov (talk | contribs) | ||
06:47, 31 January 2008 | ![]() | 4,709 × 8,557 (42 KB) | Oleg Alexandrov (talk | contribs) | ||
06:45, 31 January 2008 | ![]() | 4,709 × 8,557 (42 KB) | Oleg Alexandrov (talk | contribs) | ||
06:40, 31 January 2008 | ![]() | 4,617 × 8,557 (41 KB) | Oleg Alexandrov (talk | contribs) | {{Information |Description=Illustration of a biholomorphism. |Source=self-made with MATLAB, tweaked in Inkscape. |Date=~~~~~ |Author= Oleg Alexandrov |Permission=See below |other_versions= }} {{PD-self}} = |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
File usage on other wikis
The following other wikis use this file:
- Usage on de.wikipedia.org
- Usage on en.wikipedia.org
- Usage on es.wikipedia.org
- Usage on ja.wikipedia.org
- Usage on nl.wikipedia.org
- Usage on no.wikipedia.org