domingo, 10 de agosto de 2025

Simulando loops de una montaña rusa con R (y GPT-5)

Estos días medio occidente le está contando a la otra mitad en redes sociales que el recién lanzado ChatGPT 5 es una castaña que no sabe sumar, ni dibujar mapas, ni hacer ninguna de las cosas para las que no fue concebido. Yo he querido comprobar si al menos sabe escribirme una rutina para simular la cinemática en un loop de una montaña rusa y, qué cosas, me debe tener cariño porque lo ha niquelado.

Clotoides, las curvas que cuidan de tu cuello

La clotoide, espiral de Euler o espiral de Cornu es una curva en el plano cuya curvatura, es decir el inverso de su radio diferencial, crece (o decrece si vamos en sentido contrario) linealmente con la distancia recorrida sobre la misma. Este comportamiento puede ser muy deseable en aplicaciones donde un objeto moviéndose a velocidad vaya a estar sujeto a cambios de dirección.

domingo, 13 de julio de 2025

Fuentes de los ordenadores de 8 bits (ZX Spectrum, Commodore 64,...) con R

A quienes vivieron sus primeros pasos informáticos en los años 80 del siglo pasado (madre mía cuanto debe haber llovido), sin duda les sonarán los nombres de los primeros ordenadores de 8 bits que se popularizaron en nuestro país, tales como el ZX Spectrum, el Commodore 64, los Amstrad CPC y los MSX principalmente.

domingo, 6 de julio de 2025

Midiendo el rango dinámico de un sensor de imagen

En este artículo vamos a desgranar paso a paso la metodología clásica para calcular el Rango dinámico de un sensor digital de imagen, basándonos en mediciones precisas de ruido hechas sobre capturas RAW de parches de color uniforme. Se define el rango dinámico (RD) de un sensor como el intervalo de niveles de luminosidad (típicamente medido en pasos EV) en los que dicho sensor es capaz de capturar información útil. El RD está limitado en su extremo superior por la propia saturación del sensor y en el extremo inferior por el nivel de ruido máximo aceptable.

domingo, 15 de junio de 2025

Falso color e hiper texturización de hillshades con R

Recopilo dos ejercicios muy sencillos y a la vez un poco locos, implementaciones de sendas ideas compartidas por alguien en Linkedin. John Nelson introdujo falso color en un hillshade repitiendo su cálculo con ligeros cambios en la dirección de iluminación. En el segundo ejercicio Carl Churchill enfatizaba las texturas de un hillshade mediante el cálculo de un hillshade sobre el propio hillshade de partida.

lunes, 9 de junio de 2025

QWERTY vs DVORAK. Contando caracteres con R

El teclado DVORAK dispone las teclas de forma distinta a los QWERTY que usamos casi todos con el objetivo de poder teclear más rápido. Entre otras cosas busca concentrar las pulsaciones en la fila central de teclas, la más fácil de acceder por ergonomía. Vamos a ver cómo se distribuirían las pulsaciones correspodientes a textos reales en ambos tipos de teclado.

domingo, 1 de junio de 2025

El astuto Mercator. Mapas y grandes círculos con R

La deformación de distancias y áreas producida por los mapas construidos mediante la proyección Mercator, usada en sus mapas por los marinos durante siglos y escogida por Google Maps, constituye un clásico bastante comentado en las redes sociales. A menudo equivocadamente; alias la conspiración anti africana.

domingo, 25 de mayo de 2025

Interiorizando (a posteriori) la distribución de Dirichlet

El otro día empecé la casa por el tejado: en el ejercicio 'Estimación del voto mínimo para ganar el televoto en Eurovisión. Caso España-Israel' eché mano de la distribución de Dirichlet sin tener ni idea sobre ella, así que enmiendo el error por escrito.

viernes, 23 de mayo de 2025

Estimación del voto mínimo para ganar el televoto en Eurovisión. Caso España-Israel

Hace unos días Israel quedó ganadora del televoto español en el Festival de la Canción de Eurovisión 2025. No ha trascendido el % de televoto que logró, pero haciendo supuestos sobre cómo se pudiera haber distribuido el televoto entre los 25 países candidatos a ser votados, vamos a atrevernos a estimar una cota inferior del % de televoto requerido para que un país concreto gane.

jueves, 22 de mayo de 2025

Morphing de curvas paramétricas con R

Con lo fácil que es definir vectorialmente en R una curva paramétrica (aquella que depende de un solo valor de entrada constituyendo una función de R → Rn), podemos animar curvas paramétricas en el plano que se transformen en otras con solo interpolarlas linealmente. La única condición a cumplir es que las curvas origen y destino deben estar formadas exactamente por la misma cantidad de puntos.