ConvertAll, el más versátil convertidor de unidades

Seguimos hablando de programas que aceptan unidades de medición. Esta vez nos toca convertir unidades.

La mayor parte de los convertidores de unidades que existen solo ofrecen una lista de combinaciones predefinidas, pero en ocasiones esto no es suficiente ya que nuestros cálculos pueden circular por derroteros impredecibles. ¿Convertir de «unidad astronómica al día» a «metro al segundo»? No importa cómo has llegado allí o si tiene sentido lo que has construido, ConvertAll te permitirá hacer la conversión que necesitas rápidamente gracias a una simple interfaz gráfica que te deja combinar las unidades que quieras, como quieras y sin limitaciones

El programa, que tiene una larga historia a cuestas (su primera versión pública fue en el 2001) está actualmente escrito en Python3 y utiliza las librerías gráficas PyQt5. También existe una versión JavaScript para utilizar desde el navegador.

Es interesante notar que ambos campos a los lados del signo igual pueden modificarse: si, como en la captura de pantalla escribimos en el de la izquierda el de la derecha mostrará la conversión, pero si escribimos en el de la derecha será el de la izquierda el que muestre un resultado. De esta forma podemos ir y venir entre dos combinaciones compatibles de unidades sin problemas.

ConvertAll está disponible en muchas distribuciones Linux, generalmente a través de algún repositorio extra (en openSUSE se encuentra en el repositorio KDE:Extra), pero en caso no se encuentre la última versión o no se quiera habilitar más repositorios, instalar el programa «a mano» es realmente simple. De hecho, ni siquiera es necesario «instalarlo», podemos tenerlo disponible en un usuario particular sin tener que hacer una instalación como administrador.

Por ejemplo, si queremos instarlo en la carpeta ~/bin/ConvertAll/ simplemente descargamos el archivo convertall-x.y.z.tar.gz, lo descomprimimos, entramos en la carpeta resultante y allí donde vemos el archivo install.py abrimos una terminal virtual y escribimos

python3 install.py -p ~/bin/ConvertAll

Nota: Si no se especifica el parámetro -p ~/bin/ConvertAll el programa se instalará en la dirección predefinida, que es /usr/local. En este caso se necesitará tener privilegios de administrador.

Ahora sí, solo nos quedará crear un acceso a la aplicación

~/bin/ConvertAll/bin/convertall

para utilizarla con comodidad. El icono del programa se encontrará en

~/bin/ConvertAll/share/icons/convertall

por lo que ya saben.


Como anécdota histórica, decir que el icono actual del programa fue introducido el 22 de enero del 2008 (¡hace ya una década!) y fue perpetrado por este pingüino, que en una de sus primeras (y últimas) incursiones en inkscape quiso agradecer de alguna forma a Doug Bell, autor del programa, por tan magnífica herramienta.

Anuncios

Usar unidades en (wx)Maxima

Maxima es un programa de álgebra simbólica que nos permite calcular derivadas, integrales, series, factorizar, resolver ecuaciones, autovalores y autovectores, series de Taylor, transformadas de Laplace… También nos permite realizar cálculos numéricos con precisión arbitraria, realizar gráficos de funciones en dos y tres dimensiones… realmente podrían llenarse muchos artículos solamente haciendo una lista de las oportunidades que nos da este magnífico programa.

wxMaxima es una interfaz gráfica para Maxima realmente bien lograda que simplifica el uso de las opciones más comunes de Maxima y no molesta en la utilización de las otras. Con una simple, pero completa interfaz gráfica de menús, botones y campo de escritura nos permite crear «cuadernos» donde no solo podemos realizar los cálculos sino también agregar anotaciones y comentarios sobre lo que estamos haciendo además de tener los gráficos «en línea», editar entradas anteriores, etcétera.

Hace unos meses hablé de SpeedCrunch y más recientemente del renacido Qalculate!, dos calculadoras de escritorio que permite trabajar con unidades. Ahora bien, es fácil encontrarse con situaciones donde una calculadora no será suficiente por lo que podríamos preguntarnos si es posible trabajar con un sistema más potente desde el punto de vista matemático que también nos permita manejar unidades.

Y justamente es sobre esto que trata el presente artículo.

Preparando el campo

Por defecto Maxima no ofrece opciones de trabajar con unidades, pero nos da un paquete que podemos leer cada vez que lo necesitemos.

Antes de comenzar, para aquellos que no estén familiarizados con wxMaxima es importante saber que para que una instrucción venga ejecutada debemos presionar Mayúsculas-Intro.

Ahora sí, en la linea de comando de wxMaxima ejecutamos

load("unit")

El paquete tardará un momento en cargarse, pero luego de que la palabra Done se presente estaremos listos para trabajar.

Trabajando con unit

El sistema comprende prácticamente cualquier unidad de medida, incluso las imperiales, pero por defecto siempre convierte a las unidades básicas del sistema MKS.

Si queremos que escriba N (Newton) en lugar de \displaystyle kg \frac{m}{s^2} podemos utilizar la instrucción

setunits(N)

tal y como se ve en la siguiente captura de pantalla

Como puede verse wxMaxima nos permite llamar la salida de una expresión como variable de otra.

Y bueno, que el programa da para muchísimo más. Ahora queda bajo la responsabilidad del lector el profundizar sobre el tema.

Con la segunda entrada del menú de Ayuda de wxMaxima (la primer entrada hace cosas raras) tendremos acceso a los manuales y podremos buscar más información sobre unit. Y sobre todo lo demás, claro está.

 

La nueva vida del proyecto Qalculate!

Qalculate! es una calculadora científica para el escritorio con una larga y por momentos problemática historia.

Con una potente librería de base que puede ser utilizada por otros programas (Plasma puede utilizarla para hacer cálculos desde krunner) permite trabajar con unidades, constantes físicas, realizar gráficos, utilizar números complejos, matrices, vectores, ofrecer precisión arbitraria, etcétera.

En el 2006 el desarrollo de la aplicación comienza a frenarse, dando solo dos versiones menores hasta el 2010 donde el proyecto parece quedar huérfano.

Pero todo vuelve a tomar fuerza en el 2016 cuando un nuevo desarrollador se hace cargo del código y el desarrollo comienza a acelerarse. Y mucho: unas 10 versiones en un año.

Una nueva interfaz gráfica en GTK3, infinitas correcciones de error y nuevas características hacen que este ya magnífico programa se vuelva casi imprescindible.

Al momento de escribir este artículo ya se encuentra en la versión 2.1. El desarrollo reciente ha sido tan veloz que salvo por algunas distros rolling particularmente agresivas la mayor parte de las distribuciones Linux ofrecen aún la versión 0.9.12 o incluso anteriores.

Para instalar la última versión en openSUSE tenemos el repositorio de tglatt. Para no crear conflictos con la versión oficial, la de este repositorio ha sido renombrada como qalculate12 mientras que la interfaz gráfica se llama qalculate-gtk.

Como comentamos antes, podemos trabajar con todo tipo de unidades y constantes físicas.

Y además podemos realizar conversiones

(originalmente me dio el resultado en joule sobre metro).

En definitiva, que con este nuevo empujón en su desarrollo Qalculate! se confirma como la mejor calculadora de escritorio en existencia. Un veterano que ha sabido resurgir de sus cenizas y que sigue siendo más fuerte que otros programas que intentan tomar su lugar.

40 años de las misiones Voyager

Lanzadas en 1977 para recorrer el sistema solar exterior, las misiones Voyager han logrado mucho más de lo que sus diseñadores originalmente pensaron como remotamente posible.

A casi 19 horas luz del Sol, la Voyager 1 ha superado el límite de la heliosfera donde el viento solar y el campo magnético de nuestra estrella pierde la partida frente al medio galáctico, convirtiéndose en la primera nave interestelar lanzada por la humanidad.

Los descubrimientos de las Voyager son simplemente impresionantes y han revolucionado completamente nuestra comprensión del sistema solar: los volcanes en Io, la atmósfera de Titán, el espacio interestelar… y el famoso «pale blue dot».

No voy a tan siquiera soñar con escribir un artículo que compita con el siempre impresionante trabajo de Daniel Marín, por lo que los dejo con algo que él preparó para el 35 aniversario:

La historia de las Voyager, los mensajeros interestelares de la humanidad

También interesante: La Voyager 1 ya está oficialmente en el espacio interestelar

Seguramente hoy publicará también algunos de sus imprescindibles artículos para celebrar esta fecha. Si es así, actualizo los enlaces 😉

Más:

[BBC]Voyager 1 at 40: Scientists ‘amazed’ 1970s space probe still works

Una foto de Júpiter tomada por la Voyager 1 y procesada con tecnología actual

SpeedCrunch: una potente calculadora científica

El proyecto tiene ya algunos años y recuerdo haberlo probado en el pasado, siempre dejándolo a un lado frente a otras alternativas como Qalculate!, pero hoy se me ha dado por probar de nuevo y la sorpresa ha sido realmente grata.

La versión 0.12 de SpeedCrunch no solo ha sido adaptada a Qt5, también ofrece nuevas características que resultan de gran utilidad para realizar rápidos cálculos técnicos. En particular, ¡finalmente puede trabajar con unidades!

Por ejemplo, escribiendo

2 * 10^6 newton / (meter^2)

obtenemos

= 2000000 pascal

Por defecto expresa todos los resultados en el sistema internacional, pero también es posible transformar unidades con la instrucción «in». Por ejemplo escribiendo

3*10^8 meter / second in kilo meter / hour

se obtiene

= 1080000000 kilo meter / hour

Si presionamos F5 los resultados pasarán a notación científica (1,08e9 kilo meter / hour) mientas que con F2 solo los números muy grandes o muy pequeños lo harán. Hay más opciones de formato de salida en Configuración → Formato del resultado.

También en el menú Configuración podemos habilitar muchas otras opciones, como trabajar con números complejos. Eso sí, usa la j para la unidad imaginaria en lugar de la i… estos ingenieros…

La lista de funciones disponibles es realmente importante. De hecho SpeedCrunch es la única calculadora que conozco que permite calcular logaritmos de base arbitraria:

log(1/2;128)

nos dará, correctamente

= -7

La aplicación todavía tiene algunos pequeños «puntos ásperos» que seguramente se corregirán en futuras versiones. Por ejemplo, la lista de constantes es interesante, pero al seleccionar una se introduce solo el número, no sus unidades. Aún así resulta práctica y es muy simple de utilizar además de potente.

En fin, que finalmente tengo una calculadora de escritorio que hace lo que quiero.

Los usuarios de openSUSE tenemos la última versión de SpeedCrunch en el repositorio KDE:Extra.

SciDAVis 1.18

Ajustes polinomiales, logarítmicos, exponenciales, con funciones definidas por el usuario, trasformadas rápidas de Fourier, filtros, integración y derivación numérica… Que el usuario elija.

También permite operar rápidamente sobre los datos, definir funciones, personalizar los gráficos, exportarlos en formato SVG o PDF para incluirlos en cualquier documento…

Además de descargar el código fuente desde la página principal del proyecto es posible instalarlo rápidamente en varias distribuciones Linux (Fedora, openSUSE, Debian, xubuntu…) desde este repositorio.

En Editar → Preferencias → General → Aplicación podemos elegir el Estilo de la interfaz gráfica. Seleccionando Breeze se integra bastante bien al escritorio Plasma por lo que casi que ni se nota que sigue siendo una aplicación Qt4.

Disponible LabPlot 2.4

El proyecto LabPlot que desarrolla una magnífica herramienta libre de análisis y visualización de datos ha liberado su versión 2.4, la cual nos ofrece una interesante lista de novedades:

LabPlot 2.4 released

changelog

Entre las novedades más importantes se encuentra el soporte al formato FITS, un estándar abierto utilizado para almacenar todo tipo de datos científicos. La implementación del soporte para este formato incluye un editor de metadatos de los archivos.

Nuevo en esta versión es el soporte de «temas» para la realización de gráficos: conjuntos de configuraciones (tipo de líneas, colores, etcétera) que permiten crear gráficos complejos y de aspecto coherente con poco esfuerzo.

Sigue creciendo el soporte de sistemas de álgebra computacional gracias a la integración con Cantor: en esta versión se agrega soporte para el sistema Julia.

El paquete de herramientas para análisis de datos sigue creciendo, agregando varias funciones de ajuste predefinidas, organizando todas las existentes por categorías y mejorando la integración con LaTeX y derivados para escribir funciones, nombrar los ejes, etcétera.

Sobre el soporte LaTeX, ahora es posible utilizar distintos compiladores como XeTeX, LuaTeX, etcétera.

Se ha agregado soporte para derivación e integración numérica de datos.

Se tiene una nueva modalidad «presentación» que permite presentar las hojas de trabajo a pantalla completa (vídeo tomado del anuncio original)

Y para quien pueda interesarle, el programa está ahora disponible para windows y (en forma experimental) para OSX.

Mientras espero que aparezca en los repositorios de openSUSE, he aquí una captura de pantalla tomada del anuncio original, la cual muestra la previsualización de los temas:

Desde que el proyecto se uniera oficialmente a la comunidad KDE ha experimentado un crecimiento impresionante. De hecho habría que graficarlo, seguro que el ajuste da exponencial 😉