Análisis matricial de armaduras con Python
Escribí un libro para estudiantes de 4.º año de Ingeniería Civil que nunca han programado: capítulo a capítulo, convierten el método de rigidez en una calculadora de armaduras 2D escrita por ellos en Python, y entienden cada línea.
- Para
- Estudiantes de Ingeniería Civil
- Mi rol
- Autor: texto, código, figuras, maqueta y web
- Periodo
- 2026, versión preliminar
- Leer en la web
- eder3232-libro-armaduras.vercel.app

186
páginas, 12 capítulos y 6 anexos
35
notebooks para abrir en Colab
71
tests que verifican cada resultado
El problema
En la universidad aprendemos el método de rigidez a mano y después usamos programas comerciales que son una caja negra. Los cursos de Python, por su lado, enseñan con ejemplos que nada tienen que ver con estructuras. El estudiante nunca junta las dos cosas.
Y para quien nunca programó, instalar Python es donde abandona. El libro tenía que funcionar sin instalar nada.
Lo que construí
Una calculadora escrita por el estudiante
Cada capítulo agrega una pieza: geometría, matriz de rigidez, ensamblaje, desplazamientos, fuerzas y gráficos. Al final, el estudiante tiene su notebook «Mi calculadora de armaduras», con motor, datos y resultados, y resuelve un puente Pratt.
Python justo cuando hace falta
Cada herramienta de Python aparece cuando el método la necesita: los diccionarios para describir la armadura, las funciones para la matriz de una barra, NumPy para ensamblar. Nodos, barras y grados de libertad se cuentan desde 1, como en clase.
Sin instalar nada
Se trabaja en Google Colab desde el propio Drive. Cada capítulo trae su notebook, sus soluciones y un punto de control con todo el código acumulado, para recuperarse si algo falló.
Ningún número escrito a mano
Cada resultado que cita el texto sale de ejecutar el código del libro, y los tests comprueban que la calculadora cumpla el equilibrio en cada ejemplo y que coincida con OpenSees, un programa de análisis estructural de código abierto. Los ejemplos usan acero, perfiles y cargas reales.
Cómo se hace
Un libro técnico en tres formatos se desincroniza solo: corriges un número en el PDF y queda mal en la web. La regla fue que nada se escriba dos veces. Así lo puedes armar tú:
- 1
La prosa, en LaTeX
El texto se escribe una sola vez, en LaTeX, con una maqueta propia. Las figuras son TikZ, y la notación matemática vive en un archivo de macros que también usa la web.
LaTeXTikZlatexmk - 2
El código, en archivos de Python
Un archivo por capítulo, en el formato de celdas de Jupytext. Cada celda lleva una etiqueta: si va a la calculadora, si es solo para explorar o si registra un número que cita el texto. El libro cita fragmentos por nombre, nunca por número de línea.
PythonNumPyMatplotlibJupytext - 3
Los notebooks se generan
Un script ejecuta el código y arma tres notebooks por capítulo: la lección, las soluciones y el punto de control. Nadie los edita a mano. Como están en GitHub, se abren en Colab con un botón.
JupyternbclientGoogle Colab - 4
La web sale del mismo LaTeX
Un convertidor pasa cada capítulo a MDX, y Next.js lo publica como sitio estático. Las fórmulas se dibujan con KaTeX usando las mismas macros del PDF, y las figuras TikZ se convierten a SVG.
Next.js 16MDXKaTeXVercel - 5
Un comando lo construye todo
uv run python scripts/construir.py compila el PDF, genera los notebooks y la web, y corre los tests. Si un número del texto ya no coincide con lo que da el código, la construcción se detiene.
uvpytest
Con qué
Cómo se ve




Después
Esta es la versión preliminar: los ejemplos ya están validados con OpenSees (anexo D) y solo faltan algunas capturas. Lo que viene: ejecutar el código en la misma página de la web, animaciones interactivas y una segunda parte con asentamientos, temperatura y apoyos inclinados.
¿Lo usas en tu curso o encontraste un error?
Escríbeme por WhatsApp