Lo que he aprendido: estructuras con TikZ

Estaba yo fabricando mis transpas para dar clase cuando se me ocurrió que tal vez hubiera un paquete de LaTeX para dibujar diagramas de estructuras. Sí, ya sabéis, las míticas celosías que se unen al suelo con triangulitos o triangulitos sobre ruedecitas. Evidentemente, lo hay, se llama stanli, es un paquete basado en TikZ y está tanto en GitHub como en CTAN.

La idea del paquete es definir una librería de objetos que luego nosotros podremos utilizar para crear nuestras estructuras sin tener ni idea de TikZ, como es mi caso. Solo tendremos que recurrir a los comandos \point, \beam, \support y demás para montar piecita a piecita nuestro diagrama.

A la hora de usarlo hay que tener en cuenta dos cosas:

  • El manual en pdf que aparece en GitHub no está actualizado, os recomiendo compilar el archivo stanli.tex para que se corresponda con el paquete en sí.

  • La versión de GitHub y la de CTAN son distintas, yo estoy utilizando la de GitHub porque me permite poner apoyos con ruedecitas (los tipos Xoo y Xooo, con dos y tres ruedecitas respectivamente).

Por lo demás no hay ningún problemas, es facilísimo de usar y trae hasta un tutorial en el manual. Yo simplemente os dejo aquí un ejemplo, lo uso en conjunto con units para que me ajuste las distancias con las unidades correctamente:

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{stanli}
\usepackage[ugly]{units}
\begin{document}
\begin{tikzpicture}

  \scaling{0.5};

  % Nodos 
  \point{a}{0}{1};
  \point{b}{5}{1};
  \point{c}{10}{1};

  % Barras
  \beam{2}{a}{b};
  \beam{2}{b}{c};

  % Apoyos
  \support{1}{a};
  \support{2oo}{c}; 

  % Uniones
  \hinge{1}{b};

  % Fuerzas
  \lineload{1}{a}{b}
  \load{1}{c}[90];

  % Nombres de nodos
  \notation{1}{a}{A}[left];
  \notation{1}{b}{B};
  \notation{1}{c}{C};

  \notation{1}{c}{\unit[500]{N}}[above=10mm, left];   

  % Cotas
  \dimensioning{1}{a}{b}{-1}[{\unit[1]{m}}];
  \dimensioning{1}{b}{c}{-1}[{\unit[1]{m}}];

\end{tikzpicture}
\end{document}

Compilándolo tendríamos este simpático diagrama:

estructura

Hay cosas que se pueden mejorar, pero la verdad es que el resultado es muy bueno y es con diferencia la manera de crear diagramas más fácil que he visto.

Si tengo un rato a ver si les hago un pull request con los problemillas que he visto en el repo.

¡Espero que os resulte tan útil como a mí!

Referencias

TikZ Library for Structural Analysis

Structural analysis best package en TeX Exchange


¡Música!

Anuncios

Lo que he aprendido: ecuaciones rápidas con CDLaTeX

Ando últimamente bastante liadilla y agradezco cualquier herramienta que me facilite la vida. Una que me hace muy feliz es el modo menor de Emacs CDLaTeX, que acabo de descubrir y se ha convertido en imprescindible en mi día a día. En concreto lo uso en combinación con el modo Org, que trae su propia variante org-cdlatex. Paso a hablaros sobre ello.

El modo CDLaTeX

Tal y como dice en su README, CDLaTeX es un modo menor para la inserción rápida de entornos y movidas matemáticas en LaTeX:

CDLaTeX is a minor mode for Emacs supporting fast insertion of environment templates and math stuff in LaTeX

Lo escribió el mismo señor que el modo Org, Carsten Dominik, y se puede encontrar tanto en MELPA como en Github. Requiere texmathp.el que dicen que es parte de Emacs a partir de la versión 21.3, pero yo tuve que instalar AucTeX (que también lo contiene) para hacerlo funcionar.

Ecuaciones rápidas

La idea de este modo es evitarnos el tedio de escribir desde cero las ecuaciones de LaTeX y los símbolos matemáticos. Es muy listo y sabe cuándo estamos dentro de un bloque matemático (entre \begin{equation} y \end{equation}) y cuándo no, y así activa y desactiva funcionalidades según el contexto. Por ejemplo, al escribir un guión bajo nos añade automáticamente las llaves para que escribamos dentro el subíndice.

La tecla principal de este modo es el TAB, que hace de todo:

  • Predice comandos: si lo pulsamos después de haber escrito una parte de un comando nos lo completa. Me encanta porque equ + TAB inserta directamente un entorno de ecuaciones, ¡así de fácil! Podemos ver todas abreviaturas con M-x cdlatex-command-help.

  • Reduce subíndices y superíndices simples: nos escribe automáticamente las llaves para los subíndices y superíndices pero podemos eliminarlas para los casos de una sola letra pulsando el TAB delante de la llave de cierre.

  • Mueve el cursor a la siguiente unidad de interés: podemos avanzar por las ecuaciones con el TAB alegremente.

No solo del TAB se vive, también tenemos otras funcionalidades chulas:

  • Entornos rápidos C-c { nos mete entornos como align dentro del bloque de ecuaciones.

  • El apóstrofe modifica el carácter anterior, añadiendo un punto encima u otras movidas locas matemáticas. Si lo pulsamos y esperamos un poco nos aparece un cuadro con todas las opciones disponibles.

  • El acento grave introduce comandos, por ejemplo `a escribe \alpha tanto dentro como fuera del entorno matemático, `b escribe \beta y así sucesivamente. Varios acentos cambian de nivel, tomando el caso de la letra l como ejemplo, precedida de un acento escribe \lambda, con dos acentos \ell, y con tres \log. Lo que es utilísimo para los que escribirmos mucha mate. ¡Un truco! Para escribir letras griegas mayúsculas, tras introducir una con el acento grave y la letra, podemos usar M-b para movernos al inicio de la palabra y M-c para que Emacs nos la ponga en mayúsculas. Es fantástico. Al igual que el apóstrofe, si esperamos un poco después de pulsarlos nos aparece un cuadro con las opciones.

Lo único que me queda por contaros es que si este modo os conquista como a mí, podéis activarlo siempre con Org añadiendo esta línea al archivo de configuración:

;; Activar CDLaTeX con Org mode
(add-hook 'org-mode-hook 'turn-on-org-cdlatex)

¡Y hala! ¡Productividad a tope! 😀

¿Vosotras qué modos y herramientas usáis para simplificar vuestro trabajo? Ilustradme, porfis.

Referencias

org-cdlatex en el manual de Org

CDLaTeX en GitHub


Últimamente estoy dejando salir a mi celta interior:

Mi entorno de trabajo en Emacs

Estoy fusionando mi amor por Emacs con mi objetivo de ser más productiva (¡todavía más!) al trabajar. Esto pasa evidentemente por perder menos tiempo, que se traduce a su vez en tres cosas:

  • Usar lo menos posible el ratón, con la ventaja añadida de que mis pobres muñecas sufren mucho menos.

  • Salir lo menos posible de Emacs, si Emacs puede hacer todo ¿por qué abandonarlo? Esto conlleva afinar la configuración, algo que considero una inversión a largo plazo (y me divierte lo suyo, además).

  • Automatizar tareas repetitivas, reducir el tiempo gastado en repetir lo mismo una y otra vez es generar tiempo para otras cosas. También se reduce el número de veces que pulso una combinación de teclas determinada y, por lo tanto, mis manitas están más felices.

Un tema interesante que encaja en las tres categorías anteriores es tener preparado un entorno de trabajo al abrir Emacs la primera vez del día. ¿Cómo hago esto? Con una lista de tareas escrita en org que se abre automáticamente al iniciar Emacs. Como curro en diferentes historietas, en esta lista describo lo que tengo que hacer y enlazo los archivos en los que estoy trabajando. De esta manera, me sirve un poco como acta del trabajo que voy realizando y me permite tener localizados los documentos de los diferentes proyectos en los que ando.

Además, basta configurar con qué programa debe abrirse qué tipo de archivo para que tengamos ya la herramienta correcta dispuesta para que le demos caña, cuando no podemos usar directamente Emacs, claro.

Para que la lista de tareas nos aparezca al abrir Emacs solo hay que añadir una línea al final de nuestro archivo de configuración:

(find-file "RUTA_A_LA_LISTA")

He llegado a este sistema de pura casualidad, pero la verdad es que se adapta muy bien a mis necesidades. Otro día os hablaré más en detalle sobre cómo uso Org y compartiré con vosotros mi configuración completa para este modo.

Tengo curiosidad, ¿cómo os organizáis vosotros? ¡Contadme, contadme!

Referencias

A Baby Steps Guide to Managing Your Tasks with Org


Suena mientras escribo esto:

Qué esperar del blog en 2018

Ya que os he contado cuáles son mis objetivos para la vida este 2018, voy a definir también una línea editorial para el blog para este año. Ahora que tengo un trabajo voy a tener menos tiempo libre pero aun así seguiré contando lo que aprendo e ¡inventando panes!

Debido al currelo han regresado al blog tanto Windows como Matlab y seguirán apareciendo de vez en cuando. Ya que no puedo usar GNU/Linux allí (sería la única de mi departamento y me volvería más loca de lo que ya estoy), al menos me las apaño para usar la mayor cantidad de herramientas libres posibles e intento convencer a todos del aumento en la productividad que traen consigo. Una vez que los programas los hayan conquistado, con decirles que en GNU/Linux instalamos casi cualquier cosa en un par de clicks ya les pico la curiosidad del sistema para frikis. Soy malvada ¿eh?

Siguiendo con el tema de mi trabajo, aprovechando que voy a dar clase y que mi asignatura puede definirse como el documental de la mecánica intentaré contaros cosas de ingeniería por aquí. Seguramente tendré que escribir ejemplillos en Matlab, me esforzaré para que funcionen en Octave y por que tengan licencia libre.

Aparte de esto, seguiré a tope con el modo Org de Emacs, que se ha convertido en cuestión de un par de meses en la herramienta que más uso y que me hace enamorarme de Emacs más y más cada día. También sigo personalizando Emacs para que sea una extensión de mí misma. Estoy probando diferentes temas ahora mismo, ¡pronto conseguiré mi editor ideal!

Haré también un esfuerzo adicional para hacerme eco de iniciativas que se alineen con mis principios, ya sean reivindicaciones sobre software libre, proyectos interesantes basados en tecnologías libres o denuncias en contra de las corporaciones que amenazan nuestra libertad. Hasta el momento me he centrado en destacar el valor del software libre, ahora toca hacer también un poco de activismo.

En definitiva, ¡habrá vídeos aleatorios, punk, panes y bizcochos locos y, sobre todo, mucho GNU/Linux!

¡A tope con el 2018!

Mis propósitos para el 2018

Después de haber hecho balance del 2017, me toca definir una línea de trabajo vital para el 2018. La comparto aquí públicamente con vosotros para tener más ganas de seguir adelante. ¡Venga esos propósitos para el nuevo año!

  1. Publicar el libro de LaTeX, ya sea en versión digital, física o ambas. Seguir desarrollando mis otros proyectos literarios.
  2. Aprender sobre diseño y tipografía, son el nexo entre varias de mis pasiones: la escritura, la pintura y la ingeniería.
  3. Aprender un poco de Lisp para entender lo que pongo en el archivo de configuración de Emacs.
  4. Acercarme más a la escena artística de mi ciudad, concretamente a la underground no a la del postureo.
  5. Ir a eventos y lugares interesantes de otras ciudades, empezando por Madrid y la Ingobernable.
  6. Invertir en algún proyecto alineado con mis ideas, ya sea con tiempo o con dinero.
  7. Elegir un instrumento musical y empezar por fin a aprender algo de música.

Os dejo con la canción de daba inicio a mi tesis, veremos en diciembre qué tal me ha ido.

Compilación: greatest hits del 2017

Tal y como hice el año pasado, os traigo las entradas más vistas de entre todo lo que he escrito en el 2017:

  1. Lo que he aprendido: encabezados y pies de página en LaTeX: os hablaba de los estilos de página y del paquete fancyhdr. Amenizaba la historia con una cancioncilla de los Happy Mondays.

  2. Lo que he aprendido: marcas de agua en LaTeX: veíamos hecho realidad el sueño de poner confidencial en rojo de lado a lado de la página gracias al paquete draftwatermark.

  3. Lo que he aprendido: portadas para LaTeX: os contaba truquillos para crear portadas y conseguía fama mundial y una invitación para editar el Wikibook de LaTeX en castellano.

  4. Camino a la panificación: otro pan integral: uno de mis panes llegó a lo más alto gracias a que apareció en la newsletter de El Amasadero.

  5. Lo que he aprendido: blindtext en LaTeX: estuve investigando cómo fabricar documentos con letra sin sentido para probar formatos usando el paquete blindtext.

Bonus: mis entradas favoritas

Curiosamente lo que a mí más me ha gustado escribir no es lo que a la gente más le ha gustado leer. ¡Estas son las entradas que más he disfrutado!

  1. ¿Cuesta tanto aprender?: me pasé por el forro la ley de los titulares de Betteridge en esta entrada sobre mi proceso de aprendizaje.

  2. La universidad pública, el software y los gatetes: donde aproveché que hay alguien que me lee para hacerme eco de la protesta contra los tentáculos de la banca en la universidad pública. ¡Aupa los gatetes!

  3. Camino a la panificación: inventando un pan: resumí mi proceso panificador en una entrada llena de fotos libres de panes.

  4. Sobre doctorarse y tal: reflexioné con bastante mala uva sobre lo que supuso para mí hacer una tesis.

  5. Sobre buscar trabajo: extendí la reflexión anterior al mundo laboral.

  6. Política de troleo: establecí un tono para los comentarios del blog. Como tiene licencia libre, hay por ahí quien la ha adaptado a sus necesidades. Yo me divertí mucho.

Os dejo por hoy con una canción al hilo de la última entrada:

El 2017

Como hice el año pasado voy a hacer balance de este 2017 que está para acabar. Veamos primero cuáles eran los propósitos para este año:

1. Terminar el Curso no convencional de LaTeX.

2. Mejorar Ogibero y presentarlo a los premios Buber.

3. Llevar a cabo el proyecto megasecreto que revolucionará la ingeniería, a dúo con el señor con el sombrero más molón de la tierra.

4. Encontrar o crear un trabajo no convencional que no me haga sentir que pierdo vida en él.

5. Crear un proyecto que englobe tanto Ogibero como el curso de LaTeX y todas las ideas que vendrán.

6. Mejorar mis habilidades panaderas, usando nuevas harinas, yendo a encuentros con otros panaderos caseros o cursos de panificación.

7. Seguir tejiendo y haciendo ganchillo, terminar todo lo que tengo empezado e iniciar nuevas labores.

8. Aumentar mi conciencia social.


¡Repasémoslos intercalando fotos aleatorias de mi año!

Lo primero y más importante es que terminé de escribir el Curso de LaTeX y tuve una idea de cómo publicarlo, aunque me llevará tiempo llevarla a la práctica porque ahora debo currar. Me siento muy orgullosa de mí misma por haber sido capaz de escribir un libro técnico pero ameno (espero) y me alegran muchísimo todas las buenas críticas que he recibido, muchas más de las que esperaba. Esto me anima a seguir escribiendo y compartiendo lo que voy aprendiendo.

Respecto a Ogibero, voy mejorándolo poco a poco según aumentan mis escasísimos conocimientos de HTML y CSS. No pude presentarlo a los premios porque fallaba la dirección, ¡pero el blog quedó finalista en la categoría de página que mejor apoya el software libre! Además, por mi culpa se utilizará otra herramienta para las votaciones ya que la de este año dejó a casi todas las webs que propuse fuera y me quejé por ello a los organizadores.

También el proyecto loco va poco a poco, lo presenté en el blog, pero tanto mi nuevo trabajo de investigadora y docente como el de mi señor hermano como empresario ético, nos impiden dedicarle todo el tiempo que nos gustaría. Lo mismo ocurre con la idea globalizadora, esta clara en mi cabeza, ponerla en práctica ya es más difícil. Pasito a pasito.

Haber pasado la mayor parte de año en el paro me ha permitido además experimentar con montones de tipos de panes, he utilizado harina de Kamut, trigo sarraceno, mijo, patata, germinados y cebada. ¡Hasta fabriqué un bizcocho de chocolate vegano! Cada día comprendo más las masas y, aunque me quede mucho por aprender tengo poco miedo a experimentar.

Aunque parezca mentira, terminé todos mis proyectos tejedores. Por si fuera poco, aprendí a hacer calcetines y fabriqué mi primer calcetín de adulto y cumpliendo un sueño de infancia, aprendí a coser a máquina y me hice un estuche para las agujas, un bolso y una camiseta de unicornios. Empodera mucho el ser capaz de hacerte tus propias cosas. Algún día aprenderé a hacer muebles y me convertiré en una versión femenina del hombre de Bricomanía, uno de mis ídolos de siempre junto con McGyver y el loco del Equipo A.

Este ha sido el año en el que encontré por casualidad el proyecto Inspira cuyo objetivo es fomentar las vocaciones científicas entre las niñas y ahí me fui a un colegio a contarles historietas a unas crías. Vimos que las tecnólogas somos personas normales con trabajos normales y que digan lo que digan los demás, la ciencia es también un trabajo de chicas. La verdad es que nos lo pasamos bien, espero que en su cabeza se una el concepto ingeniería con la loca aquella que una vez nos contó cosas sobre una gran científica que se llamaba Mari Puri.

También este año he empezado a escribir sobre programas libres en Colaboratorio. Últimamente no participo tanto como me gustaría, aunque espero seguir aportando artículos en el futuro a este proyecto colaborativo. Me gusta el hecho de tener una guía de estilo, alguien que revise lo escrito antes de publicar y que haya un grupo de personas a las que poder preguntar. Es muy diferente a mi sistema habitual del blog, véase, la total y absoluta anarquía.

No podía acabar este resumen sin hablar de mis locuras varias. Me vine arriba estudiando italiano online durante mis meses sabáticos (suena mejor que en el paro ¿eh?) y cuando hice la prueba de nivel para la escuela de idiomas ¡resultó que podía matricularme directamente en tercero! También en el tema locuras y como estoy obsesionada con la comida, me he comprado un naranjo, que está en Valencia y me envía sus naranjas cuando las necesito, y he hecho vino y cerveza. Ya sabéis había demasiadas uvas, necesitaba un balde de fermentar, el kit de cervecear estaba de oferta… una cosa tira l’altra.

En fin. Que he hecho un montón de cosas este año y el año que viene haré más. ¡Feliz 2018!