Archivo de Agosto 2007

Maxima y Octave

Agosto 14, 2007

He estado realizando un traductor entre Maxima y Octave. Maxima  es un programa de cálculo simbólico. Octave es un programa de cálculo numérico. Este traductor permite combinar el cálculo simbólico con el cálculo numérico.Veamos un ejemplo, vamos a hacer una derivada, por ejemplo la derivada de asin(x)*x**2:En QtOctave tecleamos:

d = maxima(“diff(asin(x)*x**2,x)”)

Si todo marcha bien nos responderá:

d = ((2)*(x))*(asin(x))+(x)**(2)/sqrt(1-(x)**(2))

Se puede evaluar cuánto vale esta derivada para x=2:

x=2;

eval(d)

Responderá:

ans = 6.2832 + 2.9584i

Es decir, se ha calculado la derivada de forma simbólica (usando Maxima) y después se ha evaluado en x=2 usando Octave.

En casos como las derivadas, combiene usar este esquema, pues las derivadas numéricas son muy inexactas (y en algunos casos totalmente erróneas).

Como se puede ver en el ejemplo anterior, se ha introducido un nuevo comando en Octave, el comando maxima. Este comando tiene la siguiente sintaxis:

resultado= maxima(comando)

En comando se introduce una cadena que representa el comando que se le va a enviar a maxima. Debe ser un comando de Maxima y no de Octave. Maxima permite hacer derivadas, integrales, autovalores, ecuaciones diferenciales,…

Por ejemplo, para calcular una integral:

integral_x = maxima(“integrate(sin(x)*cos(x),x)”)

En este caso calculará la integral de sin(x)*cos(x).

Todavía está en fase de pruebas, lo que se llama una versión alfa. Está recien codificada y llena de fallos. La mayoría de los fallos ni son conocidos. Por ello es conveniente no usarla para producción. Además su proceso de compilación, no es acto para novatos. Por lo que he decidido no colgarlo en la red. El que desee probarlo, puede dejar un comentario en este articulo y yo le enviaré las fuentes.

Graphviz

Agosto 8, 2007

Graphviz is open source graph visualization software. Graph visualization is a way of representing structural information as diagrams of abstract graphs and networks. Graphviz uses a very simple languaje to draw graphs. You can find it in:

http://www.graphviz.org/

:)

Graphviz es una herramienta de software libre para visualización de grafos. La visualización de grafos es una forma de representar la información estructural de redes o grafos abstractos. Usa un lenguaje muy sencillo para la representación de grafos. Lo podeis encontrar en:

http://www.graphviz.org/