Club de Ciencias: Universo Fractal · Respuestas Sic = 0obtenemos{0,0,0,0,0,... Sic =...

Post on 22-Jul-2020

8 views 0 download

Transcript of Club de Ciencias: Universo Fractal · Respuestas Sic = 0obtenemos{0,0,0,0,0,... Sic =...

Club de Ciencias: Universo Fractal

José Ibrahim Villanueva Gutiérrez

Consejo Zacatecano de Ciencia, Tecnología e Innovación

17 de Julio 2017

1 El Universo Fractal

2 Los números complejos

3 Introducción a Processing: Dibujando líneas, círculos, polígonosa todo color

4 Equipos de Trabajo

El Universo Fractal

Los Fractales

Un fractal es un objeto cuya estructura básica, aparentementeirregular, se repite a diferentes escalas.

Características de un objeto fractal:Irregular.Autosimilar.dim(Hausdorff-Besicovitch) >dim(topológica).Recursivo.

Historia

Benoît Mandelbrot (1924-2010) matemático polaco en losaños 70’s estudia los fractales con la ayuda de la computadora.Conjunto de Mandelbrot: Sea c un número complejocualquiera. Definimos{

z0 = 0 término inicial,zn+1 = z2

n + c relación de inducción.

Si la sucesión es acotada, es decir que existe una constante Ktal que |zn| < K para todo n, entonces decimos que cpertenece al conjunto de Mandelbrot.

EjercicioCalcule los primeros 10 valores de la sucesión {zn} parac = 0, 1,−1,−1.5,−2 y −3. Determinar si estos están en elconjunto de Mandelbrot.

Respuestas

Si c = 0 obtenemos {0, 0, 0, 0, 0, . . .}Si c = 1 obtenemos {0, 1, 2, 5, 26, . . .} claramente lostérminos se hacen cada vez más grandes, por lo tanto noexiste tal constante K para c, es decir 1 no está en elconjunto de Mandelbrot.Si c = −1 tenemos {0,−1, 0,−1, . . .} y esta sucesión esacotada ya que |0| < | − 1| = 1.Si c = −1.5 tenemos

{0,−1.5, 0.75,−0.9375,−0.6210,−1.11,−0.25, . . .}

En general si |zn| ≤ 1.5 entonces |zn+1| = |z2n − 1.5| ≤ 0.75.

Entonces −1.5 está en el conjunto de Mandelbrot.

¿Cómo se ve el conjunto de Mandelbrot?

Más imágenes (Algoritmo de velocidad de escape)

Programación simple

¡Vamos a echarle un vistazo alProcessing!

Los números complejos

Los números naturales es el conjunto

N = {0, 1, 2, 3, . . .}.

Ellos nos ayudan a contar todo tipo de cosas, por ejemplo cultivosde bacterias

¡Hay infinitos números naturales!

Podemos sumar dos números naturales y el resultado será otronúmero natural:

Si a, b ∈ N ⇒ a + b ∈ N.

N tiene un elemento especial.Dado un número natural a 6= 0 ¿Existe b ∈ N tal que

a + b = 0?

No :(

Los números enteros

Z = {. . . ,−4,−3,−2,−1, 0, 1, 2, 3, . . .},

nos permiten solucionar la ecuación

x + a = 0, para todo a ∈ N.

Además de la suma, en los enteros también podemos definir otraoperación, la multiplicación:

a · b := a + a + · · ·+ a︸ ︷︷ ︸b veces

.

Cuando multiplicamos dos números enteros obtenemos un tercernúmero entero.Tenemos que 0 · a = 0 para todo a entero.Z tiene un elemento especial:

a · 1 = 1 · a = a, para todo a ∈ Z.

Si a 6= 0 y b son enteros, la ecuación

ax + b = 0,

no siempre tiene soluciones enteras.

EjemploSi a = 3 y b = −1, la ecuación

3x−1 = 0

no tiene soluciones enteras ya que ningún número enteromultiplicado por 3 es igual a 1.

¿Para qué números a la ecuación

ax = 1

tiene solución?

Los números racionales

Q ={m

n | m, n ∈ Z, n 6= 0},

son el conjunto de números que solucionan las ecuaciones del tipo

αx + β = 0, con α, β ∈ Z,

Ejemplo24/86 es solución a la ecuación 43x − 12 = 0.

Los números racionales Q están equipados de dos operaciones: Lasuma (Q,+, 0) y la multiplicación (Q,×, 1), un conjunto con dosoperaciones (abelianas, cerradas, compatibles, con inversos) sellama un campo.

¿La ecuación x2 − 2 = 0 tiene soluciones racionales?Es decir, si denotamos

√2 una solución

¿√2 pertenece a Q?

Supongamos que sí, entonces podemos escribir√2 = p

q con p, q ∈ Z \ {0},

podemos suponer que p y q son primos relativos, tenemos

2 · q2 = p2,

implica que p2 es par y por lo tanto p también, entonces podemosescribir p = 2k para un entero k.

2 · q2 = 4k2 ⇒ q2 = 2k2,

por lo tanto q es par, pero esto contradice que p y q sonprimos relativos.

√2 forma parte de una familia de números llamada irracionales.

Los cuales no podemos escribir como cociente de dos númerosenteros.La unión de estas dos familias forma el conjunto de los númerosreales R.

Si consideramos sucesiones de números racionales, es decirconjuntos de la forma

{an}n∈N = {a0, a1, a2, . . .} con ai ∈ Q,

decimos que una sucesión {an}n∈N con ai ∈ Q, converge a unpunto L si para cualquier distancia ε, por muy pequeña que sea,existe un índice N tal que la distancia de todos los miembros quele siguen de la sucesión al punto L es menor a ε.Por ejemplo, la sucesión1, 1 + 1/2, 1 + 1

2 + 12

, . . . , an = 1 + 11 + an−1

, . . .

converge a

√2.

Un número puede identificarse con varias sucesiones de números,por ejemplo el 2:

2 ↔ {2, 2, 2, 2, . . .},

2 ↔ {1987, 1986, 1985, . . . , 4, 3, 2, 2, 2, 2, . . .},

lo que nos importa es lo que pasa en la cola de la sucesión, es deciren el límite.

Definimos los números reales R como el conjunto desucesiones de números racionales que convergen, módulo lassucesiones que convergen a 0.Esta es la manera analítica de ver los números reales,geométricamente los números reales se identifican con la línearecta.

Pero si volvemos al álgebra, consideremos la ecuación

x2 + 1 = 0,

¿Tiene soluciones reales?

No :(

Si definimos i como un número tal que

i2 = −1,

entonces i es solución a la ecuación x2 + 1 = 0.Definimos los números complejos como

C = {a + bi | a, b ∈ R}.

Los números complejos forman un campo (podemos sumar, restar,multiplicar y dividir) algebraicamente cerrado. Es decir, laecuación

anxn + . . . a1x + a0 = 0, con ai ∈ C,

tiene exactamente n soluciones complejas.

Tenemos una correspondencia muy natural entre númeroscomplejos y puntos en el plano:

C = {a + bi | a, b ∈ R} ↔ R2 = {(a, b) | a, b ∈ R}

Para un número complejo z = a + bi. Denotamos <(z) = a laparte real y =(z) = b la parte imaginaria.

En forma polar:

z = a + bi=

√a2 + b2(cos(θ) + sin(θ)i)

= reiθ

Llamamos r =√

a2 + b2 = |z | el módulo del número complejoz = a + ib. Llamamos θ = arctan(b/a) el argumento de z .

El conjugado y el inverso

Denotamos z = a − ib el conjugado de z = a + ib.

Pregunta: ¿Cómo se ve el conjugado z de un número complejo zen el plano?

Para todo número complejo z 6= 0 existe un número complejo z−1

llamado inverso tal que

z ∗ z−1 = 1.

Ejercicio

Demuestre que |z |2 = zz . Concluya que z−1 = z|z |2 .

Suma de dos números complejos

Sean z1 = a1 + ib1 y z2 = a2 + ib2 dos números complejos,

z1 + z2 = (a1 + ib1) + (a2 + ib2)= (a1 + a2) + i(b1 + b2)

en el plano tenemos

Parte real e Imaginaria

EjercicioSea z un número complejo. Describa <(z) y =(z) en términos de zy su conjugado z .

Multiplicación de dos números complejosSean z1 = a1 + ib1 y z2 = a2 + ib2 dos números complejos,

z1 · z2 = (a1 + ib1)(a2 + ib2)= a1(a2 + ib2) + ib1(a2 + ib2)= a1a2 + ia1b2 + ib1a2 − b1b2

= a1a2 − b1b2 + i(a1b2 + b1a2)

es menos intuitivo deducir el comportamiento de la multiplicacióncon este tipo de coordenadas. La solución es tomar coordenadaspolares z1 = r1eiθ1 y z2 = r2eiθ2 , entonces

z1 · z2 = (r1eiθ1)(r2eiθ2)= r1r2eiθ1eiθ2

= r1r2eiθ1+iθ2

= r1r2ei(θ1+θ2)

Multiplicación de dos números complejos

Por lo tanto

z1 · z2 = (r1eiθ1)(r2eiθ2) = r1r2ei(θ1+θ2)

Ejercicios

Desarrollar y representar en el plano las siguientes operaciones denúmeros complejos:

1 (1 + i) + (2 + i)2 (1− 4i)− (−9 + 6i)3 (3i) ∗ (2 + i)4 (3 + i) ∗ i5 (3 + i) ∗ i2

6 (3 + i) ∗ i3

7 (3 + i) ∗ i4

8 (3 + i) ∗ i5

9 (−4− 2i) ∗(−1

2 +√

32 i)

10 (−4− 2i) ∗(−1

2 +√

32 i)2

11 (−4− 2i) ∗(−1

2 +√

32 i)3

Ejercicios

Encuentre el módulo, el argumento y los inversos de los siguientesnúmeros complejos:

1 i2 (−2− 2i)3(−3

2 +√

272 i)

4 e2πi/5

Introducción a Processing: Dibujando líneas,círculos, polígonos a todo color

Interfaz de Processing

Abrir Processing.Escribir en la primera líneaprint("Hello World!");y presionar el botón play (o Ctrl+R).Sin el punto y comaprint("Hello World!")obtenemos un error.Podemos cambiar el tamaño del marco donde vamos a dibujarsize(300,200);

Podemos ponerle color al fondo del marcobackground(255);

Ahora probemosbackground(255,0,0);

Dos funciones importantes

La función setup nos permite definir los parámetros generalesde nuestra animación:void setup() {

frameRate(60);size(300, 200);background(255,0,0);smooth();}

La función draw ejecuta en ciclos las instrucciones quecontiene, entoncesvoid draw() {

point(100+random(100),50+random(100));}dibuja puntitos aleatorios en un cuadro de 100px×100px.

Lineas

Las coordenadas en el marco de Processing están dispuestasde la siguiente manera:

Para trazar una línea debemos de decirle a Processing lospuntos de llegada y de partida:void draw() {

line(10,50,150,200);}

Elipses y rectángulos

Para graficar elipses tenemos que especificar las coordenadasde su centro, y la medida de sus ejes, por ejemplovoid draw(){

stroke(255,0,0);noFill();ellipse(50,100,30,30);stroke(0,255,0);fill(200,100,0);ellipse(220,150,100,20);}

Para graficar rectángulos tenemos que especificar lo mismo:unas coordenadas donde pondremos el vértice superiorizquierdo del rectángulo y el tamaño de sus lados:void draw() { fill(100,100,12); stroke(255);

rect(0,0,50,100); fill(18,100,12); noStroke();rect(200,120,20,20); }

Variables en ProcessingEn Processing existen varios tipos de variables:

boolean Representan una dicotomía: true or false (1 ó 0)

boolean Circle = true;

int Representan números enteros.

int n = 255;

float Representan números racionales.

float x = 3.1416;

color En escala de grises o en formato RGB.

color gris_claro = color(200); // Escala de Grisescolor verde = color(0,n,0); // Formato RGB

String Son cadenas de caracteres alfa-numéricos sin valoralguno.

String nombre = "Andrea";

Globales y localesLas variables locales sólo están definidas en una parte de nuestroprograma y las globales son válidas en todo el código.

Globalespublic boolean Shot;public int H=600;public int W=600;public int imnumber=0;

Localesvoid Photo() {

if(Shot){PImage newImage = createImage(W, H, RGB);newImage = get();String[] name = {"Image", str(imnumber), ".jpg"};newImage.save(join(name, ""));imnumber++;Shot=false;}

}

Funciones útiles en programación

if: ejecuta un comando si se satisface cierta propiedad o no.Estructura:if(Condición){Acciones en caso positivo}else{Acciones en caso negativo}Ejemplo:void setup(){background(255);}void draw(){}void mousePressed(){if(mouseX>=width/2){fill(255,0,0);}else{fill(0,0,255);}noStroke();ellipse(mouseX,mouseY,4,4);}

Funciones útiles en programación

for: ejecuta una instrucción una cierta cantidad de veces.Estructura:for(n=Valor_inicial,Valor_final, Próximo_valor_de_n){Acción}

Ejemplo:void setup(){background(255);}void draw(){for(int n=0;n<=width;n=(n+1)*(n+1)){line(n,0,n,height);line(0,n,width,n);}}

Equipos de Trabajo

Armemos equipos de trabajoCriterios

En todo equipo siempre habrá al menos una chica y al menosun chico.En todo equipo siempre habrá alguien que tenga nociones deprogramaciónLas personas del equipo no se conocían.