TARDÍGRADOS

Ciencia en español

Posts Tagged ‘Flash’

En el cálculo estocástico de las órbitas gravitatorias en el problema de los dos cuerpos, las ondas gravitacionales no existen

Posted by Albert Zotkin en julio 11, 2016

Hola amigo de Tardígrados. Hoy vamos a calcular, de diversas formas, las órbitas de dos cuerpos que gravitan el uno alrededor del otro. En realidad, dos cuerpos de masas m₁ y m₂, gravitan alrededor de un centro común, llamado baricentro (o centro de masas). Si los vectores de posición son r₁ y r₂, el baricentro será el apuntado por el vector:

\displaystyle R =\frac{m_1r_1+m_2r_2}{m_1+m_2}

Voy a programar una simulación (una animación en Flash) escribiendo unas pocas lineas de código en actionscript, en la cual veremos el movimiento orbital de esos dos cuerpos. Para ello, yo usaré el software Flash CS4 de Adobe (Abode Flash Profesional). La intención de diseñar esta pequeña simulación no es sólo ver la evolución gravitatoria del problema de los dos cuerpos, sino de ver cómo las órbitas decaen en dicha simulación debido a algo insólito: la perdida de información computacional. Esto significa que las órbitas de los dos cuerpos pierden poco a poco energía gravitacional, pero esa pérdida no se disipa en forma de ondas gravitacionales, sino que simplemente se expresa en ese decaimiento orbital hasta que los dos cuerpos solisionan.

Pero, empecemos ya a programar nuestra pequeña simulación de los dos cuerpos orbitales: abrimos nuestro programa de Adobe Flash CS4,

1. Creamos una animación en la versión de flashfile (actionscript 2.0).
2. Creamos tres videoclips, dos para cada uno de los dos cuerpos orbitales, y un tercero para el centro de masas. A los videoclips de los cuerpos los llamaremos a1 y a2, y al del centro de masas, cm. Los videoclips a1 y a2 serán dos circulos de distinto color y de pocos pixels de radio. Y el videoclip cm poseerá un radio mínimo, el suficiente para ser visto como un punto destacado sobre el fondo de la animación. Cada videoclip en una animación Flash posee una serie de propiedades, y una de esas propiedades son sus coordenadas espaciales bidimensionales, (_x, _y), dentro del plano de la animación. Por ejemplo, el videloclip correspondiente al primer cuerpo cuya masa es m₁, que hemos llamado a1, posee, en la animación que he hecho yo, las siguientes coordenadas espaciales iniciales: a1._x = 160, a1._y = 185. En el sistema de referencia bidimensional usado en Flash, el origen de coordenadas está en la esquina superior izquierda del plano general, y los valores positivos para la abscisa _x corren hacia la derecha, mientras que los valores positivos de la ordenada _y corren hacia abajo. La unidades de medidas de las distancias se expresan en pixels.

Escribamos ahora todo el código de actionscript para nuestra animación. En primer lugar, escribiremos el código para cada uno de los videoclips cuando se cargan al inicio. Para el viceoclip a1 tendremos las siguientes condiciones iniciales:

load.a1

puesto que hemos definido propiedades como la masa y la densidad para ese cuerpo, dibujaremos el circulo que representa a dicho cuerpo a escala, según el valor relativo de esos paramétros. Así, como escribo en el código de arriba, su anchura a escala, _width (que es de igual valor que su altura, _height), la calculo así:

\displaystyle \mathrm{\_width}=20\sqrt[3]{\frac{4\pi \times \mathrm{mass}}{\mathrm{ density}}}
Igualmente, para el videoclip a2 tendremos el código inicial de carga siguiente:

load.a2

Observamos también, en estos códigos de carga de las condiciones iniciales, que está definida la velocidad inicial para cada cuerpo. Como aún no hemos escrito el código para la interacción gravitatoria, esas velocidades iniciales no serían modificadas, y por lo tanto los dos cuerpos permanecerian en movimiento inercial, rectilíneo uniforme. Cabe reseñar también dos cosas más. Primero, que he introducido unas variables, rx, ry, que uso para guardar los últimos valores de las coordenadas espaciales. Segundo, que la velocidad de cada cuerpo al ser una magnitud vectorial, la he separado en sus dos componentes ortogonales en el sistema de referencia. Así, por ejemplo, para este último videoclip a2, las componentes de su velocidad son speed.x = -1, speed.y = 0, y eso quiere decir que ese cuerpo se movería inicialmente e inercialmente hacia la izquierda, mientras que su componente en el eje vertical, al ser 0, indica que no se movería inercialmente por dicho eje.

Escribamos seguidamente el código de las condiciones iniciales de carga para el videoclip cm, que representa el centro de masas de los dos cuerpos anteriores:

cm

Aquí en este código, vemos cómo hemos escrito las coordenadas del centro de masas de los dos cuerpos. Ahora nos falta la rutina principal de la animación en la que escribiremos las ecuaciones para la interacción gravitatioria de esos dos cuerpos. Puesto que es evidente que estamos usando formalismos de gravitación clásica Newtoniana, hay que decir el movimiento inercial de esos dos cuerpos se rompe cuando interactuan gravitacionalmente, y eso significa que cada uno sentirá una aceleración cuyo valor será directamente proporcional a la masa del otro cuerpo e inversamente proporcional al cuadrado de su distancia. Es decir, la aceleración gravitatoria que siente el cuerpo a1 debido a la presencia del cuerpo a2 será:

\displaystyle a_{12}= \frac{G m_2}{r^2}

y recíprocamente la aceleración que siente a2 será:

\displaystyle a_{21}= \frac{G m_1}{r^2}
Por lo tanto, ya estamos en condiciones de escribir el código de la rutina principal para la interacción gravitatoria:

update3

Esta rutína (función) la he llamado update3, y posee un único argumento de entrada, el argumento m, que es una referencia a un videoclip, ya sea el a1 o el a2. Esta función devuelve (return) el valor de la variable r, es decir, la distancia actual entre ambos cuerpos. Vemos que la tarea principal de esta rutina es el cálculo de la aceleración del campo gravitatorio, como ya he especificado arriba en a₁₂ y en a₂₁. Una vez que se ha calculado esa aceleración, la descomponemos en sus componentes ortogonales según los dos ejes del sistema de referencia, y convenientemente escaladas, las restamos a las componentes de la velocidad. ¿Por qué hay que restar la aceleración a una velocidad?. Es decir, ¿por qué realizo los cálculos m.speed.x -= accel_x, m.speed.y-=accel_y?. Pues simplemente, se ha de realizar esa resta porque una aceleración no es más que un incremento o decremento de una velocidad por unidad de tiempo. En otras palabras, la aceleración no es más que la primera derivada de una velocidad respecto al tiempo. Después, en el código de esa rutina, igualmente resto la componente de la velocidad de la componente espacial, y se hace por la misma razón. Una velocidad no es más que un incremento o decremento de una distancia por unidad de tiempo, es decir, es la primera derivada del espacio respecto al tiempo. Con esta última substracción ya hemos actualizado las coordenadas espaciales de cada cuerpo según la interacción gravitatoria, aplicada a su movimiento inercial. Este cálculo con la función update3 se ha de hacer en cada uno de los frames (fotogramas) de la animación. En la que yo he realizado, el número de fotogramas por segundo (fps) lo he puesto a 100, y eso quiere decir que cada centésima de segundo hay que actualizar y calcular y dibujar todo para presentar la animación en tiempo real al espectador. Así, la rutina en actionscript para cuando el cursor de la animación pase por cada frame, será la siguiente:

enterframe

donde en la ultima línea de código controlo la posible colisión de los dos cuerpos, parando la animación cuando la distancia r sea menor que los tamaños relativos de cada círculo. El control de colisiones de videoclips en Flash tambíen se puede hacer con una función predefinida que se llama hitTest, pero yo he preferido definir mi propia función de colisión. Pero, aquí está el meollo de toda esta animación del problema de los dos cuerpos. Se supone que las órbitas de los dos cuerpos, que siguen la Ley de la Gravitación Universal de Newton, deberían ser estables, y por lo tanto deberían seguir trayectorias elípticas o circulares si no hay otras fuerzas externas que las perturben. Pero, lo sorprendente de esta pequeña animación que he realizado es que al ver como evolucionan esas órbitas observamos que poco a poco los dos cuerpos se van aproximando el uno hacia el otro hasta que acaban colisionando. ¿por qué ocurre eso?. La clave está en los incrementos (aceleraciones) que he substraido a las velocidades y de los incrementos substraidos (velocidades) a las coordenadas espaciales. Para que las órbitas fueran exactamente estables, sin que decayeran poco a poco, los incrementos a substraer deberían ser infinitesimales, es decir, unas cantidades muy próximas a cero. Pero, entonces deberíamos aumentar el número de frames por segundo hasta valores que no serían computables.

En la animación que yo he realizado hay algunos parámetros auxiliare más, que no he especifico, porque no tienen mucha importancia. Ahora solo resta hacer una captura de pantalla de la animación y convertirla en un gif animado, ya que WordPress ya no admite archivos Flash de extension swf:

tbp

Observamos con estupor que lo que la ciencia actual llama ondas gravitacionales, emitidas por pulsares binarios que son observados decayendo orbitalmente, es simple y llanamente una pérdida de información cuántica. El problema es que la mecánica cuántica no admite que los sistemas puedan perder información de forma irrecuperable, pero en esta pequeña animación Flash vemos cómo eso es posible en un universo cuya evolución es calculada en cada micro-estado y en intervalos infinitesimales de tiempo que quizás coincidan con tiempos de Planck. La conclusión más dramática que hemos de hacer de todo esto es que las ondas gravitacionales no existen en nuestro universo, y por lo tanto que el supuesto observatorio LIGO (advanced LIGO) nos la está metiendo doblada al afirmar que han descubierto evidencias directas de dichas ondas. Sólo una mente ingenua y simple podría creerse semejante patraña. Cualquier persona con una inteligencia mediana podría comprobar por si misma cómo ese supuesto observatorio no puede detectar movimientos vibratorios de amplitudes tan ínfimas como la milésima parte del radio de un protón. ¿Dónde está el Principio de Incertidumbre que es pieza central de la Mecánica Cuántica, y que la Relatividad General parece querer ignorarlo propugnando un espacio-tiempo infinitamente continuo?. Incluso si no fuera un fraude tan brutal ese que nos quiere meter LIGO, tampoco sería una prueba directa de la existencia de esas ondas gravitacionales, por la sencilla razón de que no existe ningún otro medio independiente de saber que esas supuestas ondas vienen de donde dicen ellos que vienen, y producidas por la causa que ellos dicen que son producidas. El único argumento que usan para afirmar tan rotundamente que esas ondas son reales es que coinciden en forma con las de los libros de texto de la Relatividad General. Si existieran otros medios de comprobar esos supuestos hallazgos, como por ejemplo señales luminosas observables con telescopios ópticos o señales radioeléctricas observables con radiotelescopios, de las supuestas fuentes cósmicas generadoras, entonces y sólo entonces podríamos empezar a creer en ellos. Pero mientras sigan diciéndonos los “listillos” de LIGO que esas ondas proceden de la colisión de dos agujeros negros, estarán intentando metérnosla doblada. Cuando digan que han observado la colisión de un pulsar binario, y a LIGO ha llegado la perturbación gravitacional y a los distintos telescopios ópticos el destello luminoso de esa colisión, entonces y sólo entonces, los que no somos idiotas del todo, empezaremos a creer en la existencia de ondas gravitaciuonales. Mientras tanto, hay que conformarse con mirar con estupor a este universo computacional y observar boquiabiertos que no sólo la interacción gravitatoria está sujeta a perdidas de información cuántica, sino todas las demás. Y todo esto nos indica que es muy probable que nuestro universo es simplemente una gigantesca simulación fractal que está siendo ejecutada en un superordenador cuántico. Que nuestro universo sea una gigantesca simulación no significa que no te duela tu dolor de muelas. En realidad ocurriría que todo en este universo simulado seria real para nosotros, pero sólo sería virtual para los hipotéticos espectadores externos a nuestro universo que contemplan esa simulación.

Saludos

.

Posted in Astrofísica, Cosmología, curiosidades y analogías, Física de partículas, Fractales, Gravedad Cuántica, informática, Matemáticas, Mecánica Cuántica, Relatividad | Etiquetado: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a Comment »

Un intento de investigar la profundidad computacional de nuestro universo

Posted by Albert Zotkin en septiembre 16, 2015

fractal-univser

Hace ya algún tiempo hice una pequeña animación en flash, en la que mostraba cómo una pequeña simulación de interacción gravitatoria entre dos cuerpos es suficiente para convencernos de que existe pérdida de información, y eso se traduce en decaimiento orbital (acortamiento del periodo orbital, estrechamiento de la órbita): Aquí os dejo una pequeña captura del programa SWF en acción, que he subido a youtube:

Esa animación está gobernada por un sencillo programa informático (escrito en actionscript). En dicho programa uso la clásica ecuación de Newton de la gravitación universal para el cálculo de la aceleración. Las coordenadas espaciales de los dos cuerpos, calculadas fotograma a fotograma, deberían de dar trayectorias elípticas estables según las leyes de Kepler, pero se observa cómo poco a poco los cuerpos aproximan sus periastros hasta llegar a colisionar. Lo curioso de todo eso es que esa aproximación progresiva, que se puede traducir como pérdida de energía gravitacional, no está programada en el actionscript, sino que emerge por la imprecisión de los registros informáticos que almacenan los datos de la computación. Es decir, aunque las ecuaciones matemáticas que expresan la ley de gravitación son exactas y dan órbitas estables, su ejecución en un ordenador con registros finitos deja de ser exacta para pasar a mostrar degeneración orbital a lo largo del periodo de evolución del sistema gravitacional binario que simula.

Para los incrédulos, mostraré sucintamente las rutinas que escribí en el actionscript de la animación. En primer lugar presento la función que actualiza las coordenadas espaciales de cada uno de los dos cuerpos del sistema binario (podría ser un pulsar binario, como el PSR B1913+16, por ejemplo). Esta rutina es llamada siempre antes de que el programa dibuje cada fotograma:

function update2(m)
{

var cm_x;
var cm_y;
if(_root.r_frame==null){
cm_x=Stage.width/2;
cm_y=Stage.height/2;
}else{
cm_x=_root.r_frame._x;
cm_y=_root.r_frame._y;
}

var r = Math.sqrt(Math.pow((m._x-m.target_body._x),2)+Math.pow((m._y-m.target_body._y),2));
var accel = 30*m.mass*m.target_body.mass/Math.pow(r,2);
var cosx=(m._x-m.target_body._x)/r;
var cosy=(m._y-m.target_body._y)/r;
var accel_x = accel*cosx;
var accel_y = accel*cosy;
var s=1;
m.speed.x-=accel_x;
m.speed.y-=accel_y;
m._x+=m.speed.x-cm_x+Stage.width/2;
m._y+=m.speed.y-cm_y+Stage.height/2;

s=(m._y-m.target_body._y)<0?-1:1;
m._rotation=s*Math.acos(cosx)*180/Math.PI-90;

}

y seguidamente, presento las rutinas de lo que tiene que hacer cada cuerpo en cada frame, así como sus condiciones iniciales:

onClipEvent (load) {
speed = new Object;
speed.x=0;
speed.y=0.1;
mass=3.0;
density =1;
_width=20*Math.pow((3/(4*Math.PI))*mass/density,1/3);
_height=_width;
/*
_width=mass*4;
_height=mass*4;
*/
target_body=_root.a2;
//_visible=false;
body_type=1;//2 star, 1 planet
gotoAndStop(body_type);
this.rx=this._x;
this.ry=this._y;

}

onClipEvent (enterFrame) {
if(this, hittest(this.target_body))
_root.pause=true;

if(_root.pause or !_visible)return;
_root.update2(this);
}

Señoras y señores, en otras palabras. Lo que hasta ahora se viene llamando ondas gravitacionales es simplemente una falacia más. Dichas ondas no existen en nuestro universo. El decaimiento de las órbitas de los sistemas binarios, y por extensión, de cualquier sistema gravitatorio, es simple y llanamente debido a una pérdida de información cuántica en la computación que la naturaleza hace. Aunque nuestro universo podría ser infinito y eterno, el aumento de entropía en él sería un signo inequívoco de esa pérdida de información cuántica. Nuestro universo es un holograma, un autómata celular, no es la última realidad profunda. Pero, alguien podría preguntarse : “¿cómo es posible que si el universo es infinito y eterno pueda ser al mismo tiempo un holograma, un autómata celular?. Esos automatas celulares requerirían unos registros cuánticos infinitos”. Esa pregunta es muy razonable, pero un universo infinito y eterno no está en contradicción con que sea una simulación ejecutada desde registros cuánticos finitos. Sólo se requiere que la simulación del universo sea un holograma fractal. Veamos, este video de Musicians With Guns en el que nos presenta un fractal infinito, pero obviamente ejecutado desde un ordenador (cuyos registros, sabemos sin duda, que son de capacidad finita):

Un fractal, como el que nos ha presentado Musicians With Guns, no es más que una sencillita ecuación matemática acompañada de una lista de condiciones de inclusividad, y todo ello define lo que es el conjunto fractal (es decir, un conjunto de elementos que cumplen ciertas condiciones). Cuando dibujamos el fractal, los pixeles pertenecientes al fondo (elementos que no pertenecen al conjunto fractal) se pintan con un color y los pixeles que representan a elementos del conjunto se pintan de otro color que contraste con el primero, de modo que podamos destacar con facilidad el fractal del fondo.

Saludos

Posted in Astrofísica, Autómatas celulares, Cosmología, Gravedad Cuántica, informática, Inteligencia artificial, Matemáticas, Mecánica Cuántica, Relatividad | Etiquetado: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a Comment »

Muestras de núcleos de hielo profundo revelan la historia del clima de la Tierra

Posted by Albert Zotkin en abril 10, 2013

Núcleos de hielo en la planta de almacenamiento del NICL (Laboratorio Nacional de Núcleos de Hielo)

En lo profundo de la bóveda helada del Laboratorio Nacional de Núcleos de Hielo en Denver, Colorado, los trozos de hielo de hasta casi medio millón de años de antigüedad están ayudando a los investigadores a desvelar los misterios del cambio climático. Las muestras de hielo se recogieron en la Antártida y Groenlandia. Son parte de una de las mayores colecciones del mundo de núcleos de hielo, en un programa financiado por la National Science Foundation (NSF) y por el U.S. Geological Survey (USGS, Servicio Geológico de EE.UU.). La Antártida y Groenlandia tienen glaciares con capas de nieve y hielo que se conservan intactas a lo largo de cientos de miles de años. A través de los estudios de las muestras de hielo extraídas mediante la perforación de miles de metros en estos glaciares, los científicos pueden crear modelos matemáticos de la historia del clima de la Tierra. Se han descubierto cambios extremos del clima en el pasado de la Tierra, algunos de las cuales se produjeron muy rápidamente, en menos de una década.
Estas muestras de núcleos de hielo proporcionan una valiosa información sobre la composición atmosférica, la temperatura y otros datos climáticos, en un cilindro muy largo y continuo, por lo que constituyen una de las herramientas más importantes para los investigadores del clima.
“Esa información es muy importante en la investigación sobre el cambio climático, ya que con ella podemos etiquetar con fechas las distintas secciones del espesor del nucleo hielo”, dijo Todd Hinkley, ex-director del NICL y científico del USGS . “En realidad no hará mucho bueno que decir, ‘Bueno, nos fuimos en bastante profundo, por lo que este debe ser viejo”. Hay que ser precisos al respecto, y las muestras de hielo lo permiten. Esta es su fuerza como herramienta de investigación científica “.

Posted in Ciencia polar | Etiquetado: , , , , , , , , , | Leave a Comment »

Vida en Marte de la clase Alfa-1 encuentra al robot Curiosity

Posted by Albert Zotkin en marzo 29, 2013

Hace poco terminé de programar este player en flash para fotos panorámicas. Para navegar por la foto panorámica, mantén presionado el botón izquierdo del ratón más o menos sobre el centro de la imagen y arrastra hacia la dirección que quieres visualizar. Si quieres en pantalla completa haz click en el botón de la derecha del menú de navegación del player.

#VidaEnMarteClaseAlfa

Posted in Astrofísica, Cosmología, informática | Etiquetado: , , , , , , | Leave a Comment »

Panorama 360º del Fondo Cósmico de Microondas

Posted by Albert Zotkin en marzo 27, 2013

Hace poco terminé de programar este player en flash para fotos panorámicas. En este ejemplo, proyecto el mapa de WMAP de la Radiación Cósmica de Fondo (CMB). Para navegar por la esfera, mantén presionado el botón izquierdo del ratón más o menos sobre el centro de la imagen y arrastra hacia la dirección que quieres visualizar. Si quieres en pantalla completa haz click en el botón de la derecha del menú de navegación del player.
Esta imagen muestra las fluctuaciones de la CMB durante cinco años de exploración de la sonda WMAP. El brillo promedio corresponde a una temperatura de 2.725 kelvin (grados sobre el cero absoluto de temperatura, equivalente a -270 grados centígrados, 0 -455 grados fahrenheit). Los colores presentan variaciones de temperatura, igual que en un mapa del tiempo: las regiones en roja son más calientes y las azules más frias que la media (0.0002 grados menos). Este mapa se elaboró a partir de cinco bandas de frecuencia, de tal forma que las señales provenientes de nuestra Vía Láctea han sido suprimidas.

Posted in Astrofísica, Cosmología, informática | Etiquetado: , , , , , | Leave a Comment »

 
A %d blogueros les gusta esto: