He escrito algunas código (que se adjunta a continuación) que genera un real aleatorio polinomio $P$ grado y el coeficiente dentro de un rango. Yo entonces trazado y miró a $im(P(S^1)) $ $S$ siendo el círculo unidad en el plano complejo.
Para mi sorpresa, tengo fotos con algunas propiedades interesantes. (Muy interesante, al menos para mí, (las imágenes se pueden ver a continuación))
Me di cuenta de:
- La figura está conectado (no demasiado sorprendente)
- La figura es la auto-intersección de sí misma y de una intersección parece ser siempre cruzó exactamente dos veces. (Podría estar equivocado, teniendo en cuenta los errores de redondeo, etc.)
- Los puntos de intersección $z_i$ parecen tener Im$(z_i) = 0$
Punto 1. se desprende directamente de S es compacto y de $P$ continuo. Sin embargo me resulta más difícil de justificar, 2 y 3, especialmente me puede hacer una reclamación, tal vez se me acaba la suerte con mis números. Por lo tanto, le agradecería que, si alguien pudiera aclarar los puntos 2 y 3, para mí, si esas declaraciones son correctas y sobre todo ¿por qué. Como siempre gracias de antemano.
'''
Created on 16 Sep 2017
@author: Imago
'''
import pylab
import cmath as c
import matplotlib.cm as cm
import matplotlib.pyplot as plt
import numpy as np
import random as r
NUMBER_OF_POINTS = 0.0001
RADIUS = 2.8
N = NUMBER_OF_POINTS
R = RADIUS
# generate a random polynominal with degree deg, and integer coefficients in range (min, max)
def grp(min, max, deg):
l = list()
for i in range(deg):
l.append(r.randint(min, max))
return np.poly1d(np.array(l))
# give me Re(z), Im(z)
def split(z):
return complex(z).real, complex(z).imag
# my polynominal
f = grp(-3, 3, 10)
print('Polynominal')
print(f)
# interval of numbers between 0 and 1.
I = np.arange(0, 1, N)
# skip the next 6 lines, if you not want to expande the code
X = list()
Y = list()
n = 1
k = 0
X.append(list())
Y.append(list())
# create the points for plotting
for x in I:
z = R * np.exp(x * 2 * np.pi * 1j)
v = f(z)
X[k].append(complex(v).real) # k = 0
Y[k].append(complex(v).imag)
# colour, plot and show the figure
colors = iter(cm.rainbow(np.linspace(0, 1, n))) # n = 1
for c in colors :
plt.scatter(X[k], Y[k], c)
k = k + 1
plt.show()